进程管理

概述

1、在 Linux 中,每一个执行的程序都被称为一个进程,每一个进程都被分配一个 PID(进程号)

2、每个进程都可能以两种方式存在:前台、后台

(1)前台进程:用户目前屏幕上可以进行操作

(2)后台进程:实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行

3、一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才会结束

 

ps 选项

1、查看目前系统中,正在执行的进程 ,以及执行状况,可以不加任何参数

2、选项

(1)-a:显示当前终端的所有进程信息

(2)-u:以用户格式显示进程信息

(3)-x:显示后台进程运行的参数

(4)-e:显示所有进程

(5)-f:以全格式显示进程信息

3、用户格式显示字段信息

(1)USER:进程执行用户

(2)PID:进程号

(3)CPU:当前进程占用 CPU 百分比

(4)MEM:占用物理内存的百分比

(5)VSZ:进程占用虚拟内存大小(KB)

(6)RSS:进程占用的物理内存大小(KB)

(7)TTY:终端名称

(8)STAT:运行状态,S- 表示 sleep 休眠、s- 表示该进程是会话的先导进程,N- 表示进程拥有比普通优先级更低的优先级,R- 表示正在运行,D- 短期等待,z- 僵尸进程,T- 被跟踪或者被停止

(9)STARTED:执行的开始时间

(10)TIME:此进程所占用 CPU 时间

(11)COMMAND:进程名,启动进程所用的命令和参数,如果过长会被截断显示

4、全格式显示字段信息

(1)UID:用户 ID

(2)PID:进程 ID

(3)PPID:父进程 ID

(4)C:CPU 用于计算执行优先的因子,数值越大,表明进程是 CPU 密集型运算,执行优先级会降低;数值越小,表明进程是 I/O 密集型运算,执行优先级会提高

(5)STIME:进程启动时间

(6)TTY:完整的终端名称

(7)TIME:CPU 占用时间

(8)CMD:启动进程所用的命令和参数

 

终止进程

1、kill 选项 进程号

(1)通过 PID 终止进程

(2)-9:表示强迫进程立即停止

2、killall 进程名称

(1)通过进程名终止多个进程

(2)支持通配符

 

查看进程树

1、更直观查看进程信息

2、pstree 选项

(1)-p:树状形式显示进程 PID

(2)-u:树状形式显示进程的所属用户

 

服务管理

1、服务本质是进程,但在后台运行,通常都会监听某个端口,等待其他程序的请求,如:mysqld,sshd 防火墙等,又称为守护进程

2、以 d 结尾的服务

(1)d 代表 deamon,守护进程

(2)Linux 大多数服务为守护进程

(3)守护进程运行在 Linux 服务器后台的一种服务程序,周期地执行某种任务,或等待处理某些发生的事件,如:xinetd 提供网络服务,sshd 提供 ssh 登录服务,httpd 提供 web 服务

3、七种运行级别(runlevel)

(1)运行级别 0:系统停机状态,系统默认运行级别不能设为 0,否则不能正常启动

(2)运行级别 1:单用户工作状态,root 权限,用于系统维护,禁止远程登录

(3)运行级别 2:多用户状态(没有 NFS),不支持网络

(4)运行级别 3:完全的多用户状态(有 NFS),登录后进入控制台命令行模式

(5)运行级别 4:系统未使用,保留

(6)运行级别 5:X11 控制台,登陆后进入图形 GUI 模式

(7)运行级别 6:系统正常关闭并重启,默认运行级别不能设为 6,否则不能正常启动

(8)常用级别:3、5

4、开机流程:开机 -> BIOS -> /boot -> systemd 进程1 -> 运行级别 -> 运行对应服务

5、CentOS 7 运行级别,在 /etc/initab,进行如下简化

(1)multi-user.target:类似运行级别 3

(2)graphical.target:类似运行级别 5

(3)systemctl get-default:查看默认运行级别

(4)systemctl set-default TARGET.target:设置默认运行级别

 

service 服务名 选项

1、start:开启服务

2、stop:停止服务

3、restart:重启服务

4、reload:重载服务

5、status:查看服务状态

6、CentOS 7.0 后很多服务不再使用 service,而使用 systemctl

7、在 /etc/init.d 查看 service 指令管理的服务

 

setup

