进程管理
一、进程的图形和文本查看
1)在shell中执行gnome-system-monitor 命令,即可实现图形查看进程
2)在shell中执行top:动态系统进程监控,默认是3秒的周期
二、ps命令
1、ps默认只是输出与shell相关的进程
ps a:shell的进程,还包括shell环境;
ps -a:所有与shell相关的进程,所有的shell都会显示,但不包含shell进程本身;
2、ps -A:显示系统所有进程
ps x:显示系统所有进程(详细)
3、ps e:显示shell进程调用环境工具的具体信息
4、ps l :长列表显示shell进程的详细信息
5、ps u:显示shell进程的用户信息
6、-o 指定显示进程的信息,如下图
%cpu:显示进程cpu负载;
comm:进程名称;
%mem:显示进程内存负载;
user:进程的用户;
group:进程所属组;
gid:组id;
pid:进程pid;
nice:进程优先级;
stat:进程状态
R:表示进程正在运行;
S:表示进程处于睡眠状态,该状态下可以被signal唤醒,S表示顶级进程,如果顶级进程的优先级改变则其下所有的优先级都会改变;
l表示有锁定空间,+表示正在运行 N:优先级低;<:优先级高;
D:表示进程处于睡眠状态,但不可被唤醒;
T:表示进程处于停止状态;
Z:表示进程处于僵尸态,进程已经终止但是却无法被移出内存;
7、ps a -o %cpu,comm --sort=+%cpu查看进程cpu负载,并按正序排序;
ps a -o %cpu,comm --sort=-%cpu查看进程cpu负载,并按倒序排序;
三、进程的优先级(NI)
1、进程优先级的范围:-20~19,负数表示优先级高
2、nice:以指定的优先级运行
3、改变进程优先级:reince -n优先级数字 进程pid
四、进程的后台暂停和调用
1、当我们在shell中执行gedit时我们就无法在当前shell中执行其他命令,那么如何实现可以让shell在执行gedit的同时可以继续执行其他命令,这就用到后台暂停命令,在shell中Ctrl+Z此时gedit在后台暂停,gedit中是无法输入信息的,可以用jobs查看在后台暂停的进程
2、 fg jobsnum:把后台进程调回前台,此时shell将无法执行其他命令,但gedit可以输入
3、bg jobsnum:把后台暂停进程运行,此时shell可以执行命令并且gedit可以输入
五、进程的信号
信号用数字表示,常用的信号主要有
1:在程序不重启的情况下重新加载配置信息,并不是所有的进程都支持不重起的情况下重新加载配置
2:清除指定程序在内存中的数据;
3:清除鼠标在内存中的数据,比较常见的是在使用视频播放器时鼠标会自动隐藏;
9:强行结束某个进程,不会被中断;
15:正常结束某个进程,如果进程已经出现问题则无法使用其来终止进程
19:暂停某个进程,不会被阻塞;
20:暂停某个进程,可能会被阻塞;
18:继续运行暂停的进程;
可使用kill 来对进程进程操作:
1)kill -信号 进程PID
2)killall -信号 进程名称
systemd系统初始化程序,系统开始的第一个进程,pid为1
systemctl命令
1、systemctl list-units ##列出当前系统服务的状态
2、systemctl list-unit-files ##列出服务的开机状态
Static表示不确定开机启动状态,enable表示开机启动,disable表示开机不启动
3、systemctl status servername ##查看指定服务的状态,servername表示服务名称
服务状态主要有以下几种:
loaded :系统服务已经初始化完成,加载过配置
active(running):正有一个或多个程序正在系统中执行
atcive(exited):仅执行一次就正常结束的服务
atcive(waiting):正在执行中, 需要等待其他事件才能继续处理
inactive:服务关闭
enbaled:服务开机启动
disabled:服务开机不自启
static:服务开机启动项不可被管理
failed:系统配置错误
4、systemctl stop servername ##关闭指定服务
5、systemctl start servrename ##开启指定服务
6、systemctl restart servername ##重新启动指定服务
7、systemctl enable servername ##设置指定服务开机自启动
8、systemctl disable servername ##设置指定服务开机关闭
9、systemctl reload servername ##使指定服务从新加载配置
10、systemctl list-dependencies servername ##查看指定服务的依赖关系
11、systemctl mask servername ##冻结指定服务
12、systemctl unmask servername ##解冻指定服务
13、systemctl set-default multi-user.target ##开机不开启图形
14、systemctl set-default graphical.target ##开机启动图形
15、setterm ##在文本界面设定color