首页 > 代码库 > Linux进程管理(第二版) --进程管理命令

Linux进程管理(第二版) --进程管理命令

进程管理命令

一、查看用户信息w

1、 w显示信息的含义

TTY:说明用户登录的方式,ttyN:表示以本地终端登录;pts/N表示以远程终端登录

JCPU:以终端代号来区分,该终端所有相关的进程执行时,所消耗的CPU时间会显示在这里 

PCPU:CPU执行程序耗费的时间

WHAT:用户正在执行的操作

load average:分别显示系统在过去1515 分钟内的系统的平均负载程度【一般在0.8之下,我们认为系统负载较轻】 

FROM:显示用户从何处登录系统,“:0”的显示代表该用户时从X Window,打开文本模式窗口登录的 

IDLE:用户闲置的时间。这是一个计时 器,一旦用户执行任何操作,该计时器便会被重置 

 

2、查看个别用户信息:w 用户名

 

二、查看系统进程ps

1、常用选项 

a:显示所有用户的进程 

u:显示用户名和启动时间 

x:显示没有控制终端的进程 

e:显示所有进程,包括没有控制终端的进程 

l:长格式显示

w:宽行显示,可以使用多个w进行加宽显示 

2ps常用输出信息的含义

PID:进程号 

PPID:父进程的进程号 

TTY:进程启动的终端 

STAT/S:进程当前状态

#S休眠状态,D不可中断的休眠状态,R运行状态,Z僵死状态,T停止 

NI(nice):进程优先级 

TIME:进程自从启动以来占用CPU的总时间 

COMMAND/CMD:进程的命令名 

USER:用户名 

%CPU:占用CPU时间和总时间的百分比 

%MEM:占用内存与系统内存总量的百分比 

 

3、【应用示例】

ps 查看隶属于自己的进程 

ps -u or -l 查看隶属于自己进程详细信息 

ps -le or -aux 查看所有用户执行的进程的详细信息,但是-aux会看到一些十分直观的显示,%MEM,%CPU

 

【最佳实践:ps -le | grep httpd,当然亦可通过启动脚本来查看/etc/rc.d/init.d/httpd status或者service httpd status】 

 

ps -aux --sort time/pid/uid  #可按进程执行的时间、 PIDUID等对进程进行排序 

ps -uU sam 或 ps -aux | grep sam  #查看系统中指定用户执行的进程 

ps -le | grep init #查看指定进程信息

【使用pstree还可以查看系统中一个树状的进程信息】 

 

三、杀死进程-kill

1、为什么要杀死进程

该进程占用了过多的CPU时间 

该进程缩住了一个终端,使其他前台进程无法运行 

运行时间过长,但没有预期效果 

产生了过多到屏幕或磁盘文件的输出 

无法正常退出 

 

2.

【以进程号作为参数,关闭进程】

kill 进程号  :关闭进程

【如果想关闭一组进程,又因为这一组进程有共同的父进程,则将父进程关闭即可】

 

kill -9 进程号:强行关闭 

kill -1 进程号:重启进程 

kill -l 会列出所有的信号】

 

xkill :关闭图形程序 

killall [进程名] :关闭所有进程

如:killall httpd #关闭Apache服务器,killall关闭所有与httpd同名的进程

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

以服务名称作为参数

pgrep 服务名称 :查找服务进程号PID

如:pgrep httpd 可以检索到httpd所有的进程的PID 

E.g kill -1 `pgrep httpd`

pkill 进程名称  :关闭进程

附-/proc目录中保存在内存中,保存了系统的详细信息以及进程信息,其中的数字代表了当前正在运行的进程的PID

 

四、指定优先级

优先级取值范围为(-20,19) *  默认启动优先级为0优先值越小,优先权越大 】

1nice 指定程序运行的优先级

格式 nice -n command

例如 nice -5 myprogrem

nice --5 /etc/rc.d/init.d/httpd start #优先级为-5

 

2renice 改变一个正在运行的进程的优先级 

格式 renice n pid 【注意:此处没有“-”

例如 renice -30 777 

 

五、nohup命令,使进程在用户退出登陆后仍旧继续执行

nohup命令将执行后的数据信息和错误信息默认储存到文件nohup.out 

格式: nohup program & 

例如: nohup find / -name init* > /root/find.init.info &

 

六、进程的挂起和恢复

1、进程的中止(挂起/暂停)和终止

挂起 Ctrl+Z

终止 Ctrl+C #可以看到[1]+  Stopped

2、查看被挂起后台运行的进程 jobs

3、进程的恢复

恢复到前台继续执行 fg [jobs查看到的编号] 如: fg 1

恢复到后台继续执行 bg [jobs查看到的编号] 如: bg 1

七、top命令

作用: 进程状态显示和进程控制,默认3.0 秒钟自动刷新一次(动态显示) 

选项: [top软件运行中使用]

d:指定刷新的时间间隔  

c:显示整个命令行而不仅仅显示命令名 

u:查看指定用户的进程 

k:终止执行中的进程 

h or ?:获得帮助 

r:重新设置进程优先级 

s:改变刷新的时间间隔 

W:将当前设置写入~/.toprc文件中

Linux进程管理(第二版) --进程管理命令