Komenda ifconfig nie została znaleziona

137

Właśnie zainstalowałem CentOS7 jako maszynę wirtualną na moim komputerze Mac (osx10.9.3 + virtualbox). ifconfigNie znaleziono polecenia uruchamiania . Również uruchomienie sudo /sbin/ifconfigzwraca komendę nie znaleziono. Jestem rootem. Wyjście echo $PATHjest jak poniżej.

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

Czy moja ścieżka jest normalna? Jeśli nie, jak mogę to zmienić?

Ponadto nie mam jeszcze połączenia internetowego na maszynie wirtualnej, może to czynnik.

RobSeg
źródło
10
Spróbować sudo /sbin/ifconfig.
Ramesh,
4
Prawdopodobnie nie jest instalowany, ponieważ jest uważany za przestarzały: jest zastępowany przez ip.
vinc17
6
Wypróbuj ippolecenie. ifconfig jest już przestarzałe
SHW
1
@Ramesh Nie ma potrzeby sudo: /sbin/ifconfigwystarczy, jeśli chcesz zobaczyć ustawienia. Potrzebujesz tylko, sudojeśli chcesz zmienić ustawienia (a wtedy sudo ifconfigwystarczy).
Gilles
1
@ SHW To, że autor tego ipnarzędzia zdecydował, że ifconfigzostało wycofane, nie oznacza, że ​​reszta świata musi przestać go używać.
Gilles

Odpowiedzi:

237

TL / DR: ifconfig jest teraz ip a.

Twoja ścieżka wygląda OK, ale nie zawiera /sbin, co może być zamierzone.

Prawdopodobnie szukałeś polecenia /sbin/ifconfig.

Jeśli ten plik nie istnieje (spróbuj ls /sbin/ifconfig), polecenie może po prostu nie zostać zainstalowane.

Jest to część pakietu net-tools, która nie jest instalowana domyślnie, ponieważ jest przestarzała i zastąpiona poleceniem ipz pakietu iproute2.

Funkcja ifconfigbez opcji zostaje zastąpiona przez ipokreślenie obiektu address .

ifconfig

jest równa

ip addr show

a ponieważ argument obiektu może być skrócony, a domyślna komenda to showtakże

ip a

Format wyjściowy jest nieco inny:

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

i

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

Zauważ, że dane wyjściowe są bardziej zwięzłe: nie pokazuje liczby pakietów obsługiwanych w normalny lub inny sposób.

W tym celu dodaj opcję -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

Ale tak naprawdę chcesz to zobaczyć:

$ 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

Wyświetla liczby z przyrostkami, takimi jak 26.1Mlub, 79.3ki koloruje niektóre odpowiednie terminy i adresy.

Och, czujesz, że polecenie jest za długie? Łatwo! To jest to samo:

ip -s -c -h a
Volker Siegel
źródło
8
+1 dla ip. net-toolszostał wycofany na korzyść iproute2.
HalosGhost
@Kiwy Och, nie miałbym nic przeciwko, gdybyś dodał jakieś szczegóły tej debaty (ale pomijając pewne szczegóły związane z ciałem), tak naprawdę nigdy tego nie użyłem. Ktoś mógłby nawet zgłosić raport o błędzie dotyczący problemów, które widzisz?
Volker Siegel
1
Podobnie jak w tej odpowiedzi , równoważne ifconfigpolecenie to ip addr.
koder
1
Tak - dodaj opcję -s( -stats, -statistics):ip -s addr
Volker Siegel,
1
Pomocne mogą być również nieaktualne polecenia sieciowe Linux i ich zamiany : dougvitale.wordpress.com/2011/12/21/…
Antonio Vinicius Menezes Medei
29

(zweryfikowane) Domyślna minimalna instalacja CENTOS 7 nie instaluje narzędzi sieciowych.

(zweryfikowane) Polecenie „ifconfig” stanie się dostępne podczas instalowania pakietu net-tools

-Jak instalować narzędzia sieciowe przez yum dla niezbyt ekspertów od Linuksa.

1) mieć powłokę uprawnień roota lub znajdować się na liście sudo.

2a) W wierszu polecenia root root (#)

yum install net-tools

2b) Konto użytkownika na liście sudo

sudo yum install net-tools

Jeśli pakiet jest zainstalowany, będzie to oznaczać i kończy yum. (To brzmi jak problem ze ścieżką). Jeśli nie zostanie zainstalowany, yum poprosi użytkownika o kontynuowanie po kilku sprawdzeniach pakietu lokalnego / sieciowego. Instalacja zajmie (powinna) chwilę… presto ifconfig jest teraz zainstalowany.

Jeśli czujesz się ryzykowny ... Odpowiednik użycia ifconfigw wyświetlaniu informacji o interfejsie / adresie za pomocą ip

ip addr 
jsd
źródło