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