CentOS自带的ifstat和众所周知的ifstat

看视频学习linux时了解到,ifstat是一个用来监控网络IO的命令。

然后我试着使用了一下,结果打印出来是这样:

CentOS自带的ifstat和众所周知的ifstat

而视频里是这样:

CentOS自带的ifstat和众所周知的ifstat

我意识到我的ifstat和视频里的不是同一个,于是费尽千辛万苦找到了视频里的ifstat:主要是ifstat的官网打不开了,只能自己搜资源。

[root@CentOS opt]# tar -xzvf ifstat-1.1.tar.gz
[root@CentOS opt]# cd ifstat-1.1
[root@CentOS ifstat-1.1]# ./configure
[root@CentOS ifstat-1.1]# make
[root@CentOS ifstat-1.1]# make install

安装完成后,赶紧试了下:

CentOS自带的ifstat和众所周知的ifstat

????
还是这样,,难道是因为两个命令重名,后面的把前面的覆盖了??

[root@CentOS ~]# updatedb
[root@CentOS ~]# locate ifstat
/opt/ifstat-1.1.tar.gz
/usr/local/bin/ifstat
/usr/local/man/man1/ifstat.1
/usr/sbin/ifstat
/usr/share/man/man8/ifstat.8.gz
[root@CentOS ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/java/jdk1.8.0_291/bin:/usr/local/java/jdk1.8.0_291/jre/bin:/root/bin

由PATH可以看出先加载/usr/local/bin/ifstat,后加载/usr/sbin/ifstat。又试了下:

CentOS自带的ifstat和众所周知的ifstat

果然,就是/usr/sbin/ifstat/usr/local/bin/ifstat给覆盖了,导致/usr/local/bin/ifstat被雪藏。我要覆盖回去!

又回头看了一遍PATH,注意到最后有个/root/bin,那我就在/root/bin再放一份/usr/local/bin/ifstat就行了:

  1. /usr/local/bin/ifstat移动过来
  2. 复制一份
  3. 软连接

好像软连接好点。

[root@CentOS ~]# cd bin
[root@CentOS bin]# ln -s /usr/local/bin/ifstat ifstat
[root@CentOS bin]# reboot

一气呵成,打完收工!

重启之后测试:

CentOS自带的ifstat和众所周知的ifstat

完美!