Linux 進程與系統監控
在 Linux 作業系統中,進程管理與系統監控是維持系統穩定運行的重要環節。本篇將介紹進程管理、系統監控工具以及進階操作技巧。
目錄
進程管理
進程(Process)是正在執行的程式,每個進程都有自己的 PID(Process ID),並受到系統的調度與管理。
查看進程
可以使用以下命令來查看系統中的進程:
ps
指令
ps aux
此命令會列出所有進程,包含使用者、CPU 佔用率、記憶體使用情況等資訊。
top
指令
top
此指令提供即時的系統監控資訊,包括 CPU、記憶體使用率以及當前運行中的進程。
htop
指令(需額外安裝)
htop
htop
是 top
的加強版,提供更友善的 UI 及互動方式。安裝方法:
sudo apt install htop # Ubuntu/Debian
sudo yum install htop # CentOS/RHEL
終止進程
可以使用 kill
指令來終止特定進程:
kill <PID>
若要強制終止:
kill -9 <PID>
也可以使用 pkill
來根據進程名稱終止:
pkill firefox
系統監控工具
uptime
- 查看系統運行時間
uptime
顯示系統已運行的時間、登入使用者數量、以及平均負載(load average)。
free
- 查看記憶體使用狀況
free -h
以人類可讀格式顯示記憶體與交換空間(Swap)的使用狀況。
vmstat
- 查看系統效能狀況
vmstat 2 5
此指令會每 2 秒更新一次,總共顯示 5 次系統效能數據。
iostat
- 磁碟 I/O 監控
iostat
顯示 CPU 使用率和磁碟 I/O 資訊。若未安裝,請使用:
sudo apt install sysstat # Ubuntu/Debian
sudo yum install sysstat # CentOS/RHEL
netstat
- 網路監控
netstat -tulnp
顯示目前正在監聽的網路連接與進程。
或使用 ss
(比 netstat
更快):
ss -tulnp
管理進程的進階操作
nohup
- 讓進程持續運行
若希望某個指令在登出後仍繼續執行,可以使用 nohup
:
nohup my_command &
screen
- 允許會話保持開啟
screen -S my_session
進入 screen
後,可以執行任意命令,並透過 Ctrl + A, D
離開 session。
要重新連線:
screen -r my_session
tmux
- 進階終端會話管理
與 screen
類似,但 tmux
提供更多功能,例如分割視窗。
安裝 tmux
:
sudo apt install tmux # Ubuntu/Debian
sudo yum install tmux # CentOS/RHEL
啟動 tmux
:
tmux
離開(保持 session 運行):
Ctrl + B, D
重新連線:
tmux attach-session -t 0
結語
本篇介紹了 Linux 進程管理與系統監控的常見工具與指令,並提供了一些進階的操作技巧。透過這些知識,您可以更有效地監控系統效能,並管理各種進程,以確保 Linux 伺服器的穩定運行。