目录
一、进程与线程
1、进程
进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体。进程是资源调用的最小单位。
2、线程
线程是操作系统能够进行运算调度的最小单位,被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。线程是进程的最小单位。
二、进程管理相关命令
1、进程查看命令
(1)图形进程查看命令
gnome-system-monitor
(2)ps进程查看
ps | a | 与终端相关的进程 |
x | 与终端无关的进程 | |
u | 用户信息归类的查看方式 | |
f | 进程层级关系 | |
-e | 显示所有进程 | |
-f | 显示信息的完整格式 | |
-H | 显示进程的层级结构 | |
-o | 显示指定参数 | |
--sort= | 排序 |
【举例】
2、进程过滤
pgrep | -u uid | 显示指定用户进程 |
-U user | 显示指定用户进程 | |
-t tty | 显示指定终端进程 | |
-l | 显示进程名称 | |
-a | 显示进程的完整名称 | |
-P | 显示进程的子进程 |
3、进程优先级
范围:0-->139
内核自控优先级范围:0-->99
用户可控优先级范围:100-->139
S | sleeping |
< | 优先级高 |
s | 顶级进程 |
T | stop |
N | 优先级低 |
R | runing |
+ | 运行在前台 |
renice -n -5 PID #更改进程的优先级
nice -n -5 cat #指定优先级打开进程
4、进程的前后台调用
<ctrl>+<z> | 把占用shell的进程打入后台 |
bg | 把后台挂起的程序运行起来 |
fg | 把后台进程调回前台 |
& | 运行进程在后台 |
jobs | 查看当前shell中在后台的所有工作 |
5、进程信号
(1)进程信号
1 | 重新加载系统配置文件 |
2 | 清空内存中的进程数据 |
3 | 清空内存中的鼠标 |
9 | 强行结束进程 |
15 | 正常关闭进程 |
18 | 运行被暂停的进程 |
19 | 暂停进程(不会被阻塞) |
20 | 暂停进程(会被阻塞) |
(2)进程信号控制工具
kill 进程信号 pid |
killall -进程信号 进程名字 |
pkill 进程信号 进程条件 |
6、守护进程
守护进程(daemon)是一类在后台运行的特殊进程,用于执行特定的系统任务。很多守护进程在系统引导的时候启动,并且一直运行直到系统关闭。另一些只在需要的时候才启动,完成任务后就自动结束。
systemctl 进程管理服务
systemctl | start sshd | #开启 |
stop sshd | 关闭 | |
status sshd | 查看状态 | |
reload | 重新加载 | |
restart | 重新启动服务 | |
enable | 设定服务开机启动 | |
enable --now | 设定服务开机启动并在当前开启服务 | |
disable | 设定服务开机不启动 | |
list-units | 查看系统所有服务当前的状态 | |
list-dependcise | 列出系统服务依赖性 | |
mask | 冻结服务 | |
unmask | 解锁 | |
set-default | 设定系统运行模式 #multi-user.target无图形模式 #graphical.target有图形模式 | |
get-default | 查看系统运行模式 0 POWEROFF 1 single 2 noG+NETWORK 3 4 5 G+NETWORK 6 REBOOT |
【举例】
三、系统中的登陆审计
w | 显示正在登陆系统的账号 -i 显示登陆来源 /var/run/utmp |
last | 登陆成功已经退出的 /var/run/wtmp |
lastb | 试图登陆但未成功的 |
实验环境:两台设置进行了网络配置的虚拟机
w
last
lastb