Команда ifconfig не найдена


138

Я только что установил 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он устарел, не означает, что остальной мир должен прекратить его использовать.
Жиль

Ответы:


239

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 О, я бы не возражал, если бы вы добавили некоторые детали этой дискуссии (но пропустили некоторые детали, связанные с телом), я на самом деле никогда не использовал их сам. Кто-нибудь может даже подать отчет об ошибках, которые вы видите, тогда?
Фолькер Сигел

1
Как и в этом ответе , эквивалентная ifconfigкоманда ip addr.
кодер

1
Да - добавить опцию -s( -stats, -statistics):ip -s addr
Volker Siegel

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

29

(проверено) Минимальная установка CENTOS 7 по умолчанию не устанавливает net-tools.

(проверено) Команда 'ifconfig' станет доступной при установке пакета net-tools

-Как установить net-tools через yum для не очень знатоков Linux.

1) иметь привилегированную оболочку root или быть в списке 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.