LibreNMS SMART 監控 安裝 SMART SNMP Extend 安裝套件 Debian/Ubuntu apt-get install smartmontools libjson-perl libmime-base64-perl wget https://github.com/librenms/librenms-agent/raw/master/snmp/smart-v1 -O /etc/snmp/smart chmod +x /etc/snmp/smart 查詢硬碟 fdisk -l | grep "Disk /dev" 建立設定檔 /etc/snmp/smart.config ,將須監控硬碟代號填入,useSN=1顯示硬碟型號 0為不顯示 cache=/var/cache/smart smartctl=/usr/bin/env smartctl useSN=1 sda sdb 確認執行有建立快取檔 /etc/snmp/smart -u cat /var/cache/smart 新增snmp smart擴充,編輯 /etc/snmp/snmpd.conf 新增 extend smart /bin/cat /var/cache/smart.snmp 重啟Snmp systemctl restart snmpd Librenms 設定 在網頁上選取設備的應用程式開啟SMART服務 下次輪巡就會出現SMART資訊 排程設定 Crontab新增每5分鐘執行一次,這樣librenms只讀取快取檔不會受硬碟速度影響效能 */5 * * * * /etc/snmp/smart -u 可新增自我檢測,這裡範例每週一與週四的晚上 11 點 00 分執行短檢測 0 23 * * 1,4 /etc/snmp/smart -t short > /dev/null 2>&1   問題排除 後續發現 /var/cache/smart 沒有資料 root@LS-WVL885:~# cat /var/cache/smart {"data":{"dev_error":0,"disks":{},"exit_nonzero":2,"unhealthy":0,"useSN":"1"},"error":0,"errorString":"","version":1} 原因是crontab執行環境找不到smartctl root@LS-WVL885:~# env -i PATH=/usr/bin:/bin /etc/snmp/smart -u/usr/bin/env: 'smartctl': No such file or directory/usr/bin/env: 'smartctl': No such file or directory which smartctl找出路徑後修改 /etc/snmp/smart.config smartctl=/usr/sbin/smartctl