Linux就业技术指导(五):Linux运维核心管理命令详解 (20)

以下是数据传输过程:

22:38:18.564654 IP 192.168.0.114.52367 > 192.168.0.233.http: Flags [P.], seq 1:169, ack 1, win 229, options [nop,nop,TS val 4294710557 ecr 15157720], length 168 #Client端发请求包,包长度是168字节。[P]=[push](传送数据标志) 22:38:18.564658 IP 192.168.0.233.http > 192.168.0.114.52367: Flags [.], ack 169, win 243, options [nop,nop,TS val 15157720 ecr 4294710557], length 0 #Server端回应Client端表示收到请求,并确认已经收到了之前的168字节 22:38:18.564707 IP 192.168.0.233.http > 192.168.0.114.52367: Flags [P.], seq 1:237, ack 169, win 243, options [nop,nop,TS val 15157720 ecr 4294710557], length 236 #Server回包,包长度236字节 22:38:18.564755 IP 192.168.0.233.http > 192.168.0.114.52367: Flags [P.], seq 237:258, ack 169, win 243, options [nop,nop,TS val 15157720 ecr 4294710557], length 21 22:38:18.564773 IP 192.168.0.114.52367 > 192.168.0.233.http: Flags [.], ack 237, win 245, options [nop,nop,TS val 4294710557 ecr 15157720], length 0 22:38:18.564818 IP 192.168.0.114.52367 > 192.168.0.233.http: Flags [.], ack 258, win 245, options [nop,nop,TS val 4294710557 ecr 15157720], length 0

以下是4次挥手过程:

22:38:18.564946 IP 192.168.0.114.52367 > 192.168.0.233.http: Flags [F.], seq 169, ack 258, win 245, options [nop,nop,TS val 4294710557 ecr 15157720], length 0 #Client端发送关闭连接请求,F=FIN(断开连接标志) 22:38:18.564956 IP 192.168.0.233.http > 192.168.0.114.52367: Flags [F.], seq 258, ack 170, win 243, options [nop,nop,TS val 15157720 ecr 4294710557], length 0 #Server端回应并确认了Client端的断开连接请求,并且也发送了FIN标志关闭。(只有当服务器传输未完成时,此处才会出现两次挥手,如果Clinet发起断开请求时,服务器已经传输数据完成,则此处服务端会直接回应关闭标志FIN) 22:38:18.565022 IP 192.168.0.114.52367 > 192.168.0.233.http: Flags [.], ack 259, win 245, options [nop,nop,TS val 4294710557 ecr 15157720], length 0 #Clinet端响应ack,关闭连接的四次挥手完成

提示:
tcpdump是一个非常强大并且好用的命令,请同学们多花精力来掌握,当然,要想掌握好,还需要一定的网络知识才行

三,Linux核心系统管理命令 3.1 lsof:查看进程打开的文件 3.1.1 命令详解

功能说明:

lsof全名为list open files,也就是列举系统中已经被打开的文件,通过lsof命令,就可以根据文件找到对应的进程信息,也可以根据进程信息找到进程打开的文件

选项说明:

参数选项 解释说明
-c <进程名>   显示指定的进程名所打开的文件  
-p <进程号>   显示指定的进程号所打开的文件  
-i   通过监听指定的协议,端口和主机等信息,显示符合条件的进程信息  
-u   显示指定用户使用的文件  
-U   显示所有socket文件  
3.1.2 使用范例

(1)显示使用文件的进程

[root@Mr_chen ~]# lsof /var/log/messages #显示使用文件的进程 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME rsyslogd 870 root 1w REG 253,0 501224 262654 /var/log/messages

如果想知道某个特定的文件是由哪个进程在使用,就可以通过“lsof 文件名”的方式来得到。从上面的输出可以得知,/var/log/messages文件是由rsyslogd进程在使用。
输出中每列的含义具体如下:

[x] COMMAND:命令,进程的名称。

[x] PID:进程号。

[x] USER:进程的所有者。

[x] FD:文件描述符,它又包含如下内容

0:表示标准输出。

1:表示标准输入。

2:表示标准错误。

u:表示该文件被打开并处于读取/写入模式

r:表示该文件被打开并处于只读模式

w:表示该文件被打开并处于写入模式

[x] TYPE:文件类型,REG(regular)为普通文件

[x] DEVICE:指定磁盘的名称。

[x] SIZE/OFF:文件的大小

[x] NODE:索引节点

[x] NAME:文件名称

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zygwxj.html