1.什么是进程
进程就是系统未完成并且正在进行的工作
2.查看进程
1)图形方式查看
gnome-system-monitor
2)进程查看命令
ps -A | ##所有进程 |
---|---|
ps -a | ##在当前环境中运行的进程 |
ps -u | ##显示进程用户信息 |
ps a | ##在当前环境中运行的进程 |
ps x | ##列出系统中所有运行包含tty输出设备 |
ps f | ##显示进程的父子关系 |
ps e | ##显示进程的详细信息(系统资源的调用) |
ps常用组合
ps aux | ##显示系统中所有进程并显示进程用户 |
---|---|
ps ef | ##显示进程详细信息并显示所有父子进程 |
ps ax | ##显示当前系统中的所有进程 |
pstree | ##显示当前系统的进程树 |
ps aux
ps ef
ps ax
pstree
3)显示进程指定信息
ps -o xxx | ##显示进程的指定信息 |
---|---|
ps -o comm | ##进程名称 |
ps -o user | ##进程所有人 |
ps -o group | ##进程所有组 |
ps -o %cpu | ##进程cpu使用率 |
ps -o %mem | ##进程内存使用率 |
ps -o pid | ##进程id |
ps -o nice | ##进程优先级 |
4)进程排序
ps ax --sort=%cpu | 查看cpu的使用量并排序 |
---|---|
ps ax --sort=-%cpu | 倒序查看cpu的使用率 |
ps ax --sort=%mem | 查看内存使用率并排序 |
ps ax --sort=-%mem | 倒序查看内存使用率 |
测试:抓取系统中内存使用量排在前5的进程的pid
5)stat中显示的信息
S | ##进程状态 |
---|---|
l | ##内存中有锁定空间 |
N | ##优先级低 |
< | ##优先级高 |
+ | ##前台运行 |
s | ##顶级进程 |
3.进程优先级
1)进程的优先级范围
-20 ~19
2)优先级查看
ps ax -o pid,nice,comm
3)指定某个优先级开启进程
nice -n 优先级数字 进程名称
nice -n -5 vim & ##开启vim并且指定程序优先级为-5
4)改变进程优先级
renice -n 优先级数字 进程pid
renice -n -5 2738 ##改变2738进程的优先级为-5
4.环境中进程的前后台调用
jobs | ###查看被打入环境后台的进程 |
---|---|
ctrl+z | ##把占用终端的进程打入后台 |
fg jobsnum | ##把后台进程调回前台 |
bg jobsnum | ##把后台暂停的进程运行 |
comm & | ##让命令直接在后台运行 |
5.信号等级
1)常用信号等级
1 | ##进程重新加载配置 |
---|---|
2 | ##删除进程在内存中的数据 |
3 | ##删除鼠标在内存中的数据 |
9 | ##强行结束单个进程(不会被阻塞) |
15 | ##正常关闭进程 (可能会被阻塞) |
18 | ##运行暂停的进程 |
19 | ##暂停某个进程 |
20 | ##运行暂停的进程 |
man 7 signal | ##查看信号详细信息 |
2)kill操作
kill -信号 进程pid
killall -信号 进程名字
pkill -u student -信号
6.进程的动态监控
1)top
1 | ##显示cpu每个核的负载 |
---|---|
s | ##调整刷新频率 |
c | ##cpu负载排序 |
m | ##内存使用量排序 |
h | ##查看帮助 |
u | ##查看指定进程 |
k | ##对指定进程发起信号 |
q | ##退出 |
显示cpu0的负载
显示cpu(s)的负载
调整刷新频率为1s
显示cpu负载排序
显示内存使用量排序
查看student的进程
对进程执行kill -9 操作
7.控制服务
1)什么是服务
cs模型
c 表示client
s 表示server
vnc为例
c tigerVNC viewer
s tigervnc-server
定义:系统中运行的对于系统本身没有意义
但是对客户主机有重大意义的程序叫做服务性软件简称服务
2)用什么控制服务
系统初始化进程可以对服务进行相应的控制
3)当前系统初始化进程是什么
systemd ##系统初始化进程
pstree ##显示系统中的进程树
4)进程控制命令
ssh -----> sshd
client server
systemctl ##服务控制命令
systemctl status sshd | ##查看服务状态,inactive(不可用),active(可用) |
---|---|
systemctl start sshd | ##开启服务 |
systemctl stop sshd | ##关闭服务 |
systemctl restart sshd | ##重启服务 |
systemctl reload sshd | ##重新加载服务配置 |
systemctl enable sshd | ##设定服务开机启动 |
systemctl disable sshd | ##设定服务开机不启动 |
systemctl list-units | ##列出已经开启服务当前状态 |
systemctl list-unit-files | ##列出所有服务开机启动的状态 |
systemctl list-dependencies | ##列出服务的依赖 |
systemctl set-default multi-user.target | ##设定系统启动级别为多用户模式(无图形) |
systemctl set-default graphical.target | ##设定系统启动级别为图形模式 |
列出所有服务开机启动的状态时,一共有以下几种状态
disable | 开机不自启 |
---|---|
enable | 开机自启 |
static | 静态的 |
mask | 锁定的 |
其中,当状态为mask时,可以用unmask来解锁