Wyłącz kartę sieciową eth0 na Debianie

10

Dawno, dawno temu użyłem ifdown eth0 do wyłączenia karty sieciowej. Minęły lata, odkąd mogłem to uruchomić, w zasadzie od kiedy jestem na Ubuntu / Debian.

Rozumiem:

$ sudo ifdown eth0
ifdown: interface eth0 not configured

Jeśli uruchomię ifconfig, otrzymam:

eth0      Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx  
          inet addr:192.168.20.50  Bcast:192.168.21.255  Mask:255.255.254.0
          inet6 addr: fe80::6e3b:e5ff:fe36:2ee/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1205280 errors:0 dropped:502 overruns:0 frame:0
          TX packets:34930 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:165685286 (165.6 MB)  TX bytes:5754120 (5.7 MB)
          Interrupt:20 Memory:f7f00000-f7f20000 

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:16436  Metric:1
          RX packets:9146 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9146 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:734342 (734.3 KB)  TX bytes:734342 (734.3 KB)

Sprawdziłem w Google, jak to zrobić i wszystko, co mogę znaleźć, mówi „uruchom ifdown eth0”. Jak zatrzymać kartę sieciową na komputerach Debian / Ubuntu?

Thom
źródło

Odpowiedzi:

14

Ten sam problem dotyczy Debiana. Nie znam dokładnej przyczyny, jednak sudo ifconfig eth0 downdla mnie to działa .

Edycja: Podziękowania dla @kostix za jego adnotacje. Nie zajmowałem się problemem zbyt szczegółowo, ponieważ używam go do tymczasowego wyłączania interfejsu. Jeśli chcesz trwale go zniszczyć, ifdown jest najlepszym rozwiązaniem. Aby to zadziałało, musisz dodać linię eth0=eth0do /run/network/ifstateoraz linie auto eth0i iface eth0 inet dhcpdo /etc/network/interfaces.

Tim Zimmermann
źródło
To po prostu sprowadza adapter na warstwę fizyczną (tj. W zakresie stosu sieciowego jądra), i nie ma to nic wspólnego z warstwą użytkownika, która ma zarządzać adapterem. Zobacz moją odpowiedź - być może będziesz w stanie połączyć wysiłki z PO, aby dowiedzieć się, który podsystem zarządza twoją siecią.
kostix
OK, to zrobiło. Nie próbowałem tego wcześniej, ponieważ na Redhat ifdown uruchomił ifconfig, więc założyłem to samo dla Debiana. Głupi ja. Dzięki za to. WTF?
Thom
@Hom, problem polega na tym, że przy następnym uruchomieniu eth0najprawdopodobniej znów się uruchomi.
kostix
@Thom, co do WTF ... ;-) Jądro jest (prawie) takie samo we wszystkich dystrybucjach, ale narzędzia użytkownika nie są. Cóż, nmi wicd takie same we wszystkich dystrybucjach, ale „tradycyjne” rzeczy niskiego poziomu nie są.
kostix
@kostix W porządku. Chciałem tylko trochę wyłączyć na czas testowania. Ponieważ jest to VirtualBox, trudno jest odłączyć kabel sieciowy. :) Rozumiem też narzędzia, ale doktorzy Debiana mówią, aby używać ifdown. Właśnie dlatego WTF?
Thom
13

jeśli ifconfignie jest dostępny w twojej dystrybucji, oznacza to, że jest zastąpiony ippoleceniem. W takim przypadku rozwiązaniem byłobyip link set eth0 down

Nicolas Guérinet
źródło
2

Nie ma ostatecznej odpowiedzi, ponieważ może istnieć kilka sposobów zarządzania siecią w Debianie. Mam świadomość co najmniej trzech:

  • Podejście „tradycyjnych”, przy użyciu /sbin/ifup, /sbin/ifdowna /etc/init.d/networkingwszystko za pomocą /etc/network/interfacespliku konfiguracyjnego. Są one dostarczane przez ifupdownpakiet.

    Ponieważ ifdownnic nie wie o karcie, sądzę, że do zarządzania siecią używany jest inny sposób.

    Jestem również świadomość na temat pakietu, który jest beleived być rozwijane w zastępstwie ifupdown, netscriptale ponieważ wykorzystuje te same środki do zarządzania adapterów nie jest podobno także twoja sprawa.

  • NetworkManager
  • Wicd

Podobno musisz dowiedzieć się, który z nich jest natychmiastowy i zacząć od tego. Zarówno nmi wicd zwykle są konfigurowane przy użyciu narzędzi GUI (i zwykle za pomocą apletów rozpoczynających się wraz z DE). nmma narzędzie wiersza polecenia o nazwie nm-cli. Nie jestem pewien wicd.

Jeśli wykonałeś prostą instalację i wybrałeś zadanie „Pulpit”, to uważam (choć nie jestem pewien), że masz zainstalowany NetworkManager.

kostix
źródło
1

interfejs eth0 nieskonfigurowany

dosłownie oznacza

nie skonfigurowano w pliku / run / network / ifstate

polecenia ifupdown mają histerezę: po aktywowaniu interfejsu w ifup jest on zapisywany w /run/network/ifstateaktywowanej postaci.

ifup eth0
cat /run/network/ifstate
eth0=eth0
(+other interfaces)

ifdown eth0
cat /run/network/ifstate
(+other interfaces)

Stan zostanie zapisany, nawet jeśli operacja się nie powiedzie (głównie dlatego, że /etc/network/interfacesnie została poprawnie zapisana ). Do tej pory moim głównym rozwiązaniem było ręczne edytowanie, /run/network/ifstateaby działało tak, jak działa eth0, a następnie odrzucanie:

nano /run/network/ifstate
eth0=eth0

ifdown eth0

Następnie możesz zacząć od nowa z czystą konfiguracją.

koyaaniqatsi
źródło