使用 smartd 透過電子郵件取得 Ubuntu SMART 磁碟警告

使用 Ubuntu 的smartmontools軟體包來監控支援的驅動器smartd,然後透過本機郵件服務或 SMTP 中繼發送警告。對於單一 Ubuntu 伺服器,警報流程應盡量簡化:確認 SMARTsmartctl可以讀取每個磁碟,在 SMART 中新增收件人/etc/smartd.conf,並在依賴警報之前發送測試郵件。 SMART 警告可以揭示一些正在發展的問題,但無法預測所有突發的驅動器故障。

Ubuntu 終端機顯示 smartctl --scan-open 正在發現 SATA 磁碟和 NVMe 設備
設備掃描範例:使用您自己的系統返回的路徑和設備類型。

選擇適合您 Ubuntu 主機的電子郵件路由

smartd它本身不會向互聯網郵件提供者進行身份驗證。其預設郵件路徑會呼叫系統mail指令,因此郵件投遞也取決於已設定的郵件傳輸代理程式 (MTA) 或中繼。請選擇與現有路徑相符的路徑:

路線最佳匹配實際權衡
現有的本地 MTA一台已經發送系統郵件的伺服器新增設定最少;確認mail已安裝且外部傳輸功能正常。
使用經過驗證的 SMTP 中繼的 Postfix需要透過服務提供者發送外發郵件的VPS或家用伺服器使用正常的系統郵件路徑,可以將郵件排隊等待投遞;需要一次性中繼、TLS 和憑證設定。
輕量級 SMTP 用戶端一家小型主機商,郵件量低,且管理員能夠熟練地管理客戶資料。郵件堆疊較小,但如果用戶端不提供命令,則smartd可能需要自訂郵件程式。-M execmail

對於已設定係統郵件的單盤伺服器,請使用現有的郵件傳輸代理程式 (MTA)。如果這是一台新的 Ubuntu 伺服器,而您擁有 SMTP 中繼憑證,那麼 Postfix 是一個不錯的選擇,因為 Ubuntu 提供了關於其智慧主機配置的文件。 Ubuntumsmtp軟體包倉庫中也提供了一些輕量級的郵件用戶端,但在選擇之前,請務必檢查它與您的 smartd 配置中所需的郵件命令的兼容性。無論使用哪種用戶端,請測試發送到您計劃監控的外部位址的郵件投遞情況。

1. 確認 Ubuntu 可以讀取硬碟的 SMART 數據

安裝 smartmontools 並掃描目前系統可以開啟的設備:

sudo apt update
sudo apt install smartmontools
sudo smartctl --scan-open

掃描結果可能會傳回類似/dev/sda -d satNVMe 裝置路徑的條目。請使用您電腦上顯示的路徑和任何-d裝置類型選項。然後檢查一個驅動器:

sudo smartctl -a /dev/sda

切換/dev/sda到已發現的裝置。 USB 硬碟盒、硬體 RAID 控制器或儲存適配器可能會阻止 SMART 直通;如果掃描未顯示磁碟,請檢查其控制器文件和 smartmontools 裝置類型選項。掃描成功僅確認資料可讀,不代表硬碟健康。

Ubuntu 終端機運行 smartctl 健康檢查,SATA 磁碟狀態顯示為「通過」。
例如,以下是一個硬碟的健康輸出範例;「通過」結果很有用,但並不能保證設備不會發生故障。

2. 設定 smartd 向收件者發送電子郵件

開啟守護程式配置:

sudoedit /etc/smartd.conf

若要實現自動發現,請使用一條活動掃描線,並將範例位址替換為您的目標位址:

DEVICESCAN -a -m admin@example.net -M test

-a啟用標準 SMART 檢查集,-m設定電子郵件收件人,並-M test要求 smartd 在啟動時發送測試警告。DEVICESCAN這些指令會套用於偵測到的驅動器,並忽略檔案中後續的裝置條目。如果您只想指定選定的驅動器,請為每個磁碟使用單獨的裝置行,例如 `<device-line-disk>` /dev/sda -a -m admin@example.net -M test。對於 RAID 或 USB 連接的磁碟,請包含掃描結果顯示的或控制器要求的裝置類型選項。

Nano 編輯器顯示了 smartd.conf 檔案中的 DEVICESCAN 行,其中包含電子郵件收件者和測試指示。
此配置行啟用 SMART 檢查,並在守護程序啟動時要求一次性測試訊息。

儲存文件,然後啟用並重新啟動Ubuntu的smartmontools服務:

sudo systemctl enable --now smartmontools.service
sudo systemctl restart smartmontools.service

如果服務無法正常啟動,請檢查服務和最近的日誌訊息:

systemctl status smartmontools.service
sudo journalctl -u smartmontools.service -n 50 --no-pager

在較舊的或自訂的安裝中,單元名稱可能會有所不同;請使用此方法systemctl list-unit-files '*smart*'尋找安裝在您的系統中的單元。

3. 測試發送,然後選擇提醒行為

