溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

五個幫你解決系統(tǒng)性能問題的Linux簡單命令是什么

發(fā)布時間:2021-09-27 14:19:36 來源:億速云 閱讀:103 作者:柒染 欄目:系統(tǒng)運維

這篇文章將為大家詳細講解有關五個幫你解決系統(tǒng)性能問題的Linux簡單命令是什么,文章內(nèi)容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

事實上,利用一些簡單的Linux命令,可以發(fā)現(xiàn)許多管理主機的細節(jié)問題并且能迅速而簡單地解決性能問題。

一、top

  對許多管理員來說,最新學會的就是TOP命令,它可以顯示出當前運行的所有內(nèi)核任務,并且提供了一些主機狀態(tài)的統(tǒng)計報告。默認地,TOP命令每隔五分鐘自動更新一次這個數(shù)據(jù)(這個更新間隔是可設置的)。

  TOP命令的功能豐富到令人難以置信(估計很少有人使用過一半以上的功能)。一般來說你會以‘h’鍵開始,就是‘help’(說明文檔也非常精彩)。幫助參數(shù)可以快速顯示出你能從中增加和減去的內(nèi)容,同時也可以改變排序。你還可以用k來結束進程或者用r標注特別的進程。

  Top命令顯示當天的正常運行時間、系統(tǒng)負載、處理器的數(shù)量、內(nèi)存的使用率和哪些進程使用了大多數(shù)CPU資源(包括每個進程的大量相關信息,例如在線用戶和正在執(zhí)行的命令等)。

二、vmstat

  Vmstat命令提供給你一個當前CPU、IO、進程和內(nèi)存使用率的快照。和TOP命令一樣,它自動動態(tài)刷新,并且可以用下面的命令執(zhí)行:
  $ vmstat 10

  在這里延遲是指兩次刷新間隔的以秒為單位的時間,這里是10秒鐘。VMSTAT命令會將檢查的結果不停刷新顯示在屏幕上,直到你用CTRL-C命令結束它(或者你也可以在執(zhí)行的時候設置一個限制)。這個持續(xù)輸出的結果有時候被用來導入到文件中用來分析性能趨勢,但是我們將找到更好的方式來做這件事情,在文章后面的部分會介紹。

    第一列顯示的是處理器, r列是待命的處理器,而b列是休眠的處理器。如果你在這里看到好多個待命的處理器,那說明你可能在某個地方遇到了性能瓶頸。第二列顯示的是內(nèi)存:虛擬的,空閑的,緩沖和緩存內(nèi)存。第三列顯示的是交換存儲以及具體有多少內(nèi)存在和磁盤做交換。第四列則是I/O信息,顯示了塊服務接收和發(fā)送的塊數(shù)據(jù)信息。

  最后兩列顯示了系統(tǒng)和CPU相關的信息。系統(tǒng)列顯示的是沖突的數(shù)量和每秒鐘的交換。CPU列是顯示了特別有用的信息。每個分列顯示了一個CPU時間的百分比。這些分列如下:
  US:運行用戶任務和代碼耗費的時間
  SY:運行內(nèi)核或者系統(tǒng)代碼耗費的時間
  ID:空閑時間
  WA:等待IO耗費的時間
  ST:虛擬機占用的時間

  VMSTAT命令擅長用來查詢CPU使用情況,雖然記住每個參數(shù)主要取決于持續(xù)的監(jiān)控,因為對CPU進行短時間的觀察你可能無法獲知CPU真正的問題所在。你需要查看長期的運行趨勢來獲得一個確切的CPU性能信息。

三、iostat

  我們接下來要講的命令是IOSTAT。IOSTAT命令(在UBUNTU、紅帽和FEDORA系統(tǒng)中都是由SYSSTAT軟件包提供的)可以提供三個報告:CPU使用率、設備使用率和網(wǎng)絡文件系統(tǒng)使用率。如果你不加任何參數(shù)地運行該命令,它會顯示所有這三個報告,你可以通過加參數(shù)-c、-d和-h來單獨顯示它們中的一種。

  在上面的圖中你可以看到它們中的其中兩個報告,第一個是CPU使用率,它將各進程占用的CPU用百分比分類列出來了。你能看到用戶進程、系統(tǒng)進程、iowait和空閑時間等信息。

  第二個報告是關于設備使用率,顯示了安裝在該主機上的每個設備和一些有用的信息,諸如每秒傳輸量、數(shù)據(jù)塊讀寫,并且允許你對有性能問題的設備做標記。你可以通過添加-k或者-m參數(shù)來按照千字節(jié)或者兆字節(jié)顯示統(tǒng)計信息,而不是以數(shù)據(jù)塊為單位,這樣在某些情況下會更便于查閱和理解。

  最后一個報告,沒有截圖,顯示的信息和上面介紹的設備使用率有點相似,只是對象從附件的設備換成了掛載的網(wǎng)絡文件系統(tǒng)。

