Linux服務器正常啟動后,提供服務時會調用程序,占用進程。這時候如何查看系統中有哪些進程在被調用呢?我們可以通過以下命令來查看。
1.ps
ps命令是最基本同時也是非常強大的進程查看命令。使用該命令可以確定有哪些進程正在運行和它所運行的狀態、進程是否結束、進程有沒有僵死、哪些進程占用了過多的資源等。總之大部分信息都是可以通過執行該命令得到的。ps命令最常用來監控后臺進程的工作情況,因為后臺進程是不和屏幕、鍵盤這些標準輸入/輸出設備進行通信的,所以如果需要檢測后臺情況,就需要使用ps命令了。它的格式如下所示:
格式:ps [選項] 其主要選項如下。
-a:顯示系統中所有進程的信息。
-e:顯示所有進程的信息。
-f:顯示進程的所有信息。
-l:以長格式顯示進程信息。
-r:只顯示正在運行的進程。
-u:顯示面向用戶的格式(包括用戶名、CPU及內存的使用情況等信息)。
-x:顯示所有非控制終端上的進程信息。
-p:顯示由進程ID指定的進程信息。
-t:顯示指定終端上的進程信息。
要對進程進行監測和控制,首先要了解當前進程的情況,當然也就需?榭吹鼻敖?痰淖刺?恕Mü齪s命令查看進程,根據所顯示的信息可以了解哪個進程正在運行、哪個進程被掛起了、進程已運行了多久、進程正在使用的資源、進程的相對優先級,以及進程的標志號(PID)。所有這些信息對用戶都很有用,對于系統管理員來說尤為重要。使用ps -aux命令可以獲得終端上所有用戶的有關進程的所有信息,這個也是我們平時用得最多的命令之一,如下所示:
[root@localhost?~]#?ps?axu
USER?PID?%CPU?%MEMVSZ?RSS?TTYSTAT?START?TIME?COMMAND
root?10.00.010348?688??SsMar160:01?init?[5]
root?20.00.000??S<Mar160:00?[migration/0]
root?30.00.000??SNMar160:00?[ksoftirqd/0]
root?40.00.000??S<Mar160:00?[watchdog/0]
root?50.00.000??S<Mar160:00?[migration/1]
root?60.00.000??SNMar160:00?[ksoftirqd/1]
...
avahi31530.00.023148336??SsMar160:00?avahi-daemon:?chroot?helper
root32140.00.018416476??SMar160:00?/usr/sbin/smartd?-q?never
root32190.00.03792488?tty1Ss+Mar160:00?/sbin/mingetty?tty1
root32200.00.03792484?tty2Ss+Mar160:00?/sbin/mingetty?tty2
root32210.00.03792488?tty3Ss+Mar160:00?/sbin/mingetty?tty3
root32220.00.03792488?tty4Ss+Mar160:00?/sbin/mingetty?tty4
root32240.00.03792488?tty5Ss+Mar160:00?/sbin/mingetty?tty5
root32260.00.03792488?tty6Ss+Mar160:00?/sbin/mingetty?tty6
root32330.00.01699122756??SsMar160:00?/usr/sbin/gdm-binary?-nodaemon
root33220.00.01971242564??SMar160:00?/usr/sbin/gdm-binary?-nodaemon
root33240.00.11898084112??SlMar160:00?/usr/libexec/gdm-rh-security-token-helper
root33250.00.1905486264?tty7Ss+Mar160:02?/usr/bin/Xorg?:0?-br?-audit?0?-auth?/var/gdm/:0.Xauth?-oli
root33390.00.425792016784??SNMar160:20?/usr/bin/python?-tt?/usr/sbin/yum-updatesd
root33410.00.0129161188??SNMar160:00?/usr/libexec/gam_server
gdm33510.00.837961236176??SsMar160:00?/usr/libexec/gdmgreeter
root43420.00.041096896??SsMar160:00?nginx:?master?process?/usr/local/webserver/nginx/sbin/nginx
www43430.00.66592026232??SMar160:05?nginx:?worker?process
www43440.00.66592026160??SMar160:02?nginx:?worker?process
www43450.00.66607626460??SMar160:03?nginx:?worker?process
www43460.00.66592026104??SMar160:03?nginx:?worker?process
www43470.00.66605226228??SMar160:04?nginx:?worker?process
www43480.00.66601226372??SMar160:04?nginx:?worker?process
www43490.00.66578826076??SMar160:03?nginx:?worker?process
www43500.00.66592026188??SMar160:06?nginx:?worker?process
root53140.00.000??SMar280:00?[pdflush]
root53150.00.000??SMar280:00?[pdflush]
root67670.00.0682841564?tty8Ss+Mar170:00?/bin/bash
root103690.00.065556932?pts/2R+14:230:00?ps?-axu
root189060.06.41443024261272??Sl00:150:46?/usr/local/jdk/bin/java?-Djava.util.logging.config.file=/us
root205730.00.0901403344??Ss09:020:00?sshd:?root@pts/2
root205750.00.0684121756?pts/2Ss09:020:00?-bash