linux知识总结(一)

1. 100.0.0.16/28 对应网段的网关地址、广播地址、可分配IP地址范围

网络地址是 100.0.0.16
广播地址是 100.0.0.31
可分配地址范围是 100.0.0.17–100.0.0.30

2. 使用man手册学习tcpdump的使用

tcpdump是用于转存网络上的数据流。
语法格式如下:
tcpdump [option…] [expression]
常用选项    含义
-c  接收指定数量数据包后退出
-i  指定监听的网卡接口
-l  标准输出
-n  不将数字格式转换名字
几种关键字   类型
host,port   指定类型的关键字
src,dst,src or dst  确定传输方向的关键字
tcp,udp,arp,ip  指定协议的关键字
gateway,broadcast   其他关键字
支持的运算符  含义
and (&&)    与运算
or (||)     或运算
not (!)     非运算
>   大于
<   小于
=   等于
>>  右移
<<  左移
proto[x:y]  过滤从x字节开始的y字节数
示例  用途
tcpdump -i eth1     监视eth1接口
tcpdump host 210.27.48.1    截获所有210.27.48.1 的主机收到的和发出的所有的数据包
tcpdump -i eth0 src host webserver  截获主机webserver发送的所有数据
tcpdump -i eth0 dst host webserver  监视所有发送到主机webserver的数据包
tcpdump tcp port 23 and host 210.27.48.1    获取主机210.27.48.1接收或发出的telnet包
tcpdump tcp -i eth1 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap     
tcpdump -i eth1 ‘((tcp) and (port 80) and ((dst host 192.168.1.254) or (dst host 192.168.1.200)))’  抓取所有经过eth1,目的地址是192.168.1.254或192.168.1.200端口是80的TCP数
tcpdump -i eth1 ‘((icmp) and ((ether dst host 00:01:02:03:04:05)))’     抓取所有经过eth1,目标MAC地址是00:01:02:03:04:05的ICMP数据
tcpdump -i eth1 ‘((tcp) and ((dst net 192.168) and (not dst host 192.168.1.200)))’  抓取所有经过eth1,目的网络是192.168,但目的主机不是192.168.1.200的TCP数据
tcpdump -i eth1 ‘ip[0] & 0x0f > 5’  同tcpdump -i eth1 ‘ip[0] & 15 > 5’
tcpdump -i eth1 ‘((ip[6:2] > 0) and (not ip[6] = 64))’  匹配分片和最后分片
tcpdump -i eth1 ‘tcp[tcpflags] = tcp-syn’   只抓SYN包
tcpdump -i eth1 ‘((port 25) and (tcp[(tcp[12]>>2):4] = 0x4d41494c))’    抓取数据区开始为"MAIL"的包,"MAIL"的十六进制为0x4d41494c。其中>>是右移运算符

3. 详细叙述僵尸进程产生的原因以及危害

僵死进程产生的原因是:父子进程关系中,子进程退出后不会马上消失,而是留下了包含PID等信息的数据结构,然后向父进程发送SIGCHILD信号通知父进程处理,但是父进程由于某种原因并没有处理,导致子进程一直处于僵死状态。
僵死进程的危害:僵死进程不能使用kill命令来终止,因为僵死进程被认为是已经结束的进程。由于僵死进程占用了PID等系统资源,过多的僵死进程将导致系统没有PID可用,进而系统无法再产生新的子进程。
僵死进程的解决办法:杀掉产生僵死进程的父进程。如果僵死进程的父进程是init进程,那只有重启系统才能解决。此方法能解决僵死进程是由于父进程被杀掉后,它下面的子进程就变成了孤儿进程,最后被init进程接收。
关于僵死进程和孤儿进程:僵死进程是子进程生命终结后,父进程把它遗忘掉了,没有替他收尸,于是就成了僵死。孤儿进程是父进程老来得子还没有等到给子进程收尸,自己就挂了,于是就产生了孤儿进程。

4. 详细说明vmstat输出结果的含义

vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 0 608648 2208 311776 0 0 10 3 33 34 0 0 100 0 0```

procs部分 含义
r 可运行进程的个数,与核心数有关
b 处于不可中断睡眠进程的个数(被阻塞队列的长度)
memory部分(单位KB) 含义
swpd 交换内存的使用总量
free 空闲物理内存总量
buffer 用于buffer的内存总量
cache 用于cache的内存总量
swap部分 含义
si 从磁盘交换进内存的数据速率(KB/s)
so 从内存交换至磁盘的数据速率(KB/s)
io部分 含义
bi 从块设备读入到系统的数据速率
bo 保存数据到块设备的速率
system部分 含义
in 中断速率,包括时钟
cs context switch 进程切换速率
cpu部分 含义
us 用户进程消耗的CPU时间百分比
sy 内核进程消耗的CPU时间百分比
id 空闲时间百分比 ,Linux 2.5.41前,包括IO-wait time.
wa IO等待消耗的CPU时间百分比
st 虚拟机消耗的CPU时间百分比 ,2.6.11前此项是unknown

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值