Linux进程管理
动态监控进程
动态监控进程就是可以在固定的时间间隔内更新正在运行的进程,这是它与ps
命令的不同,它可以动态查看进程状况。
top
注:
i代表idle,闲置
僵死进程就是进程已经停止运行,但是仍在占用内存。
下图中的us表示user,sy表示system,id表示idle
下图是进入top动态监控进程后交互的快捷键
操作 | 功能 |
---|---|
P | 按照CPU的使用率排序,默认 |
M | 按照内存的使用率排序 |
N | 按照PID排序 |
q | 退出top |
u,然后输入指定的用户名 | 查看指定用户所对应的进程 |
k,然后输入要结束的进程号 | 终止指定的进程 |
查看 cxf 用户下运行的进程
强制结束 PID为2358的进程
输入top
进入动态监控进程,按下k
,然后输入 2358,然后 再输入 9 即可强制删除进程。此时远程登录的cxf账户就会下线。
监控网络状态
查看系统网络状态
#按照一定顺序显示
netstat -an
#显示哪个进程在调用
netstat -p
查看sshd服务的网络状态
netstat -anp | grep sshd
注:
下图中有冒号的地址是IPV6地址,当有连续的0时就会用冒号表示0,如果是两个连续的冒号,则说明是缩写的连续的0值域。
IPV6的表示方法是冒号十六进制,用冒号可以使其地址更紧凑。(一个IPV6地址中只能出现一次双冒号表示连续的0值域)
下图是本地地址和外部地址的关系。
要想进程间通信,则就需要定位到进程的端口号。IP地址只能定位到该主机,主机中的应用进程需要通过端口号来标识
验证TCP协议
1、假设此时有root和cxf两个用户远程登录Linux系统,用netstat -anp | grep sshd
|查看sshd当前的网络状态。由下图可知,两个TCP连接状态均为ESTABLISHED
2、现在注销cxf用户,再次使用netstat -anp | grep sshd
命令查看sshd的网络状态,在root用户中再次查询时状态会变为time_wait,经过一定的时间后才会断开连接。这就是TCP协议的机制