由於-M test該服務會在啟動時發送訊息,請重新啟動服務並確認郵件是否到達。這可以驗證從 smartd 到本地郵件命令以及 MTA 或中繼的路徑是否正確。如果測試郵件未到達,請先使用相同的郵件命令發送郵件,或檢查 MTA 的佇列和日誌;正在執行的 smartmontools 服務無法更正 SMTP 憑證、DNS、TLS 或提供者側的中繼限制。

測試完成後,請移除-M test並/etc/smartd.conf重新啟動服務,以避免常規重新啟動產生新的測試訊息。保持-m原樣。預設情況下,smartd 會限制重複警報;根據已儲存的監控狀態,它會發送初始警告,並可能針對持續存在的問題發送每日提醒。這可以減少收件匣噪音,而希望更改提醒頻率的操作員應smartd.conf(5)在更改前查閱已安裝的手冊-M。

Ubuntu 終端顯示 smartmontools 服務已激活,並附有範例郵件測試確認訊息。
範例驗證檢視:確認服務狀態並獨立確認測試訊息已到達收件匣。

這些警報能告訴你什麼,不能告訴你什麼?

smartd 會定期檢查設備,預設輪詢間隔為 30 分鐘,因此警報不會立即發出。它可以報告受支援的健康故障、新的日誌錯誤以及其他已配置的情況。 SMART 屬性取決於供應商,健康狀態摘要並不能排除突發的電子、機械、控制器或連接故障。請保留備份,並結合sudo smartctl -a /dev/sda硬碟製造商的指導調查警告,而不是將單一狀態列視為完整的診斷結果。

若要了解特定的指令行為和支援的設備類型,請參閱Ubuntu smartd.conf 手冊和Ubuntu smartd 手冊。 Ubuntu 在其Postfix 安裝指南中記錄了 SMTP 智慧主機配置;Ubuntu 的軟體包索引列出了msmtp-mta 軟體包,供選擇輕量級 SMTP 用戶端的系統使用。

留下評論

在無頭伺服器上保持 Debian 12 安全更新運行

在無頭伺服器上保持 Debian 12 安全更新運行

啟用 Debian 透過 SSH 進行的無人值守安全性更新,保留預設軟體套件來源,並透過 systemd 和 APT 日誌驗證計畫運作。

使用 smartd 透過電子郵件取得 Ubuntu SMART 磁碟警告

使用 smartd 透過電子郵件取得 Ubuntu SMART 磁碟警告

比較郵件投遞選項,在 Ubuntu 上配置 smartd,並驗證磁碟健康警告是否到達您的收件匣。

Debian 12 DNS 查詢失敗:修正 systemd-resolved

Debian 12 DNS 查詢失敗:修正 systemd-resolved

透過檢查 systemd-resolved、在需要時修復 resolv.conf 以及驗證上游 DNS 和應用程式解析,恢復 Debian 12 上的 DNS 查找。

Ubuntu 24.04 無法顯示 HDMI 音訊?恢復輸出

Ubuntu 24.04 無法顯示 HDMI 音訊?恢復輸出

讓 Ubuntu 偵測到你的顯示器或電視作為音訊輸出設備,在聲音設定中選擇它,如果缺少 HDMI,請檢查連接或 PipeWire 設備清單。

透過修復儲存庫金鑰來修復 APT 簽章錯誤

透過修復儲存庫金鑰來修復 APT 簽章錯誤

透過識別失敗的來源、刷新其已驗證的金鑰並檢查結果,安全地解決 Ubuntu APT 簽章警告,而無需停用安全性。

如何轉換三相電壓、電流、千瓦 (kW)、千伏安 (kVA) 和功率因數

如何轉換三相電壓、電流、千瓦 (kW)、千伏安 (kVA) 和功率因數

學習平衡三相公式,並逐步轉換線電壓、電流、kW、kVA 和功率因數,並提供範例和檢查極限。

使用 Ubuntu cgroups 限制指令的 CPU 和記憶體使用量

使用 Ubuntu cgroups 限制指令的 CPU 和記憶體使用量

在 systemd 範圍內運行工作負載,並設定 CPUQuota 和 MemoryMax,然後透過 cgroup v2 驗證限制。

在 Ubuntu Server 24.04 上加密 Pi-hole 上游 DNS

在 Ubuntu Server 24.04 上加密 Pi-hole 上游 DNS

在 Ubuntu 24.04 上將 dnscrypt-proxy 設定為 Pi-hole 的本地 DoH 橋,設定僅限 localhost 的監聽器、解析器選擇以及切換 DNS 前的檢查。

讓 Ubuntu 24.04 在 Wayland 上啟用觸控板手勢

讓 Ubuntu 24.04 在 Wayland 上啟用觸控板手勢

在排查應用程式或硬體故障之前,請檢查 Ubuntu 的觸控板設定、確認 Wayland 以及測試 GNOME 的內建滑動功能。

使用 mdadm 建置 Debian 12 RAID 1 鏡像

使用 mdadm 建置 Debian 12 RAID 1 鏡像

建立並驗證一個雙磁碟 Debian 12 RAID 1 資料陣列,安全地格式化它,並配置它在重新啟動後組裝和掛載。