南山区做网站公司成都网站网站建设
Linux 进程管理
目录
 
文章目录
- Linux 进程管理
 - 一.进程
 - 1.显示当前进程状态(ps)
 - 进程树(pstree)
 - 1.1实时显示进程信息(top)
 - 顶部概览信息:
 - CPU 状态:
 - 内存状态:
 - 进程信息表头:
 - 进程列表:
 - 1.2(htop)
 
- 2.终止进程(kill)
 - 2.1通过名称杀死进程(pkill)
 - 2.2根据名称查找进程ID(pgrep)
 
- 3.后台和前台进程控制(bg/fg)
 - 3.1显示后台作业列表(jobs)
 
- 4. 跟踪系统调用和信号(strace)
 - 5. 查看内存使用情况(free)
 - 6.服务管理(service)
 - 6.1查看当前网络服务状态
 - 6.2启动,停止,重启
 
- 二.动态监控
 - 网络监控命令
 
- 三.网络监控
 - 网络接口配置
 - 网络连通性测试
 - 数据包路径追踪
 - 网络流量捕获和分析
 - DNS查询
 
一.进程
1.显示当前进程状态(ps)
显示所有运行中的进程及其详细信息
 ps aux
 显示所有包含nginx的进程
 ps -ef | grep nginx
 

进程树(pstree)
显示进程树,并且每个进程旁边显示其进程ID(PID)
 pstree -p
 显示进程树,包括进程的完整命令行和父进程ID
 pstree -pu
1.1实时显示进程信息(top)
top
```
 下面是 top 命令输出中各项参数及其作用:
顶部概览信息:
- top - 20:05:04:
top命令的启动时间。 - up 1:46:系统运行时间,这里是1小时46分钟。
 - 2 users:当前登录到系统的用户数量。
 - load average: 0.44, 0.28, 0.17:系统负载平均值,显示过去1分钟、5分钟和15分钟的平均负载。数值是正在使用CPU的进程数,高于此数值的CPU核心数通常表示高负载。(一般三个数加起来不超过0.7)
 
CPU 状态:
- %Cpu(s): 
- us:用户空间占用CPU的百分比(1.5%)。
 - sy:系统空间占用CPU的百分比(2.5%)。
 - ni:优先级级较高的用户进程占用CPU的百分比(0.0%)。
 - id:CPU空闲的百分比(95.7%)。
 - wa:等待I/O操作的CPU时间百分比(0.0%)。
 - hi:处理硬件中断的CPU时间百分比(0.0%)。
 - si:处理软件中断的CPU时间百分比(0.2%)。
 - st:被虚拟机偷取的时间百分比(0.0%)。
 
 
内存状态:
-  
MiB Mem:
- total:物理内存总量(3870.4 MiB)。
 - free:空闲内存量(1878.6 MiB)。
 - used:已使用内存量(1221.7 MiB)。
 - buff/cache:用作缓冲和缓存的内存量(1043.3 MiB)。
 
 -  
MiB Swap:
- total:交换空间总量(3869.0 MiB)。
 - free:空闲交换空间量(3869.0 MiB)。
 - used:已使用交换空间量(0.0 MiB)。
 
 -  
avail Mem:可用内存量(2648.6 MiB),这是系统可用于启动新应用程序的估计内存量,包括一部分缓存内存。
 
进程信息表头:
- 进程号(PID):进程的唯一标识符。
 - USER:进程所有者的用户名。
 - PR:优先级(越小越优先执行)。
 - NI:nice值(影响进程优先级,越小越优先)。
 - VIRT:虚拟内存大小,进程使用的虚拟内存总量。
 - RES:常驻内存大小,进程实际占用的物理内存量。
 - SHR:共享内存大小,进程与其他进程共享的内存量。
 - %CPU:自上次更新以来,进程占用CPU的百分比。
 - %MEM:自上次更新以来,进程占用内存的百分比。
 - TIME+:进程占用CPU的总时间。
 - COMMAND:启动进程的命令名称。
 
进程列表:
- 2593 admire:用户
admire的PID为2593的进程。 - 20 0:优先级和nice值。
 - 4322184 VIRT:虚拟内存。
 - 270420 RES:常驻内存。
 - 131508 SHR:共享内存。
 - S:进程状态(S:睡眠,R:运行,T:停止,Z:僵尸)。定期清除(占用内存)
 - 11.6 %CPU:CPU使用率。
 - 6.8 %MEM:内存使用率。
 - 0:57.56 TIME+:CPU占用总时间。
 - gnome-session COMMAND:进程名称。
 
1.2(htop)
以彩色界面显示进程信息
 htop
 设置刷新间隔为5秒
 htop -d 5
2.终止进程(kill)
强制 杀死进程ID为PID的进程
 kill -9 PID
 杀死所有名为nginx的进程
 killall nginx
2.1通过名称杀死进程(pkill)
杀死所有与nginx相关的进程
 pkill -f nginx
2.2根据名称查找进程ID(pgrep)
3.后台和前台进程控制(bg/fg)
列出所有名为nginx的进程的PID
 pgrep nginx
3.1显示后台作业列表(jobs)
列出当前终端的所有后台作业
 jobs
4. 跟踪系统调用和信号(strace)
跟踪PID进程的系统调用
 strace -p PID
5. 查看内存使用情况(free)
以MB为单位显示内存使用情况
 free -m
6.服务管理(service)
6.1查看当前网络服务状态
systemctl status NetworkManager.service
服务状态标志(如 ●):表示服务的总体状态。不同符号有不同的含义,例如:●:服务已激活(active)。-:服务未激活(inactive)。?:服务状态未知。服务名称和服务描述:显示服务的名称和简短描述。Loaded:显示服务单元文件是否已加载。loaded:已加载。(/lib/systemd/system/NetworkManager.service; ...:服务单元文件的路径和加载时的状态。Active:显示服务是否正在运行。active (running):服务正在运行。since:服务开始运行的时间。Main PID:服务的主进程ID。Tasks:服务创建的任务数。Memory 和 CPU:服务使用的内存和CPU时间。CGroup:服务所属的控制组(cgroup)信息。日志条目:服务的日志条目,显示时间、主机名、进程ID、日志级别和消息 
6.2启动,停止,重启
systemctl start/stop/restart
二.动态监控
网络监控命令
-  
显示网络连接和端口使用情况(netstat)
netstat -anp | grep :80:查看80端口的连接。
 -  
显示套接字信息(ss)
ss -tulnp:显示TCP/UDP端口使用。
 -  
实时显示网络带宽使用情况(iftop)
iftop:显示网络接口带宽。
 
以下是整理好的Linux网络监控命令笔记:
三.网络监控
网络接口配置
- ifconfig 
ifconfig:显示所有网络接口配置。
 - ip addr show 
ip addr show:显示所有网络接口配置。
 
网络连通性测试
- ping 
ping google.com:测试到google.com的连通性。
 
数据包路径追踪
- traceroute 
traceroute google.com:追踪到google.com的数据包路径。
 - tracepath 
tracepath google.com:追踪到google.com的数据包路径。
 
网络流量捕获和分析
- tcpdump 
tcpdump -i eth0:捕获eth0接口流量。tcpdump -n -v -s 0 -c 100 port 80:捕获端口80的流量。
 - wireshark 
- 使用Wireshark捕获和分析网络流量。
 
 
DNS查询
DNS 是域名系统(Domain Name System)的缩写,它是一个分层的、分布式的命名系统,用于将易于人类记忆的域名(如 www.example.com)转换为计算机用于网络通信的 IP 地址(如 192.168.1.1)
 
- dig 
dig google.com:查询DNS记录。
 
