команда ifconfig не знайдена


137

Я щойно встановив CentOS7 як віртуальну машину на своєму mac (osx10.9.3 + virtualbox). Команда прискореного ifconfigповернення не знайдена. Також запущена sudo /sbin/ifconfigкоманда повернення не знайдена. Я корінь. Вихід echo $PATH, як показано нижче.

/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/robbert/.local/bin:/home/robbert/bin

Чи нормальний мій шлях? Якщо ні, то як я можу це змінити?

Крім того, у мене ще немає підключення до Інтернету на віртуальній машині, можливо, це є фактором.


10
Спробуйте sudo /sbin/ifconfig.
Рамеш

4
Він не встановлений за замовчуванням, ймовірно, тому, що він вважається застарілим: його замінюють на ip.
vinc17

6
Спробуйте ipкомандувати. ifconfig зараз застарілий
SHW

1
@Ramesh Не потрібно sudo: /sbin/ifconfigдостатньо, якщо ви хочете переглянути налаштування. Вам потрібно лише в тому sudoвипадку, якщо ви хочете змінити налаштування (і тоді sudo ifconfigцього достатньо).
Жиль

1
@SHW Тільки тому, що автор цього ipінструменту вирішив, що ifconfigзастарілий не означає, що решта світу повинна припинити його використовувати.
Жиль

Відповіді:


237

TL / DR: ifconfig зараз ip a.

Ваш шлях виглядає нормально, але не включає /sbin, що може бути призначене.

Ви, напевно, шукали команду /sbin/ifconfig.

Якщо цього файлу не існує (спробуйте ls /sbin/ifconfig), команда може бути просто не встановлена.

Це частина пакету net-tools, яка не встановлена ​​за замовчуванням, тому що вона застаріла і витісняється командою ipз пакета iproute2.

Функція ifconfigбез параметрів замінюється ipвказівкою об'єкта address .

ifconfig

еквівалентно

ip addr show

і, оскільки аргумент об'єкта може бути скорочений і командою за замовчуванням showтакож, до

ip a

Формат виходу дещо інший:

$ 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)
[ ... ]

і

$ 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
[ ... ]

Зауважте, вихід є більш короткочасним: він не показує кількість пакетів, якими обробляється звичайним чи іншим способом.

Для цього додайте параметр -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

Але те, що ви насправді хочете побачити, може бути таким:

$ 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

Він показує підрахунки із суфіксами на зразок 26.1Mабо 79.3kта кольорами деяких відповідних термінів та адрес.

О, ти відчуваєш, що команда занадто довга? Легко! Це те саме:

ip -s -c -h a

8
+1 для ip. net-toolsзастаріло на користь iproute2.
HalosGhost

@Kiwy О, я б не заперечував, якщо ви додасте деякі деталі цієї дискусії (але залиште деякі деталі, пов'язані з тілом), я насправді ніколи не використовував її. Хтось навіть міг подати звіт про помилку щодо проблем, які ви бачите?
Volker Siegel

1
Як і в цій відповіді , рівнозначна ifconfigкоманда є ip addr.
кодер

1
Так - додайте опцію -s( -stats, -statistics):ip -s addr
Volker Siegel

1
Також можуть бути корисними застарілі мережеві команди Linux та їх заміни : dougvitale.wordpress.com/2011/12/21/…
Антоніо Вініцій Менез Медей

29

(перевірено) За замовчуванням мінімальна установка CENTOS 7 не встановлює мережеві інструменти.

(перевірено) Команда 'ifconfig' стане доступною при встановленні пакетних мережевих інструментів

-Як встановити чисті інструменти через yum для не дуже знавців Linux.

1) мати оболонку привілею для кореня або бути у списку sudo.

2a) У запиті кореневої оболонки (#)

yum install net-tools

2b) Обліковий запис користувача у списку sudo

sudo yum install net-tools

Якщо пакет встановлений, він стане таким чином і вийде yum. (Тоді це звучить як питання про шлях). Якщо не встановлено, yum запропонує користувачеві продовжуватися після кількох перевірок локального / мережевого пакету. Інсталяція забирає, але зате мить .. presto ifconfig зараз встановлена.

Якщо ви відчуваєте пригоди .. Еквівалент використання ifconfigв відображенні інформації про інтерфейс / адресу за допомогою ip

ip addr 
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.