Linux TOP命令按記憶體佔用排序和按CPU佔用排序

來源:互聯網
上載者:User

Linux TOP命令按記憶體佔用排序和按CPU佔用排序 P – 以 CPU 佔用率大小的順序排列進程列表M – 以記憶體佔用率大小的順序排列進程列表 在系統維護的過程中,隨時可能有需要查看 CPU 使用率,並根據相應資訊分析系統狀況的需要。在 CentOS 中,可以通過 top 命令來查看 CPU 使用狀況。運行 top 命令後,CPU 使用狀態會以全屏的方式顯示,並且會處在對話的模式 — 用基於 top 的命令,可以控制顯示方式等等。退出 top 的命令為 q (在 top 運行中敲 q 鍵一次)。在命令列中輸入 “top” 即可啟動 top ,top 的全屏交談模式可分為3部分:系統資訊欄、命令輸入欄、進程列表欄。第一部分 — 最上部的 系統資訊欄 :第一行(top):“14:55:59”為系統當前時刻;“4 days,  5:52”為系統啟動後到現在的運作時間;“1 user”為當前登入到系統的使用者,更確切的說是登入到使用者的終端數 — 同一個使用者同一時間對系統多個終端的串連將被視為多個使用者串連到系統,這裡的使用者數也將表現為終端的數目;“load average”為當前系統負載的平均值,後面的三個值分別為1分鐘前、5分鐘前、15分鐘前進程的平均數,一般的可以認為這個數值超過 CPU 數目時,CPU 將比較吃力的負載當前系統所包含的進程;第二行(Tasks):“12 total”為當前系統進程總數;“1 running”為當前運行中的進程數;“11 sleeping”為當前處於等待狀態中的進程數;“0 stoped”為被停止的系統進程數;“0 zombie”為被複原的進程數;第三行(Cpus):分別表示了 CPU 當前的使用率;第四行(Mem):分別表示了記憶體總量、當前使用量、空閑記憶體量、以及緩衝使用中的記憶體量;第五行(Swap):表示類別同第四行(Mem),但此處反映著交換分區(Swap)的使用方式。通常,交換分區(Swap)被頻繁使用的情況,將被視作實體記憶體不足而造成的。第二部分 — 中間部分的內部命令提示欄:top 運行中可以通過 top 的內部命令對進程的顯示方式進行控制。內部命令如下表:s – 改變畫面更新頻率l – 關閉或開啟第一部分第一行 top 資訊的表示t – 關閉或開啟第一部分第二行 Tasks 和第三行 Cpus 資訊的表示m – 關閉或開啟第一部分第四行 Mem 和 第五行 Swap 資訊的表示N – 以 PID 的大小的順序排列表示進程列表P – 以 CPU 佔用率大小的順序排列進程列表M – 以記憶體佔用率大小的順序排列進程列表h – 顯示協助n – 設定在進程列表所顯示進程的數量q – 退出 tops – 改變畫面更新周期第三部分 — 最下部分的進程列表欄:以 PID 區分的進程列表將根據所設定的畫面更新時間週期性更新。通過 top 內部命令可以控制此處的顯示方式。一般的,我們通過遠程監控的方式對伺服器進行維護,讓伺服器本地的終端即時的運行 top ,是在伺服器本地監視伺服器狀態的快捷便利之一。 ubuntu進程管理方法ps 顯示當前進程ps -l 顯示詳細資料 ps -u 以使用者的格式顯示  相關欄位說明F 進程狀態標誌 S 進程狀態碼 UID 進程執行者ID PPID 父進程標識(parent process ID) PRI 進程執行的優先順序(priority) NI 進程執行優先順序的nice值,負值表示其優先順序較高 SZ 進程佔用的記憶體大小 WCHAN 進程或系統調用等待時的地址%CPU cpu使用百分比 %MEM 記憶體使用量百分比 VSZ 佔用虛擬記憶體大小 RSS 佔用實體記憶體大小 START 進程開始時間  kill 刪除進程kill pid 刪除指定pid的進程 kill -l 查看所有可供傳送的訊號 kill -9 pid 強制移除進程,傳送的是SIGKILL訊號 kill -15 pid 強制移除進程,傳送的是SIGTERM訊號 kill -HUP pid 重啟Deamon進程  free 查看記憶體使用量狀態free -s 10 每10秒檢查記憶體使用量情況 nice 設定執行優先順序,-20~19,19最低sudo nice –2 vi 將vi的優先順序調為-2 renice 修改執行優先順序,-20~19,19最低  top 動態顯示進程按”P”鍵 按CPU使用時間排序 按”M”鍵 按記憶體使用量多少排序 按”T”鍵 按執行時間多少排序 按”u”鍵 監視特定使用者 按”K”鍵 刪除進程 top -d 10 指定更新時間 lsof -p 查看進程開啟的檔案 jobs 命令查看後台作業 ubuntu結束進程方法1、開啟終端2、敲 ps -ef 查出進程的編號(就是PID那列)3、敲 kill PID (如果PID是123456,則kill 123456)4、OK了 在本地Ubuntu Linux系統運行大軟體的時候,或者伺服器長時間運行後,由於有些設計有缺陷的軟體,容易出現假死的情況! 那程式假死了以後,我們該怎麼辦呢?其實這個 問題其實說簡單也簡單,直接結束進程不就OK了嘛!就像我們在Windows下面做的一樣!下面來介紹幾種Ubuntu Linux下面結束進程的幾種方法! 最安全殺死進程的方法殺死進程最安全的方法是單純使用kill命令,不加修飾符,不帶標誌。首先使用ps -ef命令確定要殺死進程的PID,然後輸入以下命令: #kill -pid注釋:標準的kill命令通常都能達到目的。終止有問題的進程,並把進程的資源釋放給系統。然而,如果進程啟動了子進程,只殺死父進程,子進程仍在運行,因此仍消耗資源。為了防止這些所謂的“殭屍進程”,應確保在殺死父進程之前,先殺死其所有的子進程。還可以使用如下命令來確定要殺死進程的PID或PPID# ps -ef | grep httpd以最優雅的方式來結束進程# kill -l PID-l選項告訴kill命令用好像啟動進程的使用者已登出的方式結束進程。當使用該選項時,kill命令也試圖殺死所留下的子進程。但這個命令也不是總能成功--或許仍然需要先手工殺死子進程,然後再殺死父進程。 TERM訊號給父進程發送一個TERM訊號,試圖殺死它和它的子進程。 # kill -TERM PPID killall命令killall命令殺死同一進程組內的所有進程。其允許指定要終止的進程的名稱,而非PID。 # killall httpd停止和重啟進程有時候只想簡單的停止和重啟進程。如下: # kill -HUP PID該命令讓Linux和緩的執行進程關閉,然後立即重啟。在配置應用程式的時候,這個命令很方便,在對設定檔修改後需要重啟進程時就可以執行此命令。 絕殺 kill -9 PID同意的 kill -s SIGKILL這個強大和危險的命令迫使進程在運行時突然終止,進程在結束後不能自我清理。危害是導致系統資源無法正常釋放,一般不推薦使用,除非其他辦法都無效。 當使用此命令時,一定要通過ps -ef確認沒有剩下任何殭屍進程。只能通過終止父進程來消除殭屍進程。如果殭屍進程被init收養,問題就比較嚴重了。殺死init進程意味著關閉系統。 如果系統中有殭屍進程,並且其父進程是init,而且殭屍進程佔用了大量的系統資源,那麼就需要在某個時候重啟機器以清除進程表了 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.