嘿,大家好!今天我們要來談談一個在 Linux 系統上非常實用的工具,那就是 htop。你或許已經聽說過 top 這個指令,它可以用來監控系統的運行狀態,但是 htop 帶來了更多的功能和方便性。在本篇文章中,我們將一起探索 htop 的使用方法,讓你可以輕鬆地監控和管理你的 Linux 系統。
htop 與 top 不同的地方
雖然它們的目標都是監控系統的運行狀態,但 htop 帶來了一些令人驚艷的改進
- 互動性:htop 提供了更好的互動性。你可以使用滑鼠來選擇進程,改變排序方式,並進行其他操作。這使得 htop 在查看和管理進程時更加直觀和方便。
- 顏色區分:htop 使用顏色來區分不同的資訊,如 CPU 使用率、記憶體佔用等。這使得你可以更快速地識別哪些資源正在受到高度使用,從而更容易進行采取行動。
- 操作方便性:在 top 中,你可能需要記住一些較為複雜的指令來進行排序和篩選等操作。而 htop 則提供了易於理解和使用的快捷鍵,這讓你可以更快速地執行各種任務,無需在手冊中搜尋指令。
- 資訊布局:htop 的介面設計更加清晰,將系統資訊以一種更有組織的方式呈現。這使得你可以更快地找到你感興趣的資訊,無需進行過多的滾動和瀏覽。
htop 簡介與安裝
首先,讓我們來認識一下 htop。與 top 不同的是,htop 提供了更直觀的界面和更多的功能,讓你更容易地追蹤系統的資源使用情況。要安裝 htop,你只需在終端中執行以下指令:
sudo apt-get install htop
啟動 htop
安裝完成後,你可以在終端中輸入 htop
來啟動這個工具。一旦啟動,你將會看到一個類似於下面的界面:
htop 的基本介面
在 htop 的界面中,你會看到一個進程列表,按照 CPU 和記憶體的使用情況排序。每個進程都有相應的資訊,包括進程 ID、使用者、CPU 和記憶體的佔用等。
CUP、Mem (記憶體)、Swp (交換空間) 三種的使用率
swp是甚麼意思?
在 htop 的進程列表中,你可能會注意到一些進程的 “swp” 數據。”swp” 是 “swap” 的簡稱,它指的是系統中正在使用的交換空間。
交換空間(swap)是一塊硬碟上的特殊區域,用作當物理記憶體(RAM)不足時,暫時存放不常用的數據和進程的地方。當系統需要更多的記憶體來運行程序,它會將一些不活躍的內容移到交換空間中,從而釋放出寶貴的RAM。
在 htop 的進程列表中,”swp” 列顯示了每個進程在交換空間中佔用的空間大小。這可以幫助你判斷哪些進程可能是記憶體密集型的,並確定是否需要採取措施來減少交換空間的使用,以提高系統性能。
總之,”swp” 在 htop 中表示進程使用的交換空間,它是監控系統資源使用情況時的一個重要參考指標。
各項負載的平均數值
- Tasks:這一行數據提供了有關系統中運行的進程和執行緒數量的信息
- Tasks: 143
這表示系統當前正在運行的進程數量,總共有 143 個進程正在運行。 - 145 thr
這表示總共有 146 個執行緒(線程)正在運行。執行緒是在單個進程內運行的輕量級子任務,可以共享相同的資源。 - 136 kthr
這是 “kernel threads”(內核線程)的縮寫,表示目前內核正在運行的線程數量,這些線程不屬於一個特定的用戶進程,而是由系統核心進程執行的。 - 3 running
這表示有 3 個進程正在運行中。
- Tasks: 143
- Load average: 0.13 0.11 0.09 這是一個以三個數值表示的負載平均值,分別代表過去 1 分鐘、5 分鐘和 15 分鐘的平均負載情況。
- 1 分鐘平均負載值: 0.10 這個數字表示在過去的 1 分鐘內,系統的平均活躍進程數。一個低於 1 的數值通常被認為是較低的負載。
- 5 分鐘平均負載值: 0.11 這個數字表示在過去的 5 分鐘內,系統的平均活躍進程數。同樣,一個低於 1 的數值通常被認為是較低的負載。
- 15 分鐘平均負載值: 0.09 這個數字表示在過去的 15 分鐘內,系統的平均活躍進程數。同樣,一個低於 1 的數值通常被認為是較低的負載。
- uptime 6 days, 15:36:57
- 這個數字表示系統自從上次開機以來已經運行了多長時間
- 另外,因為我這個系統是屬於 Synology 有多兩種額外的訊息, 這兩種訊息是從 Synology NAS(Network Attached Storage)設備上提取的負載平均值信息,這些數據類似於前面提到的系統負載平均值。讓我來解釋一下這些數據的含義:
- SYNOIO Load average 0.04 0.02 0.00
這個行數提供了有關 Synology 設備的輸入輸出(I/O)負載平均值的信息。具體來說:- 0.04: 這是過去 1 分鐘內的平均 I/O 負載值。
- 0.02: 這是過去 5 分鐘內的平均 I/O 負載值。
- 0.00: 這是過去 15 分鐘內的平均 I/O 負載值。
- SYNOCPU Load average 0.06 0.08 0.07
這個行數提供了有關 Synology 設備的 CPU 負載平均值的信息。具體來說:- 0.06: 這是過去 1 分鐘內的平均 CPU 負載值。
- 0.08: 這是過去 5 分鐘內的平均 CPU 負載值。
- 0.07: 這是過去 15 分鐘內的平均 CPU 負載值。
- SYNOIO Load average 0.04 0.02 0.00
總體而言負載平均值通常用來衡量系統資源的使用情況。這些數值越低,意味著系統的資源使用情況越輕,系統性能較好
htop 的進階功能
htop 不僅僅是一個進程列表,它還提供了許多進階功能來幫助你更好地監控和管理系統。以下是一些你可能會用到的功能
- 資源分佈圖:按下
F2
鍵可以進入 htop 的設定選單。你可以在這裡進行自定義,例如啟用資源分佈圖。資源分佈圖可以幫助你更直觀地了解 CPU 和記憶體的使用情況。 - 進程篩選:如果你只想看到特定使用者的進程,你可以按下
F4
鍵進行篩選。這在系統管理中非常有用,可以幫助你快速找到特定使用者的相關進程。 - 停止進程:要終止一個進程,只需選中該進程,然後按下
F9
鍵,htop 將會詢問你是否確定要停止該進程。 - 樹狀顯示:
F5
切換到樹狀顯示模式,以階層結構的方式顯示進程和它們的子進程。 - 重新繪製畫面:
Ctrl + L
可以在畫面出現問題時使用。 - 調整 Nice 值:
F7
減少被選擇的進程的 NICE 值,降低其執行優先級,F8
增加被選擇的進程的 NICE 值,提高其執行優先級。
htop 設定檔
在調整各種 htop
的設定時,它會自動將設定記錄下來,下次執行 htop
時就會自動套用這些設定,不用重新調整。htop 的設定檔通常被存儲在使用者的家目錄下,檔案名稱為 .config/htop/htoprc
。如果你想修改 htop 的設定,可以編輯這個設定檔。以下是一個常見的路徑:
~/.config/htop/htoprc
如果這個路徑下沒有找到 htoprc
檔案,你可以嘗試使用命令行搜尋設定檔的方法:
find ~/.config -name htoprc
請確保在修改設定檔之前,先備份原始設定,以免不小心造成設定錯誤。
現在,你可以開始使用 htop 來監控和管理你的系統了!
htop 是一個強大而直觀的系統監控工具,它能幫助你更好地了解你的 Linux 系統的運行狀態。通過這篇文章,我們已經學會了如何安裝 htop、啟動它,以及探索了一些它的基本和進階功能。
延伸閱讀:Linux 如何視覺化行程?5分鐘學會運用 pstree 以樹狀圖顯示行程相關性指令教學
延伸閱讀:如何在 Linux 遠端同步與備份 ? 使用 rsync 的教學與 crontab 定期備份與排程範例