技術(shù)員聯(lián)盟提供win764位系統(tǒng)下載,win10,win7,xp,裝機純凈版,64位旗艦版,綠色軟件,免費軟件下載基地!

當(dāng)前位置:主頁 > 教程 > 服務(wù)器類 >

linux系統(tǒng)監(jiān)控工具

來源:技術(shù)員聯(lián)盟┆發(fā)布時間:2018-08-07 12:06┆點擊:

  對于系統(tǒng)和網(wǎng)絡(luò)管理員來說每天監(jiān)控和調(diào)試Linux系統(tǒng)的性能問題是一項繁重的工作。在IT領(lǐng)域作為一名Linux系統(tǒng)的管理員工作5年后,我逐漸認(rèn)識到監(jiān)控和保持系統(tǒng)啟動并運行是多么的不容易?;诖嗽?,我們已編寫了最常使用的18個命令行工具列表,這些工具將有助于每個Linux/Unix 系統(tǒng)管理員的工作。這些命令行工具可以在各種Linux系統(tǒng)下使用,可以用于監(jiān)控和查找產(chǎn)生性能問題的原因。這個命令行工具列表提供了足夠的工具,您可以挑選適用于您的監(jiān)控場景的工具。

  1.Top-Linux進程監(jiān)控

  Linux下的Top命令是一個性能監(jiān)控程序,許多系統(tǒng)管理員常常用它來監(jiān)控Linux性能,在許多Linux或者類Unix操作系統(tǒng)里都有這個命令。Top命令用于按一定的順序顯示所有正在運行而且處于活動狀態(tài)的實時進程,而且會定期更新顯示結(jié)果。這條命令顯示了CPU的使用率、內(nèi)存使用率、交換內(nèi)存使用大小、高速緩存使用大小、緩沖區(qū)使用大小,進程PID、所使用命令以及其他。它還可以顯示正在運行進程的內(nèi)存和CPU占用多的情況。對系統(tǒng)管理員來說,top命令式是一個非常有用的,它可用于監(jiān)控系統(tǒng)并在需要的時候采取正確的處理動作。讓我們看看實際中的top命令。

linux系統(tǒng)監(jiān)控工具  三聯(lián)

  Top命令舉例

  有關(guān)Top命令更多的例子,請閱讀 :Linux下12個使用Top命令的例子。

  2. VmStat – 虛擬內(nèi)存統(tǒng)計

  Linux 的 VmStat 命令用于顯示虛擬內(nèi)存、內(nèi)核線程、磁盤、系統(tǒng)進程、I/O 塊、中斷、CPU 活動 等的統(tǒng)計信息。缺省情況下, vmstat 命令在 Linux 系統(tǒng)下不可用,你需要安裝一個包含了 vmstat 程序的 sysstat 軟件包。命令格式的常見用法是:

  # vmstatprocs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free inact active si so bi bo in cs us sy id wa st 1 0 0 810420 97380 70628 0 0 115 4 89 79 1 6 90 3 0

  更多的 vmstat 例子,請閱讀 : 6 Linux 下的 Vmstat 命令實例

  3.Lsof-列出打開的文件

  在許多Linux或者類Unix系統(tǒng)里都有l(wèi)sof命令,它常用于以列表的形式顯示所有打開的文件和進程。打開的文件包括磁盤文件、網(wǎng)絡(luò)套接字、管道、設(shè)備和進程。使用這條命令的主要情形之一就是在無法掛載磁盤和顯示正在使用或者打開某個文件的錯誤信息的時候。使用這條命令,你可以很容易地看到正在使用哪個文件。這條命令最常用的格式如下:

  # lsofCOMMAND PID USER FD TYPE DEVICE SIZE NODE NAMEinit 1 root cwd DIR 104,2 4096 2 /init 1 root rtd DIR 104,2 4096 2 /init 1 root txt REG 104,2 38652 17710339 /sbin/initinit 1 root mem REG 104,2 129900 196453 /lib/ld-2.5.soinit 1 root mem REG 104,2 1693812 196454 /lib/libc-2.5.soinit 1 root mem REG 104,2 20668 196479 /lib/libdl-2.5.soinit 1 root mem REG 104,2 245376 196419 /lib/libsepol.so.1init 1 root mem REG 104,2 93508 196431 /lib/libselinux.so.1init 1 root 10u FIFO 0,17 953 /dev/initctl

  有關(guān)lsof命令的用法和例子的更多信息,請參考: Linux下10個使用lsof命令的例子。

  4.Tcpdump-網(wǎng)絡(luò)包分析器

  Tcpdump是最廣泛使用的網(wǎng)絡(luò)包分析器或者包監(jiān)控程序之一,它用于捕捉或者過濾網(wǎng)絡(luò)上指定接口上接收或者傳輸?shù)腡CP/IP包。它還有一個選項用于把捕捉到的包保存到文件里,以便以后進行分析。在幾乎所有主要的Linux發(fā)布里,tcpdump都可以使用。

  # tcpdump -i eth0tcpdump: verbose output suppressed, use -v or -vv for full protocol decodelistening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes22:08:59.617628 IP tecmint.com.ssh > 115.113.134.3.static-mumbai.vsnl.net.in.28472: P 2532133365:2532133481(116) ack 3561562349 win 964822:09:07.653466 IP tecmint.com.ssh > 115.113.134.3.static-mumbai.vsnl.net.in.28472: P 116:232(116) ack 1 win 964822:08:59.617916 IP 115.113.134.3.static-mumbai.vsnl.net.in.28472 > tecmint.com.ssh: . ack 116 win 64347

  要想獲得更多有關(guān)tcpdump用法的信息,請參閱: Linux下12個使用Tcpdump命令的例子。

  5.Netstat-網(wǎng)絡(luò)狀態(tài)統(tǒng)計

  Netstat是一個用于監(jiān)控進出網(wǎng)絡(luò)的包和網(wǎng)絡(luò)接口統(tǒng)計的命令行工具。它是一個非常有用的工具,系統(tǒng)管理員可以用來監(jiān)控網(wǎng)絡(luò)性能,定位并解決網(wǎng)絡(luò)相關(guān)問題。

  # netstat -a | moreActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address Foreign Address Statetcp 0 0 *:mysql *:* LISTENtcp 0 0 *:sunrpc *:* LISTENtcp 0 0 *:realm-rusd *:* LISTENtcp 0 0 *:ftp *:* LISTENtcp 0 0 localhost.localdomain:ipp *:* LISTENtcp 0 0 localhost.localdomain:smtp *:* LISTENtcp 0 0 localhost.localdomain:smtp localhost.localdomain:42709 TIME_WAITtcp 0 0 localhost.localdomain:smtp localhost.localdomain:42710 TIME_WAITtcp 0 0 *:http *:* LISTENtcp 0 0 *:ssh *:* LISTENtcp 0 0 *:https *:* LISTEN

  有關(guān)Netstat更多的例子,請參閱: Linux下20個使用Netstat命令的例子。

  6. Htop – Linux進程監(jiān)控