常用linux 脚本
1. 查看进程内存占用总和: ps aux | awk '{mem+=$6} END {print mem/1024/1024}'
2. 查看磁盘压力:iostat -d -x 1
3. 查看网络流量:sar -n DEV 3 10 注:3是打印间隔时间 10是总的次数。 IFACE网卡名称,rxpck/s每秒收到的网络包,txpck/s每秒发送的网络包,rxkB/s 每秒收到的数据大小,rxcmp/s每秒收到的压缩包。rxmcst/s ?
4. 找出哪些进程使用了swap:
for i in `cd /proc;ls |grep "^[0-9]"|awk ' $0 >100'` ;do awk '/Swap:/{a=a+$2}END{print '"$i"',a/1024"M"}' /proc/$i/smaps ;done 2>&1 |sort -k2nr |head
5. 磁盘性能压测:
5.1 写测试:
time dd if=/dev/zero of=test.file bs=1G count=2 oflag=direct
- /dev/zero 伪设备,会产生空字符流,对它不会产生 IO 。
- if 参数用来指定 dd 命令读取的文件。
- of 参数用来指定 dd 命令写入的文件。
- bs 参数代表每次写入的块的大小。
- count 参数用来指定写入的块的个数。
- offlag=direc 参数测试 IO 时必须指定,代表直接写如磁盘,不使用 cache 。
5.2 读测试:
dd if=test.file of=/dev/null iflag=direct
6. 域名解析配置:/etc/resolv.conf
# Generated by NetworkManager nameserver 192.168.2.2
7.查看网卡信息:
cat /etc/sysconfig/network-scripts/ifcfg-ens160
8.查看Linux版本:
cat /etc/redhat-release
9. 查看内核信息
uname -a
10. 查看文件类型,比如是文件,还是磁盘
ls -l /dev/sda
11. 清除缓存(cache/buffer)
echo 3 > /proc/sys/vm/drop_caches
12. 查看进程的缓存使用情况 hcache (https://github.com/silenceshell/hcache)
查看使用Cache最多的3个进程。
hcache -top 3
默认情况下会显示cache文件的全路径,会比较长。可以使用--bname选项来仅显示文件名。
hcache --top 3 --bname
查看指定进程的Cache使用情况。
./hcache -pid <pid> -bname
13. 查看文件的进程号
lsof <file path>