为啥linux的MTR只能在root下运行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥linux的MTR只能在root下运行相关的知识,希望对你有一定的参考价值。

/usr/sbin/mtr,需要对系统有创建 RAW socket 权限。而非超级用户没有此权限,所以无法执行。

使其他用户可以使用 mtr,需要登陆 root 用户执行如下命令:

chmod 7755 /usr/sbin/mtr

使其他用户在执行 mtr 命令时临时拥有超级用户的权限。

参考技术A root用户仍然不能执行程序,那么只有1种可能 ---- 文件属性不是可执行的。
可以用以下命令,设置文件权限为可执行,然后再尝试一下。
方法1) chmod +x 文件名

方法2) chmod 755 文件名本回答被提问者采纳
参考技术B 普通用户也可以执行啊,只要root给普通用户分配权限,或者把普通用户加入到管理员组(有权执行的组).当然也可以使用sudo来执行.
像vlc,有些游戏,为了安全问题,默认都只能在普通用户下执行,root用户不能执行.但
是都可以通过修改来达到目的.
linux是很自由的系统,自由的意思就是没有限制,一切皆可修改.

Linux下 如何安装mtr以及使用进行网络分析

在linux中我们可以使用mtr,不仅可以用来跟踪路由,还可以测试丢包率、网络延迟。今天小七博客为大家分享的在linux系统中使用MTR来进行分析,它不自带在系统里,需要手动安装才可以,可以使用命令:yum install mtr -y进行安装,基本上几秒钟就可以完成。

使用帮助

root@xqblog.com:~$ mtr -h usage: mtr [-hvrwctglspniu46] [--help] [--version] [--report] [--report-wide] [--report-cycles=COUNT] [--curses] [--gtk] [--raw] [--split] [--no-dns] [--address interface] [--psize=bytes/-s bytes] [--interval=SECONDS] HOSTNAME [PACKETSIZE]

mtr -h 提供帮助命令

mtr -v 显示mtr的版本信息

mtr -r 已报告模式显示

mtr -c设置每秒发送数据包的数量

mtr -s 用来指定ping数据包的大小

mtr -n no-dns不对IP地址做域名解析

mtr -a 来设置发送数据包的IP地址 这个对一个主机由多个IP地址是有用的

mtr -i 使用这个参数来设置ICMP返回之间的要求默认是1秒

mtr -4 IPv4

mtr -6 IPv6

 

 

第一列:显示的是IP地址和本机域名;

第二列 Loss%:是显示的每个对应IP的丢包率;

第三列 snt:snt等于1,设置每秒发送数据包的数量,默认值是10 可以通过参数 -c来指定。

第四列 Last:显示的最近一次的返回时延。

第五列Avg:平均值,这个应该是发送ping包的平均时延。

第六列Best:最好或者说时延最短的时间。

第七列Wrst:最坏或者说时延最长的时间。

第八列StDev:标准偏差。

应用举例二:设置每秒发送数据包的数量30

[root@201708171245 ~]# mtr -r -c 30 www.xqblog.com

HOST: 201708171245 Loss% Snt Last Avg Best Wrst StDev

1. 10.128.100.1 0.0% 30 0.2 0.2 0.2 0.4 0.1

2. ??? 100.0 30 0.0 0.0 0.0 0.0 0.0

3. ??? 100.0 30 0.0 0.0 0.0 0.0 0.0

4. 210.48.137.61 0.0% 30 11.9 21.2 0.8 58.2 18.3

5. 59.43.249.9 0.0% 30 1.4 4.1 0.8 56.1 11.3

6. 59.43.248.109 0.0% 30 62.9 33.3 29.2 104.9 14.8

7. 59.43.246.189 33.3% 30 28.8 29.3 28.6 31.8 0.7

8. 59.43.246.197 0.0% 30 29.0 30.9 28.2 90.6 11.3

9. 59.43.18.18 3.3% 30 28.4 33.0 28.3 83.2 12.5

10. 59.43.80.82 3.3% 30 34.7 32.2 30.0 34.7 1.3

11. 202.97.34.58 6.7% 30 47.8 47.1 46.2 49.3 0.8

12. 221.238.7.74 60.0% 30 48.4 48.4 47.9 48.8 0.3

13. 221.239.47.218 10.0% 30 51.0 49.7 48.2 51.9 1.1

14. 123.150.32.50 0.0% 30 47.7 47.8 47.2 49.4 0.5

15. ??? 100.0 30 0.0 0.0 0.0 0.0 0.0

16. ??? 100.0 30 0.0 0.0 0.0 0.0 0.0

17. 123.206.69.145 6.7% 30 66.6 67.4 66.6 69.9 0.8

应用举例3:设置ping包大小为1024个字节

 


作者:文字吧吧
链接:https://www.jianshu.com/p/212260c3f653
来源:简书

 

以上是关于为啥linux的MTR只能在root下运行的主要内容,如果未能解决你的问题,请参考以下文章

Linux中为什只能在root用户下使用rsh.当在addusr创建的用户下使用rsh时出现Permission denied.

我是linux初学者,使用的版本是fedora,请问为啥我使用管理员账号登录依然显示无root权

Linux下使用mtr做路由图进行网络分析

为啥 heroku 在我的路由文件中运行此代码,而该代码只能在开发模式下运行?

linux查看网络丢包情况 mtr网络连通性判断工具

为啥 PyUSB / libusb 在 Linux 上需要 root (sudo) 权限?