Linux使用mutt命令行發(fā)送郵件的詳細流程
引言
在 Linux 或類 Unix 系統(tǒng)中,mutt 是一款經(jīng)典且強大的命令行郵件客戶端(MUA,郵件用戶代理)。相比之下,像 postfix 和 sendmail 這樣的郵件傳輸代理(MTA)功能更全面,但也更復雜和重量級。mutt 輕量且靈活,非常適合通過腳本或終端快速發(fā)送郵件,廣泛應用于服務器自動化通知、備份提醒和系統(tǒng)告警等場景。
這篇文章將帶你快速上手 mutt 的發(fā)信功能,包括:
- 安裝 mutt
- 配置 .muttrc
- 命令行發(fā)送郵件
- 群發(fā)、多收件人
- 附件發(fā)送
- 自定義發(fā)件人
一、安裝 mutt
在大多數(shù) Linux 發(fā)行版中,mutt 都可以通過包管理器直接安裝:
Ubuntu / Debian 系列:
bash
sudo apt update sudo apt install mutt
RHEL / CentOS / AlmaLinux:
sudo yum install mutt
二、配置 .muttrc
mutt 默認使用配置文件 ~/.muttrc。如果你打算通過 SMTP 服務器(比如公司郵件服務器)發(fā)信,你需要在 .muttrc 中配置發(fā)信賬號和密碼。
set from = "bkmanager@lab.com" set realname = "Backup Manager" set smtp_url = "smtp://bkmanager@lab.com@zsys.lab.com:587/" set smtp_pass = "labbkm123*" set use_from = yes set ssl_starttls = yes set ssl_force_tls = yes
說明:
- from 是你的發(fā)件人郵箱地址
- realname 是顯示名稱
- smtp_url 包含 SMTP 服務器地址和賬號(注意用戶名中“@”前要加轉(zhuǎn)義或雙寫
- smtp_pass 是發(fā)信密碼
建議將 .muttrc 權(quán)限設置為僅限用戶訪問,以避免泄露密碼:
chmod 600 ~/.muttrc
三、發(fā)送一封簡單郵件
echo "請插入磁帶" | mutt -s "未檢測到磁帶" dba@lab.com
參數(shù)說明:
- echo 后面是郵件正文
- -s 指定郵件標題
- 后面是收件人地址
四、發(fā)送給多個收件人
echo "請插入磁帶" | mutt -s "未檢測到磁帶" dba@lab.com admin@lab.com
加抄送(Cc)或密送(Bcc):
echo "請插入磁帶" | mutt -s "未檢測到磁帶" -c manager@lab.com -b audit@lab.com dba@lab.com
五、發(fā)送附件
可以通過 -a 參數(shù)添加附件(支持多個),注意收件人前加上 – 分隔符:
echo "請查看附件日志" | mutt -s "系統(tǒng)錯誤日志" -a /var/log/syslog -- admin@lab.com
六、臨時設置發(fā)件人
如果你不想在 .muttrc 中寫死發(fā)件人,可以用 -e 臨時設定:
echo "測試郵件" | mutt -s "測試" \ -e "set from='alert@lab.com' realname='系統(tǒng)告警'" \ admin@lab.com
七、腳本示例:
#Set Mail
VAR_MAIL_LOCAL="pcc.dba@pouchen.com,pusat_dba@lab.com, infrateam1@lab.com,edphardware@lab.com"
#Set Sender
VAR_MAIL_Sender="bkmanager@lab.com"
#Mail subject
VAR_MAIL_SUBJECT="Tape_Backup_Result: DB Tape Backup"
# Specfic logfile location
TAPE_LOG_FILE="$HOME/logs/test.log"
#Construct Email header
EMAIL_Header="/backup/script/email_header.txt"
cat <<EOF > $EMAIL_Header
To: $VAR_MAIL_LOCAL
From: "Backup Manager" <${VAR_MAIL_Sender}>
Subject: ${VAR_MAIL_SUBJECT} [$TODAY]
$(cat "$TAPE_LOG_FILE")
EOF
#Send Mail
set $(date)
TODAY=$6-$2-$3
mutt -H $EMAIL_Header -a "$TAPE_LOG_FILE"
八.結(jié)語
使用 mutt 發(fā)送郵件既輕量又靈活,非常適合系統(tǒng)管理員在自動化運維中使用。相比 mail、sendmail 等工具,mutt 更容易配置 TLS SMTP,也更具可讀性。
如果你有更復雜的郵件需求(例如圖文、HTML、嵌套附件等),mutt 也完全可以勝任。
到此這篇關(guān)于Linux使用mutt命令行發(fā)送郵件的詳細流程的文章就介紹到這了,更多相關(guān)Linux mutt發(fā)送郵件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
linux下實現(xiàn)web數(shù)據(jù)同步的四種方式(性能比較)
這篇文章主要介紹了linux下常用的四種web數(shù)據(jù)同步方法,并且說明了每個方法的功能與優(yōu)勢,需要的朋友可以參考下2013-09-09
Linux 系統(tǒng)優(yōu)化的一些建議(內(nèi)核優(yōu)化)
這篇文章主要介紹了Linux 系統(tǒng)優(yōu)化的一些建議,幫助大家更好的使用Linux,感興趣的朋友可以了解下2020-08-08
詳解linux centos yum安裝LAMP環(huán)境
本篇文章主要介紹了linux centos yum安裝LAMP環(huán)境 ,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧。2016-12-12
apache中使用mod_gnutls模塊實現(xiàn)多個SSL站點配置(多個HTTPS協(xié)議的虛擬主機)
這篇文章主要介紹了apache中使用mod_gnutls模塊實現(xiàn)多個SSL站點配置,也就是多個HTTPS協(xié)議的虛擬主機配置方法,需要的朋友可以參考下2014-06-06
apache .htaccess文件詳解和配置技巧總結(jié)
這篇文章主要介紹了apache .htaccess文件詳解和配置技巧總結(jié),需要的朋友可以參考下2014-04-04
Ubuntu系統(tǒng)下Docker啟動失敗(iptables/nf_tables)的問題排查與修復方法
在 Ubuntu 系統(tǒng)中安裝 Docker 后,有部分用戶在啟動 Docker 服務時遇到如下報錯: Failed to start Docker Application Container Engine,本文將詳細解釋該問題的原因,并提供完整的修復方案,需要的朋友可以參考下2025-09-09
CentOS下采用Crontab實現(xiàn)PHP腳本定時任務
本篇文章主要介紹了CentOS下采用Crontab實現(xiàn)PHP腳本定時任務,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05

