linux为什么sudo命令执行变慢

环境

cqq@kali:~$ uname -a
Linux kali 4.16.0-kali2-amd64 #1 SMP Debian 4.16.16-2kali1 (2018-06-25) x86_64 GNU/Linux

情况

最近发现使用sudo命令的时候变得比平常慢了很多倍,然后网上搜原因,发现是修改了/etc/hosts的缘故(可能之前将这个文件里面的两行注释掉了)。于是抓包看看(由于这里是ssh连接到虚拟机的,所以需要过滤掉ssh协议的流量和22号端口的TCP流量)。原来是因为没有将本机的名字加到etc/hosts中,导致执行sudo命令的时候,会读/etc/sudoers文件,向DNS服务器发起了请求并等待响应,耽误了时间。
这里写图片描述
通过上面的动图可以看出仅仅使用sudo命令echo一下字符串,就可以这么费时间。
解决方式是将hostname命令的结果加到/etc/hosts127.0.0.1这一行。
这里写图片描述

附录

fedora 10使用sudo的时候卡住大概30s,而且无法通过Control+C终止。
https://bugzilla.redhat.com/show_bug.cgi?id=479464
我也搞不懂为什么一个只在本地环境操作的命令sudo需要依赖网络环境。

参考

https://www.jianshu.com/p/3344ee1b9ba0
https://superuser.com/questions/429790/sudo-command-trying-to-search-for-hostname

猜你喜欢

转载自blog.csdn.net/caiqiiqi/article/details/81069639