CentOS进程管理及相关命令

一、查看进程工具:

1、命令:ps

  • a 显示跟当前终端关联的所有进程
  • u 基于用户的格式显示
  • x 显示所有进程,不以终端机来区分
[root@liang test]# ps aux|head 
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  0.0  0.6 126268  6820 ?        Ss   18:42   0:02 /usr/lib/systemd/systemd --system --deserialize 15
root          2  0.0  0.0      0     0 ?        S    18:42   0:00 [kthreadd]
root          3  0.0  0.0      0     0 ?        S    18:42   0:00 [ksoftirqd/0]
root          6  0.0  0.0      0     0 ?        S    18:42   0:02 [kworker/u256:0]
root          7  0.0  0.0      0     0 ?        S    18:42   0:00 [migration/0]
root          8  0.0  0.0      0     0 ?        S    18:42   0:00 [rcu_bh]
root          9  0.0  0.0      0     0 ?        S    18:42   0:00 [rcuob/0]
root         10  0.0  0.0      0     0 ?        S    18:42   0:00 [rcuob/1]
root         11  0.0  0.0      0     0 ?        S    18:42   0:00 [rcuob/2]
###最后一列[xxx]使用方括号括起来的进程是内核态的进程,没有括起来的是用户态进程。
USER 启动这些进程的用户
PID 进程的PID
%CPU 进程占用CPU的百分比
%MEM 进程占用内存的百分比
VSZ 进程占用的虚拟内存大小(KB)
RSS 进程占用的物理内存的大小(KB)
START 该进程被触发的时间
TIME 该进程实际使用CPU运作的时间
COMMAND 该程序使用的指令
STAT 该程序目前的状态,linux进程有五种基本状态:
	R 该程序目前正在工作,或者是可被运作
	S 该进程目前正在睡眠中,可被某些讯号唤醒
	T 该程序目前正在侦测或者是停止了
	Z 该进程应该已经被终止,但是其父程序却无法正常终止他,造成僵尸进程
	D 不可中断状态
	五个基本状态后的小状态:
		< 表示进程运行在高优先级上
		N 表示进程运行在低优先级上
		L 表示进程有页面锁定在内存中
		s 表示进程是控制进程
		l 表示进程是多线程
		+ 表示当前进程运行在前台

2、uptime查看系统负载

[root@liang ~]# uptime 
 07:57:48 up 74 days, 11:32,  1 user,  load average: 0.00, 0.00, 0.00

07:57:48 系统当前时间
up 74 days 11:32 系统运行时间,说明此服务器连续运行74天11个小时32分
1 user 当前登录用户
load average: 0.00, 0.00, 0.00 系统负载,即任务队列的平均长度。三个数值
分别为 1分钟、五分钟、十五分钟前到现在的平均值。
如果服务器的CPU为1核心,则load average中的数字>=3负载过高。

3、top动态管理进程

top - 08:13:21 up 74 days, 11:48,  2 users,  load average: 0.00, 0.00, 0.00
Tasks: 110 total,   1 running, 109 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    520132k total,   231980k used,   288152k free,    74504k buffers
Swap:   135164k total,        0k used,   135164k free,   100248k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                 
26253 root      20   0  2752 1908 1672 R  0.3  0.4   0:00.08 top                     
    1 root      20   0  2964 2248 2060 S  0.0  0.4   0:01.05 init                    
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kthreadd                
    4 root       0 -20     0    0    0 S  0.0  0.0   0:00.00 kworker/0:0H            
    6 root      20   0     0    0    0 S  0.0  0.0   0:28.64 ksoftirqd/0             
    7 root      20   0     0    0    0 S  0.0  0.0   0:25.59 rcu_sched   
第二行:
Tasks: 110 total 总进程数为110
1 running 正在运行的进程数
109 sleeping 睡眠的进程数
0 stopped 停止的进程数
0 zombie 僵尸进程数
第三行:
0.0%us 系统用户进程使用CPU百分比
0.0%sy 内核中的进程占用CPU百分比
0.0%ni 用户进程空间内改变过优先级的进程占用CPU百分比
100.0%id 空闲的CPU百分比
0.0%wa CPU等待I/O完成的时间总量
0.0%hi 硬中断占比
0.0%si 软中断占比
0.0%st 虚拟机占用物理的时间,例如物理机运行了KVM,则表示KVM占用物理机的CPU时间
第四、五行:
Mem:520132k total 物理内存总量
231980k used 使用的物理内存总量
288152k free 空闲内存总量
74504k buffers 内核缓存内存量
Swap:135164k total 交换分区总量
0k used 使用的交换分区总量
135164k free 空闲交换分区总量
100248k cached 可利用内存总量
top快捷键:
默认三秒刷新一次,按s修改刷新时间
空格:立即刷新
q:退出
P;按CPU排序按CPU排序
M:按内存排序
T:按时间排序
数字1:显示每个内核的CPU使用率
u/U:指定显示的用户
h:帮助
参数:
-p top -p 进程号,查看某个进程状态

二、前后台进程切换

  1. & 用在一个命令的最后,可以吧这个命令放到后台执行;
  2. crtl+z 将一个正在前台执行的命令放到后台,并且暂停 ;
  3. jobs 查看当前有多少在后台运行的进程,它是一个作业控制命令 ;
  4. fg 将后台中的命令调至前台继续运行 ;
  5. bg 将一个在后台暂停的命令,变成继续执行;

三、关闭进程

1、kill 进程号: 关闭单个进程;
2、killall与pkill :用于杀死指定名字的进程;
3、kill -l:通过信号的方式来控制进程,kill -l可以查看所有支持的信号;

[root@liang ~]# kill -l
 1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP
 6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL     10) SIGUSR1
11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM
16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP
21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO       30) SIGPWR
31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3
38) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8
43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-7
58) SIGRTMAX-6  59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2
63) SIGRTMAX-1  64) SIGRTMAX
常用的信号:
1) SIGHUP 重新加载配置
2) SIGINT 键盘中断
3) SIGQUIT 退出
9) SIGKILL 强制终止
15) SIGTERM 终止(正常结束)
18) SIGCONT 继续
19) SIGSTOP 停止
20) SIGTSTP 暂停
例:
指定pid
[root@liang ~]# kill -9 1343
指定服务名
[root@liang ~]# pkiil sshd
[root@liang ~]# killall sshd
7.进程优先级管理
优先级范围(-20至19),越小优先级越高,默认优先级是0
命令:
nice 指定程序运行的优先级
格式:nice -n command
renice 改变程序运行的优先级
格式:renice -n pid

例:修改vi的优先级为5
[root@liang ~]# nice -n 5 vi aa
修改为10
[root@liang ~]# renice -10 17757 
17757 (process ID) old priority 5, new priority -10
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值