Linux系统上的进程查看及管理工具:
pstree , ps , pgrep , pkill , pidof ;
uptime , top ;
htop , vmstat , pmap , glances ;
dstat ;
kill , killall ;
jobs , bg , fg , nohup , nice , renice , …;
关键词:jobs, fg, bg, kill, nohup, nice, renice;
一、作业管理
1.1 Linux系统的作业类型:
前台作业(foregroud) : 通过终端启动,且启动后会一直占据终端;
后台作业(backgroud) : 可以通过终端启动,但启动后即转入后台运行(释放终端);
1.2 把前台作业送往后台:
1> 对于运行中的作业,使用组合键’ctrl+z’可把作业送往后台,送往后台后,作业处于停止态;
2> 对于尚未启动的作业,使用’COMMAND &’方式可把作业送往后台,此类作业虽然被送往后台,但其依然与终端相关联,
如果终端终止,则送往后台的作业也会终止;如果希望把送往后台的作业玻璃与终端的关系,可使用如下方式’nohup COMMAND &’;
1.3 查看后台作业列表:
~]# jobs
1.4 作业控制常用命令:
fg : 把指定的后台作业调出到前台,并继续运行;
bg : 把放置在后台的停止的作业让其继续在后台运行;
kill : 此处的’kill’命令的作用对象是作业,而非进程;终止指定的作业;
备注,上面3个命令后面可接作业号来实现对后台作业的管理;
作业控制命令的格式:
~]# fg [[%]JOB_NUM]
~]# bg [[%]JOB_NUM]
~]# kill %JOB_NUM
二、调整进程优先级
进程优先级:0-139
1-99 : 实时优先级;数字越大,优先级越高;一般很少需要人工干预;
100-139:静态优先级;数字越小,优先级越高;
Nice值:-20至19
Nice值对应于进程优先级的100至139;其中,Nice值的-20对应进程优先级的100,Nice值的19对应进程优先级的139;
可通过调整进程的’Nice’值来改变进程的优先级;
通过调整’nice’值来改变进程优先级,改变的进程优先级只能是进程的静态优先级;
进程启动时,其默认的’nice’值为’0′,即进程优先级默认是’120′;
2.1 nice 命令:
以指定的’nice’值启动并运行命令;仅管理员可调低’nice’值;
命令说明:运行一个修改调度优先级的程序;
nice – run a program with modified scheduling priority
命令格式:
nice [OPTION] [COMMAND [ARG]…]
2.2 renice 命令:
命令说明: 更改运行中的进程的优先级;
renice – alter priority of running processes
命令格式:
renice [-n] NICE_NUM PID
举例1:指定优先级,然后启动某命令;
~]# nice -n -5 htop
举例2:对正在运行的某进程调整其’nice’值,除了要指定’nice’值外,还需指定此进程的PID号;
~]# renice -n 0 PID
F.E
把作业送往后台(ctrl+z); ----------------- [root@kouyuushinn ~]# ping baidu.com PING baidu.com (123.125.115.110) 56(84) bytes of data. 64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=1 ttl=128 time=36.4 ms 64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=2 ttl=128 time=35.3 ms 64 bytes from 123.125.115.110 (123.125.115.110): icmp_seq=3 ttl=128 time=35.8 ms ^Z [1]+ Stopped ping baidu.com [root@kouyuushinn ~]# vim kill.test [2]+ Stopped vim kill.test [root@kouyuushinn ~]# [root@kouyuushinn ~]# htop [3]+ Stopped htop [root@kouyuushinn ~]# glances [4]+ Stopped glances [root@kouyuushinn ~]# 查看后台作业(jobs): --------------------------- [root@kouyuushinn ~]# jobs [1] Stopped ping baidu.com [2] Stopped vim kill.test [3]- Stopped htop [4]+ Stopped glances [root@kouyuushinn ~]# 备注1:上面后台作业列表中,作业序号后面的'+'号表示优先级最高; 使用命令'fg',不带任何选项参数时,默认调用的是优先级最高的后台作业;