找不到 ifconfig 命令

Rob*_*Seg 183 networking centos command ifconfig

我刚刚在我的 mac (osx10.9.3 + virtualbox) 上安装了 CentOS7 作为虚拟机。运行ifconfig返回命令未找到。还运行sudo /sbin/ifconfig返回命令未找到。我是根。的输出 echo $PATH如下。

/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/robbert/.local/bin:/home/robbert/bin
Run Code Online (Sandbox Code Playgroud)

我的路径正常吗?如果没有,我该如何更改它?

另外,我还没有在虚拟机上连接互联网,也许这是一个因素。

Vol*_*gel 299

TL/DR: ifconfig现在是ip a。试试ip -s -c -h a

您的路径看起来不错,但不包括/sbin,这可能是有意的。

您可能正在寻找命令/sbin/ifconfig

如果此文件不存在(尝试ls /sbin/ifconfig),则可能只是未安装该命令。

它是 package 的一部分,net-tools默认情况下未安装,因为它弃用 并被ippackage 中的命令 取代iproute2

ifconfig没有选项的功能被ip指定对象 代替address

ifconfig
Run Code Online (Sandbox Code Playgroud)

相当于

ip addr show
Run Code Online (Sandbox Code Playgroud)

并且,因为object参数可以缩写并且命令默认为show,所以也为

ip a
Run Code Online (Sandbox Code Playgroud)

输出格式有些不同:

$ ifconfig
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:10553 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10553 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:9258474 (9.2 MB)  TX bytes:9258474 (9.2 MB)
[ ... ]
Run Code Online (Sandbox Code Playgroud)

$ ip address
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
[ ... ]
Run Code Online (Sandbox Code Playgroud)

请注意,输出更简洁:它不显示以正常或其他方式处理的数据包计数。

为此,添加选项-s( -stats, -statistics):

$ ip -s addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
    RX: bytes  packets  errors  dropped overrun mcast
    74423      703      0       0       0       0
    TX: bytes  packets  errors  dropped carrier collsns
    74423      703      0       0       0       0
Run Code Online (Sandbox Code Playgroud)

但你真正想看到的可能是这样的:

$ ip -stats -color -human addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
    RX: bytes  packets  errors  dropped overrun mcast
    74.3k      700      0       0       0       0
    TX: bytes  packets  errors  dropped carrier collsns
    74.3k      700      0       0       0       0
Run Code Online (Sandbox Code Playgroud)

它显示带有像26.1M或这样的后缀的计数,79.3k并为一些相关的术语和地址涂上颜色。

如果您觉得命令太长,请使用短选项:
这等效于:

ip -s -c -h a
Run Code Online (Sandbox Code Playgroud)

  • +1 为`ip`。`net-tools` 已被弃用,取而代之的是 `iproute2`。 (8认同)
  • 已弃用,因为是 ifconfig?他们不喜欢这个名字?(是的,我理解有关功能的要点,但这不是删除命令的好理由)为什么他们不保留命令以与服务器中的脚本兼容,例如创建别名?Linux 开始失去重点……,而且 linux 正在做更多的废话,systemd 如何在简单的类 Unix 服务器中有用?在为时已晚之前更好地迁移到freebsd?例如,今天几乎不可能在不以文本模式重新启动的情况下以简单的方式更改某些发行版的 ip! (3认同)

小智 39

(已验证) CENTOS 7 的默认最小安装不安装 net-tools。

(已验证)“ifconfig”命令将在安装包 net-tools 时可用

- 如何通过 yum 为非 Linux 专家安装 net-tools。

1) 拥有 root 权限 shell 或在 sudo 列表中。

2a) 在 root shell 提示符 (#)

yum install net-tools
Run Code Online (Sandbox Code Playgroud)

2b) sudo 列表中的用户帐户

sudo yum install net-tools
Run Code Online (Sandbox Code Playgroud)

如果安装了该软件包,它将说明并退出 yum。(然后听起来像是路径问题)。如果没有安装 yum 会在几次本地/网络包检查后提示用户继续。安装将(应该)花一点时间.. 现在已经安装了 ifconfig。

如果你喜欢冒险.. 相当于ifconfig在显示界面/地址信息中使用ip

ip addr 
Run Code Online (Sandbox Code Playgroud)