广义上的进程包括:由用户启动的进程、运行在后台的服务器服务、以及端口监控程序由于Linux是多用户、多进程的操作系统,因此进程管理很重要在下面,我们介绍多种与进程管理有关的命令,我来为大家讲解一下关于linux服务进程查看和管理?跟着小编一起来看一看吧!

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命令,必须具有超级用户的权限,或是该进程的所有者。

,