Linux基础 进程管理
一、进程
1.进程介绍
进程就是系统未完成并且正在进行的工作。
2.进程的状态
R (TASK_RUNNING),可执行状态。
S (TASK_INTERRUPTIBLE),可中断的睡眠状态。
D (TASK_UNINTERRUPTIBLE),不可中断的睡眠状态。
T (TASK_STOPPED or TASK_TRACED),暂停状态或跟踪状态。
X (TASK_DEAD - EXIT_DEAD),退出状态,进程即将被销毁。
Z (TASK_DEAD - EXIT_ZOMBIE),退出状态,进程成为僵尸进程。
3.进程查看
(1)图形方式查看
gnome-system-monitor
(2)命令方式查看(ps)
ps -A 查看所有进程
-a 在环境中的所有进程
-u 显示进程用户信息
a 显示当前环境中运行的进程,包含环境信息
x 列出系统中所有运行包含tty输出设备
f 显示进程的父子关系
e 显示进程的详细信息
ps常用组合
ps aux 显示系统中所有进程并显示进程用户
ps ef 显示进程详细信息并显示进程父子关系
ps ax 显示当前系统中的所有进程
pstree 显示当前系统的进程树
显示进程指定信息(ps -o xxx)
ps -o comm 显示进程名称
user 显示进程所有人
group 显示进程所有组
%cpu 显示进程cpu使用率
%mem 显示进程内存使用率
pid 显示进程id
nice 显示进程优先级
进程排序(ps ax --sort= )
ps ax --sort= %cpu|-%cpu
+%mem|-%mem
内存使用前5的pid抓出来:ps -A --sort=-%mem -o pid |head -n 6 | tain -n 5
ps -A --sort=-%mem -o pid |sed -n 2,6p
二、进程优先级
1,进程优先级范围
-20~19
2,优先级查看
ps ax -o pid,nice,comm
3,指定某个优先级开启进程
nice -n 优先级数字 进程名称
nice -n -5 vim 开启vim并指定程序优先级为-5
4.改变进程优先级
reince -n 优先级数字 进程pid
renice -n -5 优先级数字 改变3982进程的优先级为-5
5.环境中进程的前后台调用
jobs 查看被打入环境后台的进程
ctrl+z 把占用终端的进程打入后台
fg 进程 把后台进程调回前台
bg 进程 把后台暂停的进程运行
名称 & 开启一个进程后台运行
5。进程信号
常用信号等级
1:在进程不关闭的情况下重新加载配置。
2:删除进程在内存中的数据(不能是锁定的内存,锁定的空间数据被删除进程就会关闭)
3:删除鼠标在内存中的数据
9:强行结束单个进程(不能被阻塞)
15:正常关闭进程(可能会被阻塞)
18:运行暂停的程序
19:暂停某个进程
20:把进程打入后台
man 7 signal 查看信号详细信息
kill:向内核之间发送信号
kill -信号 进程pid
killall -信号 进程名称
pkill -u student -信号
2.进程的动态监控(top)
l:显示cpu每个核的负载
s:调整刷新频率
c:cpu负载排序
m:内存使用量排序
h:查看帮助
u:查看指定用户进程
k:对指定的进程发起信号
z:显示颜色
b:高亮显示
q:退出
控制服务:
1.什么是服务
系统中运行的对于系统本身没有意义,但是对客户主机有重大意义的程序叫做服务性软件简称服务
2.用什么控制服务
系统初始化进程可以对服务进行相应的控制
3.当前系统初始化进程是什么
systemd 系统初始化进程
pstree 显示系统中的进程数
4.进程控制命令
ssh sshd
client server
systemctl 参数 服务名称 #服务控制命令
systemctl status sshd 查看服务状态,inactive不可用 active 可用
start sshd 开启服务
stop sshd 关闭服务
restart sshd 重启服务
reload sshd 重新加载服务配置
enable sshd 设定服务开机启动
diaable sshd 设定服务开机不启动
list-units 列出已经开启服务当前状态
list-unit-files 列出所有服务开机启动的状态,diaable,enable,static
list-dependencies 列出服务的依赖
set-default multi-user.target设定系统启动级别为多用户模式。
sshd简介
sshd=secure shell
可以通过网络在主机中开机shell服务
虚拟机网络设置:
在desktop虚拟机输入 nm-connection-editor,然后设置:
连接方式:
ssh username@ip 文本模式的链接(连接后输入gedit,不能开启图形)
ssh -X username@ip 可以在链接成功后开机图形(连接后输入gedit)
远程复制(这个过程不用ssh连接)
scp file root@ip(服务器):dir 上传:将本机文件上传到远程服务器上
scp -r /etc/ @ip(服务器ip):/mnt/ 下载:将远程服务器上的文件复制到本机