四、free
  下一個命令free,可以顯示主內(nèi)存和交換內(nèi)存的統(tǒng)計量。
  你可以通過添加-t參數(shù)來顯示總的內(nèi)存,或者通過添加-b參數(shù)和-m參數(shù)來用字節(jié)數(shù)顯示(默認情況是用千字節(jié)為單位)。
  FREE命令還可以通過使用-s參數(shù)來使其以某個間隔時間持續(xù)刷新地運行:
  $ free -s 5
  這個命令是以每隔5秒鐘刷新一次的方式運行FREE命令并輸出結果。

五、sar

  象我們見過的許多其它工具一樣,我們可以用sar命令來收集、查看和記錄服務器的性能數(shù)據(jù)。它比我們見過的任何類似工具都更強大,并且可以收集和顯示長時間段的數(shù)據(jù)。在紅帽和UBUNTU上,它通過SYSSTAT包來安裝。讓我們從不添加任何參數(shù)運行SAR命令開始吧:

  從這里我們可以看到sar命令的基本輸出信息,包括CPU統(tǒng)計(每隔10分鐘一次的數(shù)據(jù)和最后的平均數(shù)據(jù))。該信息是從一個以24小時為單位不停收集信息的日統(tǒng)計文件中抓取出來的(這個文件存儲在目錄/var/log/sa/中,并且被命令為saxx這樣的格式,xx代表該數(shù)據(jù)收集的日期)。另外它還收集關于內(nèi)存、設備、網(wǎng)絡等的統(tǒng)計信息(例如,通過加-b參數(shù)可以查看塊設備統(tǒng)計信息,-n采查看網(wǎng)絡數(shù)據(jù),-r參數(shù)看內(nèi)存使用)。你還可以用-A參數(shù)來查看所有收集的數(shù)據(jù)。

  你還可以長時間運行sar命令然后將輸出數(shù)據(jù)導入一個文件中來收集數(shù)據(jù)。要達到這個效果,需要使用參數(shù)-o和一個文件名稱,要運行該命令的時間間隔(記得收集數(shù)據(jù)會導致性能變差,所以最好確保這個間隔不要太短)和循環(huán)的次數(shù)-你要記錄的間隔次數(shù)。如果你不輸入循環(huán)次數(shù),則sar命令會一直運行下去,例如:
  $ sar -A -o /var/log/sar/sar.log 600 >/dev/null 2>&1 &

  這里我們將收集所有數(shù)據(jù)(-A),記錄到文件/var/log/sar/sar.log中,每隔600秒(或者5分鐘)收集一次,持續(xù)在后臺運行。如果接下來我們想要顯示這個數(shù)據(jù)我們可以用sar命令加上-f參數(shù),例如:
  $ sar -A -f /var/log/sar/sar.log

  這是一個非?;镜膕ar命令介紹。用sar命令還可以得到許多很有用的數(shù)據(jù),這能使得查看主機性能變得更加方便和有效。我建議你去查看一下sar命令的說明文檔從而獲得更詳細的方法來獲得你需要的數(shù)據(jù)。

總結:
  我們看到了5個基本的用在linux主機上管理和查看性能狀態(tài)的命令工具。
    除此之外,去看一下其它一些工具如munin和collected等也是非常值得的,它們不僅收集關于性能的數(shù)據(jù),還能查看應用程序和服務等,包括使用你自己的插件等。
    這些工具都支持增加圖形化的輸入,這樣可以讓你用圖形更直觀的查看你的數(shù)據(jù)。

關于五個幫你解決系統(tǒng)性能問題的Linux簡單命令是什么就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI