Linux 硬體監控與維護
Linux 伺服器的穩定性與效能取決於硬體狀態監控與適當的維護措施。本篇將介紹 CPU、記憶體、磁碟、網路監控工具,以及如何進行伺服器硬體維護,以確保系統穩定運行。
目錄
監控 CPU 使用率
使用 top
監控即時 CPU 狀態
top
按 1
可顯示每個核心的使用率。
使用 htop
(更直觀的 CPU 監控工具)
sudo dnf install htop -y
htop
使用 mpstat
監控 CPU 負載(來自 sysstat
套件)
sudo dnf install sysstat -y
mpstat -P ALL 5
使用 uptime
查看系統負載
uptime
範例輸出:
12:34:56 up 10 days, 2:50, 1 user, load average: 0.15, 0.10, 0.05
load average
:表示 1 分鐘、5 分鐘、15 分鐘內的平均負載。
監控記憶體使用情況
檢查系統記憶體用量
free -h
使用 vmstat
監控記憶體與 swap 狀況
vmstat 5
監控記憶體壓力(OOM Killer 事件)
sudo dmesg | grep -i "out of memory"
監控磁碟使用與健康狀態
查看磁碟使用率
df -h
檢查特定目錄大小
du -sh /var/log/
檢查磁碟 I/O 負載
iostat -dx 5
使用 smartctl
檢查硬碟健康狀態
sudo dnf install smartmontools -y
sudo smartctl -a /dev/sda
如需進行硬碟自我測試:
sudo smartctl -t long /dev/sda
檢查 RAID 狀態(若使用 RAID)
cat /proc/mdstat
或對於特定 RAID 控制器:
sudo megacli -LDInfo -Lall -aALL
監控網路流量與效能
使用 iftop
監控網路流量
sudo dnf install iftop -y
sudo iftop -i eth0
使用 nload
檢視即時流量
sudo dnf install nload -y
nload
檢查網路連線狀態
netstat -tulnp
測試網路效能(使用 iperf
)
- 在伺服器端啟動
iperf
監聽:
iperf3 -s
- 在客戶端測試連線速度:
iperf3 -c server-ip-address
伺服器硬體健康檢查
檢查 CPU 溫度(適用於支援的硬體)
sudo dnf install lm_sensors -y
sudo sensors-detect
sensors
檢查電源供應狀況(UPS 監控)
sudo dnf install nut -y
upsc ups@localhost
自動化監控與警報
設定 cron
定期監測
在 crontab
設定定期監控(例如,每 5 分鐘記錄 CPU 使用率):
crontab -e
新增:
*/5 * * * * mpstat -P ALL 1 1 >> /var/log/cpu_usage.log
使用 logwatch
產生系統監控報告
安裝 logwatch
:
sudo dnf install logwatch -y
產生日誌報告:
sudo logwatch --detail High --mailto admin@example.com --range today
配置 Nagios
或 Zabbix
進行全方位監控
安裝 Zabbix
代理
sudo dnf install zabbix-agent -y
sudo systemctl enable --now zabbix-agent
配置 Zabbix
監控指標
編輯 /etc/zabbix/zabbix_agentd.conf
,設定監控伺服器:
Server=zabbix-server-ip
重新啟動 Zabbix Agent
:
sudo systemctl restart zabbix-agent
結語
本篇提供了 Linux 伺服器的完整硬體監控與維護指南,涵蓋 CPU、記憶體、磁碟、網路監控,以及自動化監控與警報機制。透過這些技術,您可以確保系統穩定運行,並迅速應對可能的硬體故障。