Ubuntu下配置用msmtp发送gmail邮件

https://gist.github.com/JosefJezek/6194563上找到的一个配置脚本,下载后添加可执行权限,然后运行即可。

下面是脚本setup-msmtp-for-gmail.sh的内容

#!/bin/sh
# Sending emails using Gmail and msmtp
# Author: [Josef Jezek](http://about.me/josefjezek)
# Donate: [Gittip](https://www.gittip.com/josefjezek)
# Link: [Gist](https://gist.github.com/6194563)
# Usage: setup-msmtp-for-gmail.sh

sudo apt-get update -q
sudo apt-get install msmtp-mta ca-certificates heirloom-mailx -yq

if command -v zenity >/dev/null; then
  GMAIL_USER=$(zenity --entry --title="Gmail username" --text="Enter your gmail username with domain (username@gmail.com):")
  GMAIL_PASS=$(zenity --entry --title="Gmail password" --text="Enter your gmail password:" --hide-text)
else
  read -p "Gmail username with domain (username@gmail.com): " GMAIL_USER
  read -p "Gmail password: " GMAIL_PASS
fi
 
echo # an empty line
 
if [ -z "$GMAIL_USER" ]; then echo "No gmail username given. Exiting."; exit -1; fi
if [ -z "$GMAIL_PASS" ]; then echo "No gmail password given. Exiting."; exit -1; fi

sudo tee /etc/msmtprc >/dev/null <<__EOF
# Accounts will inherit settings from this section
defaults
auth            on
tls             on
tls_certcheck   off
# tls_trust_file  /etc/ssl/certs/ca-certificates.crt
logfile /var/log/msmtp.log

# A first gmail address
account   gmail
host      smtp.gmail.com
port      587
from      $GMAIL_USER
user      $GMAIL_USER
password  $GMAIL_PASS

# A second gmail address
account   gmail2 : gmail
from      username@gmail.com
user      username@gmail.com
password  password

# A freemail service
account   freemail
host      smtp.freemail.example
from      joe_smith@freemail.example
user      joe.smith
password  secret

# A provider's service
account   provider
host      smtp.provider.example

# Set a default account
account default : gmail
__EOF

sudo chmod 600 /etc/msmtprc
sudo chown -R www-data:www-data /etc/msmtprc

HOST=$(hostname)

sudo mail -vs "Email relaying configured at ${HOST}" $GMAIL_USER <<__EOF
The postfix service has been configured at host '${HOST}'.
Thank you for using this postfix configuration script.
__EOF
 
echo "I have sent you a mail to $GMAIL_USER"
echo "This will confirm that the configuration is good."
echo "Please check your inbox at gmail."

 运行完后,将修改用户和组位当前用户(sudo chown xxx:xxx /etc/msmtprc),然后可以将/etc/msmtprc拷贝为~/.msmtprc,此外,记得登陆gmail邮箱,看看是不是存在安全提示

点击"allowing access to less secure apps",然后打开i如下设置:

然后即可以用git send-email提交kernel补丁了:(可以参考王叔叔宋叔叔分享给大家的资料, 或点这里

1、配置git send-email如下(.gitconfig)

[sendemail]
    smtpserver = /usr/bin/msmtp

2、生成patch

git format-patch -1

比如生成的patch是: 0001-ASoC-compress-Set-reasonable-compress-id-string.patch

如果需要一次生成多个patch的话,使用下面的命令:

git format-patch -s -n --cover-letter --thread

3、检查patch

./scripts/checkpatch.pl 0001-ASoC-compress-Set-reasonable-compress-id-string.patch

4、获得maintainer

./scripts/get_maintainer.pl 0001-ASoC-compress-Set-reasonable-compress-id-string.patch

5、提交

git send-email --to xx@xx --to xx@xx --cc xx@xx --cc xx@xx 0001-ASoC-compress-Set-reasonable-compress-id-string.patch

 如果提交的是一些列patch的话,将这些patch在一个git send-email中发送。

完。

原文地址:https://www.cnblogs.com/pengdonglin137/p/7337479.html