dhclient 和 dhclient3 之间有什么区别?

dhclient 和 dhclient3 之间有什么区别?

好吧,我偶然发现了一个命令,通过在终端中发出以下命令来从命令行连接有线连接;“sudo dhclient3 eth0”。但还有一个名为“dhclient”的命令。它们是一样的吗?我可以发出与“sudo dhclient eth0”相同的命令吗?有人可以为新手澄清这个问题吗?

答案1

它们确实是同一个:

~$ ls -lah /sbin | grep dhclient
lrwxrwxrwx  1 root root      9 2010-12-30 14:38 dhclient -> dhclient3
-rwxr-xr-x  1 root root   402K 2010-08-07 04:49 dhclient3

箭头表示的dhclient符号链接指向dhclient3。我们可以使用

test -h /sbin/dhclient
echo $?

以确保它是;它将返回0,意思是“是”。

有时这样做是为了保持与采用旧命令的旧程序和脚本的向后兼容性。

如果您正在编写使用其中任何一个的程序,则应该使用dhclient3,并相应地管理您的依赖项。


在中ls -lah,参数意味着ong 列表格式,All 文件,以及H人类可读的文件大小。此外,test与符号链接无关,它是测试语句真实性的通用实用程序,该参数-h使其对文件进行操作,如果文件存在并且是符号链接,则返回 True (0)。

为了找出文件的位置,我使用了以下type实用程序:

type dhclient
dhclient is hashed (/sbin/dhclient)

如果你发现任何两个没有符号链接的文件,并且你怀疑它们仍然相同,则可以使用哈希函数查看它们是否相同:

stefano@lenovo:~$ md5sum /sbin/dhclient && md5sum /sbin/dhclient3
fc2491e5c1576783bdc4aa8c5817166e  /sbin/dhclient
fc2491e5c1576783bdc4aa8c5817166e  /sbin/dhclient3

相关内容