广义上的进程包括:由用户启动的进程、运行在后台的服务器服务、以及端口监控程序由于Linux是多用户、多进程的操作系统,因此进程管理很重要在下面,我们介绍多种与进程管理有关的命令,我来为大家讲解一下关于linux服务进程查看和管理?跟着小编一起来看一看吧!
linux服务进程查看和管理
1.1 进程管理广义上的进程包括:由用户启动的进程、运行在后台的服务器服务、以及端口监控程序。由于Linux是多用户、多进程的操作系统,因此进程管理很重要。在下面,我们介绍多种与进程管理有关的命令。
1.1.1 查出进程的状态(ps)要想查出某一进程或多个进程的状态,可以使用ps命令。也可以使用命令ps来确定正在运行的进程。运行该命令的格式如下:
$ps[options]
命令ps能使用的常见选项包括:
l -a显示由当前终端启动的所有进程。
l -f以树形格式显示进程的层次结构。
l -l显示详细列表(长格式)。
l -u按用户定义的格式显示信息。
l -x还应显示那些不是由当前终端(tty)启动的进程。
例如,如果打算显示当前正在运行的所有进程,可以采用下述方式来运行ps命令:
$ps -ax
PIDTTYSTATTIMECOMMAND
21
1?S0:03init
2?SW0:00[kflushd]
3?SW0:00[kupdate]
4?SW0:00[kpiod]
5?SW0:00[kswapd]
6?SW<0:00[mdrecoveryd]
159?SW0:00[apmd]
169?S0:00syslogd-m0
177?S0:00klogd
187?S0:00/usr/sbin/atd
197?S0:00crond
208?SW0:00[inetd]
214?S0:00/usr/sbin/sshd
252?SW0:00[dpkeyserv]
262?SW0:00[papd]
267tty2S0:00login--root
268tty3SW0:00[mingetty]
269tty4SW0:00[mingetty]
270tty5SW0:00[mingetty]
271tty6SW0:00[mingetty]
要想以树形格式显示所有的当前进程,可按下述方式使用ps命令或使用命令pstree:
$ps –axf
$pstree
如果打算了解更多的,请参阅ps的manpage。
1.1.2 终止进程(kill)可以有选择地终止当前正在运行的进程。要想执行该任务,可以使用kill或killall命令。命令kill的格式是:
$kill[options][PID]
$killall[OPTIONS][--]name
其中PID表示进程ID,这是指定给进程的具有唯一性的号码。
Killall和kill的区别是killall使用进程名称,kill使用进程ID号码。
如果在图形界面还可以使用xkill命令,然后用鼠标选择要终止的进程号码。
常用的选项如下:
-l列出所有的信号名。
-<signalnumber>将由参数“signalnumber”(信号号码)指定的信号发送给进程。关于”(这些信号的详细信息,请参阅kill命令的的manpage。
例如,如果打算显示所有可用的信号号码以及它们的名称,可以按下述方式使用kill命令:
$kill -l
1)SIGHUP2)SIGINT3)SIGQUIT4)SIGILL
5)SIGTRAP6)SIGABRT7)SIGBUS8)SIGFPE
9)SIGKILL10)SIGUSR111)SIGSEGV12)SIGUSR2
13)SIGPIPE14)SIGALRM15)SIGTERM17)SIGCHLD
18)SIGCONT19)SIGSTOP20)SIGTSTP21)SIGTTIN
22)SIGTTOU23)SIGURG24)SIGXCPU25)SIGXFSZ
26)SIGVTALRM27)SIGPROF28)SIGWINCH29)SIGIO
30)SIGPWR31)SIGSYS32)SIGTRMIN…63)SIGRTMAX
如果省略了“signalnumber”(信号号码),kill命令会发送一条软终止信号(信号号码为15,与SIGTERM对应)。
例如,可以按照下述方式,使用命令kill终止PID为555的进程,而无需指定信号号码(signalnumber):
$kill555
要想强行中止某一进程,可指定-9选项,它对应于信号“SIGKILL”:
$kill-9555
& 提示:
要想对某一进程执行kill命令,必须具有超级用户的权限,或是该进程的所有者。
,