[Linux]如何配置mailutils郵件服務?

在自動化運維工作中,利用工具主動發出事務處理結果的mail是一項必備工作,例如資料庫的自動備份工作是否已順利完成,某個微服務重新啟動原因的log日誌等等。而在配置郵件工具中,相較於之前使用的mailx,這次使用的mailutils較為完整,除了內建了完整的 POP3 和 IMAP收信功能,其也內建 SMTP 發信功能,包含自動配置Postfix(內建MTA),配置過程簡化許多。(OS: 說到底就是解決一個重要症狀,"懶")

mailutils郵件服務配置

1.安裝 mailutils

在伺服器的終端命令列,執行下列安裝命令:
sudo apt update
sudo apt install mailutils

過程中,選擇Postfix作為郵件傳送代理(MTA)即可,如此即可利用該台伺服器來發送郵件。

2.配置MTA 郵件代理(Postfix)

a.選擇MTA類型

當安裝過程中需要選擇MTA郵件代理,選擇Postfix即可,並選擇下列配置:

  • 選擇 Internet Site
  • 系統郵件名稱設置為主機名
  • 其他選項保持默認即可
b.驗證 Postfix 是否運行

檢查 Postfix 服務狀態:
sudo systemctl status postfix

如果服務正在運行,則說明 Postfix 已配置完成。

郵件發送測試

在伺服器的終端命令列中,執行下列命令來測試郵件是否可順利發送:
**echo "這是一封測試郵件" | mail -s "test"**receiver-email@example.com -aFrom:info@rpi4.com

receiver-email@example.com是接收郵件的郵件地址。上面指令的 -aFrom: 選項是用來指定寄件人的郵件位址(info@rpi4.com),可以任意的指定,檢查收件箱確認郵件是否到達。

若要夾帶檔案(a.txt),可用下列命令來測試:
echo "這是一封測試郵件" | mail -s "test" -A /home/raspberry/a.txt receiver-email@example.com -aFrom:info@rpi4.com

若經上述測試可順利收發郵件,後續僅需要這段指令整合到自己的腳本中,即可順利收到通知郵件,若應用於MySQL自動備份工作,可設定crontab和搭配腳本來處理,腳本片段範例和參考結果如下。
#!/bin/bash
# 假設該腳本為備份失敗時發送通知的腳本片段
EMAIL_RECIPIENT="
EMAIL_RECIPIENT="receiver-email@example.com"
# 假設資料庫備份出現錯誤
if [ ? -ne 0 ]; then** **echo "資料表備份失敗!" | mail -s "MySQL Table Backup Error" "EMAIL_RECIPIENT" -aFrom:info@rpi4.com
exit 1
fi

相关推荐
gjc5926 分钟前
踩坑实录:MySQL服务器CPU爆高,元凶竟是SELinux的setroubleshootd?
运维·服务器·数据库·mysql·adb
我才是一卓10 分钟前
linux 安装简易 git 服务端并使用
linux·运维·git
德彪稳坐倒骑驴13 分钟前
MySQL Server 5.5 win端安装,安装SQLyog
运维·服务器
Wanliang Li19 分钟前
AArch64虚拟化——virtio-mmio实现
linux·虚拟化·virtio·hypervisor·mmio
乔宕一1 小时前
windows SSH服务修改SSH登陆后的默认终端
运维·windows·ssh
嵌入式-老费1 小时前
vivado hls的应用(第一个axi接口的ip)
linux·服务器·tcp/ip
Bat U1 小时前
MySQL数据库|建库&建表&数据类型
数据库·mysql
2401_884662101 小时前
计算机的基本概念
mysql
旺仔.2911 小时前
Linux系统基础详解(二)
linux·开发语言·网络
x***r1511 小时前
Notepad++ 8.6 安装教程:详细步骤+自定义安装路径(附注意事项)
linux·前端·javascript