Linux-进程管理【重点】
目录
前言
进程管理
系统执行的进程
aux显示进程
ps详解
ps返回参数说明
全格式显示进程
终止进程kill和killall
查看进程树pstree
服务管理
service管理指令
查看服务名
systemctl管理指令
systemctl 设置服务的自启动状态
firewall指令
动态监控进程
监控网络状态
前言
Linux操作系统在虚拟机VM上的安装【CentOS版本】-CSDN博客
Linux-(系统启动、用户管理)-CSDN博客
Linux-实用指令-CSDN博客
Linux-【组管理、权限管理、定时任务调度】-CSDN博客
进程管理
- 在linux中,每个执行的程序都成为一个进程,每一个进程都分配一个ID号(PID,进程号)
- 每个进程都可能以两种方式存在,前台与后台。前台进程就是用户目前的屏幕上可以进行操作的,后台进程也在操作,但是屏幕上无法看到进程
- 一般系统服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束
windows系统下的pid:
系统执行的进程
aux显示进程
ps命令是用来查看目前系统中,有哪些正在执行,以及它们执行的状况。可以不加任何参数
- ps -a:显示当前终端的所有进程信息
- ps -u:以用户的格式显示进程信息
- ps -x:显示后台进程运行的所有参数
ps详解
使用“ps -aux | grep xxx”查看是否有“xxx”服务
ps返回参数说明
- USER:用户名称
- PID:进程号
- %CPU:进程占用CPU的百分比
- %MEM:进程占用物理内存的百分比
- VSZ:进程占用的虚拟内存的大小(单位KB)
- RSS:进程占用的物理内存的大小(单位KB)
- TTY:终端名称缩写
- STAT:进程状态(S表示睡眠、s表示该进程是会话的西先导进程、N表示进程拥有比普通优先级更低的优先级、R表示正在运行、D短期等待、Z僵死进程、T被跟踪或被停止等待)
- START:进程启动时间
- TIME:进程使用CPU的总时间
- COMMAND:启动进程所用的命令和参数,如果过长就会被截断显示
全格式显示进程
- 使用“ps -ef”以全格式显示当前所有的进程(-e显示所有进程、-f全格式)
- UID:用户ID
- PID:进程ID
- PPID:父进程ID
- C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高
- STIME:进程启动的时间
- TTY:完整的终端名称
- TIME:CPU时间
- CMD:启动进程所用的命令和参数
终止进程kill和killall
当某个进程执行一半需要停止时,或者已经占用很大的系统资源时,此时可以考虑停止该进程,使用kill命令完成
基本语法:
“kill [选项] 进程号”(通过进程号杀死进程)
“killall [选项]”(通过进程名称杀死进程,也支持通配符)
常用选项:
- -9:表示强迫进程立即停止
查看进程树pstree
基本语法:
“pstree [选项]”(可以更加直观的来看进程信息)
常用选项:
- -p:显示进程的PID
- -u:显示进程的所属用户
服务管理
服务(service)本质就是进程,但是运行在后台的,通常都会监听某个端口,等待其它程序的请求,如(mysql、sshd、防火墙等),因此我们又称为守护进程。
service管理指令
- service 服务名[start | stop | restart | reload | status]
- 在CentOS7.0后,很多服务不再使用service
- service 指令管理的服务在/etc/init.d中
查看服务名
输入“setup”进入系统设置页面
systemctl管理指令
基本语法:
“systemctl [start | stop | restart | status] 服务名”
systemctl 指令管理的服务在 /usr/bin/systemd/system查看
systemctl 设置服务的自启动状态
- systemctl list-unit-files 查看服务器开机启动状态
- systemctl enable 服务名(设置服务开机启动)
- systemctl disable 服务名(关闭服务开机启动)
- systemctl is-enabled 服务名(查询某个服务是否是自启动的)
firewall指令
- 打开端口:firewall-cmd -permanent --add-port=端口号/协议
- 关闭端口:firewall-cmd -permanent --remove-port=端口号/协议
- 重新载入,才能生效:firewall-cmd --reload
- 查询端口是否开放:firewall-cmd --query-port=端口/协议
动态监控进程
top与ps命令很相似,它们都用来显示正在执行的进程。top与ps的最大不同之处,在于top在执行一段时间可以更新执行的进程
基本语法:
“top [选项]”
选项说明:
在进入top监控页面后,我们可以进行一些交互操作:
- 监视特定用户,比如监控tom用户:输入“top”进入进程监控页面,按下键盘“u”键,输入“tom”即可监控tom用户
监控网络状态
基本语法:
“netstat [选项]”
选项说明:
- -an:按一定顺序排列输出
- -p:显示哪个进程在调用
- 查看服务名为sshd的服务的网络状态:netstat -anp | grep sshd