如何在Ubuntu中安装ping

描述

通常情况下,ping 命令会预安装在大多数 Linux 系统中。 但是也有一些例外情况,比如安装的是最小版本的 Ubuntu,或者是在 Docker 容器中运行 Ubuntu,这种情况下,ping 命令有可能会找不到,即如果尝试运行它,会看到 ping not found 的报错:

root@182b38f8w4c9:/# ping www.baidu.com
bash: ping: command not found

这就相当于在 arm 或者单片机中安装 jre,某些 jdk 模块会找不到一样。

不过这还不是最糟糕的事情。 找不到 ping 命令的话,那就安装好了,但是当你尝试安装 ping,又报出另外一个错误:Unable to locate package ping:

root@182b38f8w4c9:/# apt install ping
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package ping

这是怎么回事? Ubuntu 中不能使用 ping 吗? 很显然这是不可能的。 接下来我们来详细看一下。

在 Ubuntu 中安装 ping

之所以会出现上面的问题,是因为 ping 命令本身不是一个包(package),它只是 iputils 包的一部分。 所以当你尝试安装名为 ping 的包时,会报错找不到。

作为 iputils 的一部分,ping 命令的包名称为 iputils-ping,这才是我们需要安装的包。

首先,通过以 root 身份运行此命令来更新本地包缓存(如果不是root,请使用sudo):

apt update

然后再安装 iputils-ping 工具包:

apt install iputils-ping

单片机

现在,再次运行 ping 命令:

root@182b38f8w4c9:/# ping itsfoss.com
PING itsfoss.com (104.26.10.68) 56(84) bytes of data.
64 bytes from 104.26.10.68 (104.26.10.68): icmp_seq=1 ttl=56 time=25.1 ms
64 bytes from 104.26.10.68 (104.26.10.68): icmp_seq=2 ttl=56 time=49.6 ms
64 bytes from 104.26.10.68 (104.26.10.68): icmp_seq=3 ttl=56 time=34.8 ms
64 bytes from 104.26.10.68 (104.26.10.68): icmp_seq=4 ttl=56 time=38.9 ms
^C
--- itsfoss.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 25.125/37.095/49.590/8.773 ms

单片机

另外,如果你是在 Docker 容器中运行的,那么如上安装只是临时的,还应该在 Dockerfile 做相应修改以使配置永久生效。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分