Linux 中計劃任務把結果發送到你的郵箱
阿新 • • 發佈:2018-10-09
pop process refused 問題 ORC md5 磁盤 處理 qq郵箱 在生活工作中,我們會經常寫一些任務計劃,比如定期檢查一下磁盤的使用情況,定期執行一些腳本、指等等,但是Linux系統中的機制是把結果以郵件的形式發送到用戶的郵箱裏,假如現在你出差了,但是你的計劃任務還在公司的電腦上進行著,這個時候你該怎麽辦呢?接下來我介紹一下怎麽用Linux系統給QQ郵箱、163郵箱等等發送郵件,這樣的話你的計劃任務就會把執行結果發送到你的郵箱裏,讓你隨時隨刻對你的主機了如指掌。
本文演示:
- centos 7
- qq郵箱
計劃任務的書寫看我前面的博客,超級詳細
利用系統的mail(25號端口)服務發送
- 編輯/etc/mail.rc,輸入下面的配置文件
set from=設置用哪個郵箱發送郵件#收到郵件時顯示的發件人 set smtp=smtp.qq.com#郵箱的域名 set smtp-auth-user=你的QQ郵箱賬號#發郵件的用戶名 set smtp-auth-password=郵箱的POP3/SMTP服務的授權碼 set smtp-auth=login #SMTP的認證方式,默認是login,也可以改成CRAM-MD5或PLAIN方式
獲取郵箱授權碼的方式:登陸你的郵箱
然後點擊賬戶
選擇開啟POP3/SMTP服務
然後獲取授權碼 - 發送無正文郵件
mail -vvv -s ”主題" 郵箱地址
- 發送有正文郵件
mail -s "主題" [email protected] < 文件(郵件正文.txt) cat 郵件正文.txt | mail -s 郵件主題 收件地址 echo "郵件正文" | mail -s 郵件主題 收件地址
- 發送帶附件郵件
mail -s "主題" 收件地址 -a 附件 < 文件(郵件正文.txt)
利用ssl協議發送
- 編輯/etc/mail.rc,輸入下面的配置文件
set from=設置用哪個郵箱發送郵件#收到郵件時顯示的發件人 set smtp="smtps://smtp.qq.com:465"#郵箱的域名及端口號 set smtp-auth-user=你的QQ郵箱賬號#發郵件的用戶名 set smtp-auth-password=郵箱的POP3/SMTP服務的授權碼 set smtp-auth=login #SMTP的認證方式,默認是login,也可以改成CRAM-MD5或PLAIN方式 set nss-config-dir=/etc/pki/nssdb #存放認證證書的地址 set ssl-verify=ignore
- 郵箱發送格式同上
可能遇到問題
- mailx的版本太低
[root@localhost ~]# rpm -qa mailx #查看自己的mailx版本 mailx-12.5-19.el7.x86_64 [root@localhost ~]# yum -y install mailx #安裝最新版的mailx
- 域名解析不成功
[root@cyn(cyn) ~ ]# echo "今晚約嗎?"|mail -vvv -s "真帥" [email protected] Resolving host /smtp.qq.com . . .Could not resolve host: /smtp.qq.com "/root/dead.letter" 11/330 . . . message not sent.
解決方法:
a. 增加dns解析[root@cyn(cyn) ~ ]# vim /etc/resolv.conf #在本文件中增加一條記錄,必須寫在第一個,因為這個文件時順序執行,會解析第一個nameserver,第一個解析不了再去解析下一個 nameserver 114.114.114.114 nameserver 100.100.2.136 nameserver 100.100.2.138
- 連接超時
[root@cyn(cyn) ~ ]# echo "今晚約嗎?"|mail -vvv -s "真帥" [email protected] Resolving host smtp.qq.com . . . done. Connecting to 14.17.57.241:465 . . . connected Refused. . . . message not sent.
解決方法:基本上都是網絡問題了還有本身防火墻
[root@localhost ~]# iptables -F [root@localhost ~]# setenforce 0
網易郵箱也可以,設置方法同QQ郵箱,下面介紹一下獲取授權碼
登陸網易郵箱,點擊設置,開啟POP3/SMPT服務,點擊保存
點擊客戶端授權密碼,再點擊重置密碼
獲取授權碼
但是網易郵箱會把發過去的郵件當成垃圾郵件處理,使用的時候需要註意。
Linux 中計劃任務把結果發送到你的郵箱