最近在寫自動化巡檢腳本,想着怎么預警后自動發送郵件報警。
首先下載最新版本mailx-12.4.tar.bz2
# wget http://sourceforge.net/projects/heirloom/files/latest/download?source=files
解壓包:
# tar jxvf mailx-12.4.tar.bz2 # cd mailx-12.4 # make # make install UCBINSTALL=/usr/bin/install
注意:如果沒有卸載舊版本的mailx,是不能直接使用mailx或mail命令的,否則使用的仍然是舊版mailx。
查看版本號:
/home/mailx-12.4/mailx -V
寫入.bashrc
# vi /root/.bashrc 添加一行:alias mail='/home/mailx-12.4/mailx' # source /root/.bashrc
這時再執行mail命令即代表新版mailx。
接下來配置新版mailx使用外部郵箱發送郵件:
編輯/etc/nail.rc(注意不是舊版的/etc/mail.rc):
vi /etc/nail.rc 添加兩行:
set from=myname@linuxidc.com smtp=smtp.linuxidc.com set smtp-auth-user=myname smtp-auth-password=password smtp-auth=login
第一行指明所使用的外部郵箱及smtp服務器
第二行指明外部郵箱使用的用戶名和密碼
保存,並重啟sendmail服務
service sendmail restart
如果執行報錯:
sendmail: unrecognized service
是因為沒有安裝sendmail,通過yum安裝上就ok
yum install sendmail
安裝成功,繼續執行重啟sendmail服務步驟
sendmail啟動成功后怎么使用呢?
#echo 'Tset ' | mail -s "Test test" aremiyi@163.com #echo 'Tset ' 表示內容 #-s "Test test" 表示標題 #也可以打印整個文件內容 #cat /home/Tset.log | mail -s "Test test" aremiyi@163.com
OK
Linux:多服務, 統一安裝 統一部署 統一啟動 類ansible工具 unifyDeploy0.3版本發布 (更新時間2014-08-01)