进程、作业
1、PID:进程的ID (每一个新进程都有一个唯一的PID)
2、PPID:父进程的ID
3、任何一个进程都可以创建一个子进程
4、在redhat 7以上,所有进程的父进程: systemd, 在redhat 5. 6中,所有进程的父进程: init
- 进程
进程:LInux自身运行的独立程序
交互进程:由一个shell启 动的进程,可以再前台运行,也可以在后台运行
批处理进程:是一个进程序列,和终端没有联系
监控进程(守护进程) :Linux系统启动时,启动的进程,并且在后台运行
- 作业
作业:一个正在执行的进程,而且作业可以包含一个或多个进程 。
作业控制:控制正在运行的进程的行为。如:挂起一个进程、等一会在执行、中断,这样用户就可以再多个作业之间切换
- 查看实时进程 top
top
参数
-d:秒数,指定top命令每隔几秒更新。默认是3秒
在top命令的交互模式当中可以执行的命令:
~?或h:显示交互模式的帮助
P:以CPU使用率排序,默认就是此项
M:以内存的使用率排序
N:以PID排序
q:退出top
- 查看进程树 pstree
pstree
参数
-p:显示进程的PID
-u:显示进程的所属用户
- . 查看后台运行的进程
jobs
//查看当前后台的进程状态
jobs -l:除了列出进程号外,同时列出PID
jobs -r:列出仅仅在后台运行的进程
jobs -S:列出仅仅在后台暂停的进程
ps -aux:列出所有进程和状态
ps -ef:列出所有进程
ps -l:列出和当前用户有关的进程和状态
ps -u:用户名:查看某一用户的进程状态
ps -j:列出PID \ SPID
参数解释 ps -aux 查询
1、%CPU:占用的CPU使用率
2、%MEM:占用的记忆体使用率,
3、VSZ:占用的虚拟记忆体大小
4、RSS:占用的记忆体大小
5、TTY:终端的次要装置号码(minor device numberoftty)
6、STAT:该行程的状态
7、START 行程开始时间
8、TIME:执行的时间
9、COMMAND:所执行的指令
START 进程状态
运行中:
R:该进程正在运行或等待运行
睡眠:
S:正在休眠但是可以被唤醒
D:正在休眠,而且不可以被唤醒,该进程被中断,可能会导致设备的异常状态
K:正在休眠,而且不可以被唤醒,该进程可以被中断。
已停止:
T:进程被停止,但是可以通过其他进程来进行恢复
T:正在被调试的进程
僵停:
Z:子进程在退出时向父进程发出信号,除PID外,所有资源全部释放
X:父进程获取了子进程的结构,子进程可以完全释放,该状态进程中是看不到的
START 进程状态的优先级
<:高优先级
n:低优先级
s:包含子进程
+:位于后台的进程组
- 中断、杀死进程
信号:传递给Linux进程的操作
kill-l PID :显示可以传递给Linux进程的所有信号
ctrl +c :中断进程
ctrl +z : 挂起进程
kill -9 PID :强制杀死一个进程
kill -15 PID :正常的方式终止一个进程
- 作业的控制命令
&:在命令后面使用该符号,可以让命令在后台执行
fg + 作业编号:将后台的命令调到前台来继续执行,不能放回后台了
bg + 作业编号:将后台暂停的命令继续执行
控制服务和守护进程
ssh:是一个协议
sshd:是一个进程
systemd:是所有进程的父进程(Linux内核3.0以上版本)
systemctl:用户管理各种类型的systemd对象,这些对象称为:单元
常用的单元::.service (服务单元) .socket (套接字) .path (路径单元)
systemctl start sshd
start:在系统中启动- -项服务
stop:等待程序需处理完毕后再stop,
restart:直接关闭程序在开启
reload:重新加载配置文件,进程暂停,然后把配置文件加载进去后,继续执行后续操作。进程的PID不会发生改变
enable:设置开机自启
disable:关闭开机自启
status:查看某一单元的状态
- systemctl status sshd.service 查询参数
loaded:单元配置文件以处理
active (running) :正在运行
active (exited) :配置成功
active
(waiting) :运行中,但正在等待事件
inactive:不在运行
enable:开机自启动
disabled:开机不自启
static:无法启动,但可以通过某一个已经启动的单元来启动