linux基础篇(三):进程管理

进程

进程的定义:进程就是cpu未完成的工作

ps命令

ps
    a    ##关于当前环境的所有进程
    x| -A    ##所有进程
    f    ##显示进程从属关系
    e    ##显示进程调用环境工具的详细信息
    l    ##长列表显示进程的详细信息
    u    ##显示进程的用户信息
   -a    ##显示shell前台运行命令的进程,但不保函shell本身

在这里插入图片描述
在这里插入图片描述
ps ax -o %cpu,%mem,user,group,comm,nice,pid,stat ##指定显示进程的某些信息
在这里插入图片描述

%cpu    ##显示进程cpu负载
%mem    ##显示进程内存负载
user    ##进程用户
group    ##进程组
comm    ##进程名称
nice    ##进程优先级
pid    ##进程的id
stat    ##进程状态
stat中显示的信息
S    ##进程状态
l    ##内存中有锁定空间
N    ##优先级低
<    ##优先级高
+    ##前台运行
s    ##顶级进程

ps ax -o %cpu,comm --sort <+|-%cpu > <+|-%mem> ##按照进程信息排序
(1)ps ax -o %cpu,comm --sort -%cpu ##按照cpu负载倒序排序
在这里插入图片描述
(2)ps ax -o %mem,comm --sort -%mem ##按照内存负载倒序排序
在这里插入图片描述

进程优先级

进程优先级范围

-20—19

优先级查看

ps ax -o pid,nice,comm
在这里插入图片描述

指定某个优先级开启进程

nice -n 优先级数字 进程名称
nice -n -5 vim & ##开启vim并且指定程序优先级为-5
在这里插入图片描述

改变进程优先级

reince -n 优先级数字 进程pid
renice -n -5 1806 ##改变1806进程的优先级为-5
在这里插入图片描述

环境中进程的前后台调用

jobs                    ##查看被打入环境后台的进程
ctrl+z                  ##把占用终端的进程打入后台
fg jobsnum              ##把后台进程调回前台
bg jobsnum              ##把后台暂停的进程运行
comm &                  ##让命令直接在后台运行

(1)ctrl +z 将gedit打入后台,再利用bg命令将打入后台的gedit调回前台
在这里插入图片描述
(2)利用fg命令将在后台运行的进程调回前台运行
在这里插入图片描述

在这里插入图片描述

进程信号

常用信号等级
1               ##进程重新加载配置
2               ##删除进程在内存中的数据
3               ##删除鼠标在内存中的数据
9               ##强行结束单个进程(不能被阻塞)
15              ##正常关闭进程   (可能会被阻塞)       
18              ##运行暂停的进程
19              ##暂停某个进程   (不能被阻塞)
20              ##把进程打入后台        (可以被阻塞)
man 7 signal    ##查看信号详细信息
kill -信号 进程pid
killall -信号   进程名字
pkill   -u student -信号

在这里插入图片描述
在这里插入图片描述

用户登陆审记

w               ##查看使用系统的当前用户有那些
w -f            ##-f查看使用地点
last            ##查看用户登陆成功历史
lastb           ##查看用户登陆未成功历史

在这里插入图片描述
在这里插入图片描述

top命令

s       : 修改进程刷新间隔时间
m       : 根据内存占有率进行排序
c       : 根据 cpu 占有率进行排序
u       : 后面输入用户名 , 用来查看该用户发起的所有进程
k       : 后面跟要作用的进程 pid, 和发起的信号 (eg:9,15,20) 用来
给某个进程发起一信号
q       : 退出进程查看界面
h       : 显示 top 命令的帮助

在命令行输入top
在这里插入图片描述
输入s修改进程刷新时间间隔(直接在top命令输出界面输入)
在这里插入图片描述

系统初始化程序

systemd

系统初始化程序,系统开始的第一个进程,pid为1

systemctl 命令

systemctl list-units                    ##列出当前系统服务的状态
systemctl list-unit-files               ##列出服务的开机状态
systemctl status sshd                   ##查看指定服务的状态
systemctl stop sshd                     ##关闭指定服务
systemctl start sshd                    ##开启指定服务
systemctl restart sshd                  ##从新启动服务
systemctl enable sshd                   ##设定指定服务开机开启
systemctl disable sshd                  ##设定指定服务开机关闭
systemctl reload sshd                   ##使指定服务从新加载配置
systemctl list-dependencies sshd        ##查看指定服务的倚赖关系
systemctl mask  sshd                    ##冻结指定服务
systemctl unmask sshd                   ##启用服务
systemctl set-default multi-user.target ##开机不开启图形
systemctl set-default graphical.target  ##开机启动图形
setterm                                 ##文本界面设定color
vga=ask
systemctl       status          服务名称
loaded                          ##系统服务已经初始化完成,加载过配置
active(running)               ##正有一个或多个程序正在系统中执行,
                               # vsftpd 就是這種模式
atcive(exited)                ##僅執行一次就正常結束的服務,
atcive(waiting)               ##正在執行當中,不過還再等待其他的事件才能繼續處理
inactive                        ##服务关闭
enbaled                         ##服务开机启动
disabled                        ##服务开机不自启
static                          ##服务开机启动项不可被管理
failed                          ##系统配置错误

猜你喜欢

转载自blog.csdn.net/gd0306/article/details/83041510