1、系统服务:查看所有服务

2、带 * 号为自启动服务,不带 * 号为需要手动启动的服务

3、空格键,指定服务是否自启动

4、Tab 键:退出

 

chkconfig 选项 系统服务

1、--add:增加所指定的系统服务,让 chkconfig 指令得以管理它,并同时在系统启动的叙述文件内增加相关数据

2、--del:删除所指定的系统服务,不再由 chkconfig 指令管理,并同时在系统启动的叙述文件内删除相关数据

3、--list:列出 chkconfig 所知道的所有服务,在各运行级别情况

4、--level 等级代号 on | off | reset:指定系统服务要在哪一个执行等级中开启或关闭

5、chkconfig 重新设置服务后自启动或关闭,需要重启机器 reboot 生效

6、CentOS 7.0 后,很多服务使用 systemctl 管理

 

systemctl 选项 服务名

1、start:开启服务

2、stop:停止服务

3、restart:重启服务

4、status:查看服务状态

5、list-unit-files:查看服务开机启动状态,使用过滤:| grep 服务名

6、enable:开启服务开机启动

7、disable:关闭服务开机启动

8、关闭、开启都是默认 3、5 级别

9、is-enabled 服务名:查询某个服务是否是自启动的

10、在 /usr/lib/systemd/system 查看 systemctl 管理的服务

 

firewall

1、无论是关闭,还是开启端口,都需要重新载入防火墙才能生效

(1)firewall-cmd --permanent --add-port=端口号/协议:开启端口

(2)firewall-cmd --permanent --remove-port=端口号/协议:关闭端口

(3)firewall-cmd --reload:重载防火墙

2、firewall-cmd --query-port=端口/协议:查询端口是否开放

3、telnet IP 端口号:测试目的主机的端口号是否开放

 

top 选项

1、top 和 ps 相似,都显示正在执行的进程,最大不同:top 在执行一段时间,可以更新正在运行的进程

2、僵死进程:进程运行结束,但没有释放内存

(1)僵死进程需要定时清除

(2)CPU 使用率、KiB Mem(内存管理)最重要

3、选项

(1)-d 秒数:指定 top 每隔几秒更新,默认 3 秒

(2)-i:不显示任何闲置,或僵死进程

(3)-p:指定监控进程 ID,监控某个进程状态    

(4)-n 次数:更新指定次数后,退出 top

4、交互操作

(1)P:以 CPU 使用率排序(默认)

(2)M:以内存使用率排序

(3)N:以 PID 排序

(4)q:退出 top

(5)u:输入用户名,监视特定用户

(6)k:输入 PID,终止指定 PID 进程

 

netstat 选项

1、显示网络状态

2、-a 或 --all:显示所有连线中的 Socket

3、-A 网络类型 或 --网络类型:列出该网络类型连线中的相关地址

4、-c 或 --continuous:持续列出网络状态

5、-C 或--cache:显示路由器配置的快取信息

6、-e 或 --extend:显示网络其他相关信息

7、-F 或 --fib:显示路由缓存

8、-g 或 --groups:显示多重广播功能群组组员名单

9、-h 或 --help:显示帮助

10、-i 或 --interfaces:显示网络界面信息表单

11、-l 或 --listening:显示监控中的服务器的Socket

12、-M 或 --masquerade:显示伪装的网络连线

13、-n 或 --numeric:直接使用 IP 地址,而不通过域名服务器

14、-N 或 --netlink 或 --symbolic:显示网络硬件外围设备的符号连接名称

15、-o 或 --timers:显示计时器

16、-p 或 --programs:显示正在使用 Socket 的程序识别码和程序名称

17、-r 或 --route:显示 Routing Table

18、-s 或 --statistics:显示网络工作信息统计表

19、-t 或 --tcp:显示 TCP 传输协议的连线状况

20、-u 或 --udp:显示 UDP 传输协议的连线状况

21、-v 或 --verbose:显示指令执行过程

22、-V 或 --version:显示版本信息

23、-w 或 --raw:显示 RAW 传输协议的连线状况

24、-x 或 --unix:此参数的效果和指定 -A unix 参数相同

25、--ip 或 --inet:此参数的效果和指定 -A inet 参数相同

posted @   半条咸鱼  阅读(292)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示