linux比较好用的几个工具

1.nethogs介绍

  分享一个linux 下检测系统进程占用带宽情况的检查。来自github上的开源工具。

  它不依赖内核中的模块。当我们的服务器网络异常时,可以通过运行nethogs程序来检测是那个程序占用了大量带宽。节省了查找时间。

安装方法

1.在epel 源中可以直接yum 安装(推荐使用方式,和系统吻合)

yum install epel-release  -y 
yum install libpcap nethogs -y

2.源码方式安装

注意:http://sourceforge.net/projects/nethogs/files/nethogs/0.8/nethogs-0.8.0.tar.gz/download 这里下载的这个8.0 有BUG 

creating socket failed are you root,

yum install gcc-c++ libpcap-devel.x86_64 libpcap.x86_64 ncurses*
git clone https://github.com/raboof/nethogs
Initialized empty Git repository in /root/nethogs/.git/
remote: Counting objects: 1193, done.
remote: Total 1193 (delta 0), reused 0 (delta 0), pack-reused 1193
Receiving objects: 100% (1193/1193), 1.22 MiB | 29 KiB/s, done.
Resolving deltas: 100% (789/789), done.
cd nethogs/
make
make install

完成上面步骤就算安装完成了。如果编译失败的话,大部分是缺少编译环境。

使用方法

直接运行nethogs 就可以查看当前占用带宽的进程

我们检测 eth0,运行一下命令

 nethogs eth0

 图中第一行就是测试中的流量记录,表示192.168.40.250这台客户端去访问我的80 端口所占用的带宽。

在PID 那一列,可以使用 lsof -p  pid 查看进程测试。

或者用lsof -i :端口号,来查看是哪些进程在占用。如查看80端口  lsof -i :80

2. 硬盘读取性能测试 - IOZone

IOZone 是一款 Linux 文件系统性能测试工具 可以测试不同的操作系统中文件系统的读写性能。
可以测试 Read, write, re-read,re-write, read backwards, read strided, fread, fwrite, random read, pread,mmap, aio_read, aio_write
等等不同的模式下的硬盘的性能
测试的时候请注意,设置的测试文件的大小一定要大过你的内存(最佳为内存的两倍大小),不然linux会给你的读写的内容进行缓存。会使数值非常不真实.
下载:http://www.iozone.org/src/current/
[root@localhost current]# tar xvf iozone3_487.tar
[root@localhost ~]# cd iozone3_487/src/current/
[root@localhost current]# make linux
[root@localhost current]# ./iozone -a -n 512m -g 16g -i 0 -i 1 -i 5 -f /mnt/iozone -Rb ./iozone.xls
iozone常用的几个参数.
-a 全面测试,比如块大小它会自动加
-i N 用来选择测试项, 比如Read/Write/Random 比较常用的是0 1 2,可以指定成-i 0 -i 1 -i2.这些别的详细内容请查man
0=write/rewrite
1=read/re-read
2=random-read/write
3=Read-backwards
4=Re-write-record
5=stride-read
6=fwrite/re-fwrite
7=fread/Re-fread
8=random mix
9=pwrite/Re-pwrite
10=pread/Re-pread
11=pwritev/Re-pwritev
12=preadv/Re-preadv
-r block size 指定一次写入/读出的块大小
-s file size 指定测试文件的大小
-f filename 指定测试文件的名字,完成后会自动删除(这个文件必须指定你要测试的那个硬盘中)
-F file1 file2... 指定多线程下测试的文件名
批量测试项:
-g -n 指定测试文件大小范围,最大测试文件为4G,可以这样写 -g 4G
-y -q 指定测试块的大小范围
输出:
下面是几个日志记录的参数.好象要输出成图象进行分析,需要指定-a的测试才能输出
-R 产生Excel到标准输出
-b 指定输出到指定文件上. 比如 -Rb ttt.xls
我的测试实例:
#./iozone -a -n 512m -g 4g -i 0 -i 1 -i 5 -f /mnt/iozone -Rb ./iozone.xls
注:进行全面测试.最小测试文件为512M直到测试到4G.测试read,write,和Strided Read.测试的地方在mnt下。生成Excel的文件.
./iozone -i 0 -i 1 -f /iozone.tmpfile -Rab /test-iozone.xls -g 8G -n 4G -C
结果分析:
使用这条测试命令测试NAS后,我对下边产生的Execl文件中的一段表进行下解释,很简单的:
Writer Report
4 8 16 32 64
32768 5300 8166 12726 16702 24441
65536 5456 8285 9630 16101 18679
131072 5539 6968 9453 13086 14136
262144 5088 7092 9634 11602 14776
524288 5427 9356 10502 13056 13865
1048576 6061 9625 11528 12632 13466
在Execl文件中的这段表,它说明了这个表单是关于write的测试结果,左侧一列是测试文件大小(Kbytes),
最上边一行是记录大小,中间数据是测试的传输速度。举例说明,比如表中的“5300”,意思是测试文件大小为
32M,以记录大小为4K来进行传输,它的传输速度为5300 Kbytes/s

3. 进程实时监控 - HTop

HTop 是一个 Linux 下的交互式的进程浏览器可以用来替换 Linux 下的 top 命令。

yum install htop -y

 

可以参考这篇文章

https://www.cnblogs.com/yqsun/p/5396363.html

4. 页面显示磁盘空间使用情况 - Agedu

yum -y install agedu  完成安装
使用说明
agedu -s / 对整个系统进行扫

-s  扫描指定目录
-w 以web页面形式
--address 指定ip地址和端口号
--auth  授权权限  none 表示无权限

eg agedu -s / -w --address 192.168.1.65:8099 --auth none
对所有目录进行分析 并将结果输出到web页面

 


另外 agedu 还有很多别的功能,比如说 include  exclude 去对文件选项进行分析。具体可以 man agedu 查看相关用法。

其他比较实用的工具查看下面链接

https://mp.weixin.qq.com/s/gyOfvUJu0AniGSX_4D20SA

 

转载于:https://www.cnblogs.com/centos-python/articles/10956536.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值