CentOS bez interfejsu sieciowego po instalacji w VirtualBox


53

Mam Ubuntu 12.10, na którym zainstalowałem wirtualną skrzynkę, na której instaluję Centos 6.4 i386. Na Ubuntu mam: jądro 3.5.0-17-ogólne.

Na wirtualnym pudełku instaluję Centos 6.4 i wszystko działa dobrze, jednak kiedy uruchamiam się na maszynie VM, jest tylko interfejs sprzężenia zwrotnego. Nic więcej. Próbowałem ręcznie dodać plik ifcfg-eth0, ale nic się nie dzieje. W ustawieniach VM dodałem interfejsy NAT i HostOnly, ale za każdym razem, gdy uruchamiam Centos, pojawia się tylko interfejs lo. Co powinienem zrobić?

Odpowiedzi:


53

Musisz włączyć sieć podczas instalacji. Możesz to zrobić także po instalacji. Jest to zmiana w instalacji CentOS w wersjach 6.x, która odstrasza wiele osób, w tym mnie.

Począwszy od CentOS 6.x możesz albo NetworkManagerzarządzać ustawieniami sieci, albo nadal robić to po staremu i konfigurować je ręcznie, używając /etc/sysconfig/network-scripts/ifcfg-eth0typów plików. Biorąc pod uwagę, że jest to maszyna wirtualna, którą poleciłbym użyć NetworkManager.

Aby wywołać narzędzie edytora połączeń, wykonaj następujące czynności:

$ nm-connection-editor

Zostanie wyświetlony taki interfejs GUI:

                         ss of conn.  redaktor

Z tego GUI musisz edytować ustawienia eth0 w następujący sposób:

                         ss nm # 1

                         ss nm # 2

                         ss nm # 3

Bez GUI

Jeśli próbujesz to zrobić na serwerze bezgłowym, możesz edytować następujące pliki i ponownie uruchomić komputer, aby eth0włączyć urządzenie sieciowe i uzyskać adres IP z serwera DHCP. Zmień te 2 opcje w pliku /etc/sysconfig/network-scripts/ifcfg-eth0:

ONBOOT="yes"
NM_CONTROLLED="no"

Bibliografia


5
Centos 6.4 „Nie znaleziono edytora połączeń nm”… nie działa GUI. Serwer bezgłowy. brak przyjemności. :(
Mojo

1
Kroki „Bez GUI” działały idealnie, dziękuję bardzo!
Wildcard

2
Kroki „Bez GUI” trochę mnie wytrąciły, dopóki nie sprawdziłem kilku następnych odpowiedzi. W CentOS min zamiast eth0 jest to coś innego, więc proszę zaktualizuj swoją odpowiedź do ifcfg-XXXX. Ponadto NM_CONTROLLED nie został wymieniony, a ponieważ inni go nie podali, nie dodałem go, więc musi to być wartość domyślna. Sieć działa teraz. Jeśli możesz również zaktualizować odpowiedź, aby przekierować facetów „NO GUI”, lub umieść ją nad odpowiedzią GUI, byłoby świetnie, ponieważ podejrzewam, że n / w zostałoby wyłączone tylko na minimalnych dystrybucjach, jeśli jest wyłączone na normalnych dystrybucjach, to znaczy wątpliwe, ponieważ byłoby to kłopotliwe dla wielu noobów.
killjoy

@killjoy - jakiej wersji CentOS używasz. Powyżej pokazałem, jak było w 2013 roku, kiedy to napisałem. Rzeczy mogły się zmienić w nowszych wersjach. Również NM_CONTROLLED to sposób, w jaki możesz to jawnie zrobić. Dlatego to pokazałem.
slm

@slim - najnowsza wersja 7 na dzień postu, w rzeczywistości niektóre inne mają również inne wartości. W mojej pracy VM jest to „-eno”, więc tak, myślę, że nie jest to statyczny eth0 jak poprzednio.
killjoy

18

Uruchom polecenie:

$ ip a

Spowoduje to wyświetlenie interfejsów. Muszę /etc/sysconfig/network-scripts otworzyć odpowiedni ifcfgplik i ustawić podczas uruchamiania na tak. Uruchom ponownie system i nie działa.

Domyślnie jest to ustawione na no w Centos 7


1
Czy to ważne, czy pracujesz na maszynie wirtualnej? Ponieważ robiłem to wszystko kilka razy, a STILL mówi, że sieć jest nieosiągalna i nie mogę zainstalować dodatków gości VirtualBox bez sieci, ponieważ CentOS nie zawiera bzip2 z jakiegoś opóźnionego powodu.
MarcusJ

1
Aby rozwinąć tę kwestię, możesz utworzyć nowy ifcfgplik i nazwać interfejs dowolną DEVICE=[name]opcją, pod warunkiem, że podasz HWADDR=[mac address].
Centimane

Musisz także zmienić ten wiersz: NM_CONTROLLED = nie
Rob Sedgwick

co robisz, jeśli nie ma pliku ifcfg odpowiadającego urządzeniu ip a?
maraton

8

Kiedy tworzysz nową maszynę wirtualną (tj. System operacyjny gościa) za pomocą VirtualBox, domyślnie zmieni NIC na Am79C973. Chociaż ta karta sieciowa może być obsługiwana przez wiele systemów operacyjnych, wydaje się, że ta konkretna karta sieciowa nie jest obsługiwana przez CentOS 7. Oznacza to, że jedyną kartą sieciową, która pojawi się w nowej maszynie Wirtualnej CentOS 7, będzie karta sieciowa z pętlą zwrotną. To, co musisz zrobić, to zmienić kartę sieciową na taką, która jest obsługiwana, jak 82543GC.

Najpierw zatrzymaj maszynę wirtualną CentOS, jeśli jeszcze tego nie zrobiłeś, a następnie zmień kartę sieciową za pomocą tego polecenia na hoście VirtualBox:

vboxmanage modifyvm "testvm" --nictype1 82543GC

Teraz uruchom ponownie maszynę Wirtualną CentOS, a zauważysz, że ma ona teraz kartę sieciową.

Mam nadzieję, że to pomoże.


Nie używam vbox. Używam centos jako podwójnego rozruchu, ale mam ten sam problem. Op
samayo,

Miałem ten sam problem co OP, to dla mnie rozwiązało. (VirtualBox + CentOS 7)
hoosierEE

6

spójrz na pliki konfiguracyjne NIC /etc/sysconfig/networking/devices/ifcfg-ethXi sprawdź, czy parametr ONBOOTistnieje. Jeśli nie - dodaj.

grep "ONBOOT=yes" /etc/sysconfig/networking/devices/*
/etc/sysconfig/networking/devices/ifcfg-eth0:ONBOOT=yes
/etc/sysconfig/networking/devices/ifcfg-eth1:ONBOOT=yes

Uruchom ponownie lub /etc/init.d/network restartpo zmianie powinien wywołać interfejs.


Obfite +1 za użycie grepa, aby dowiedzieć się, gdzie umieścili konfigurację w tym tygodniu! (BTW ten sam problem na Centos6 i poprawka nadal działała)
gbarry

5

W Centos 7 nazwa interfejsu sieciowego brzmi: enp0s3aby sieć działała, musisz edytować odpowiednie pliki poprzez:

sudo vim /etc/sysconfig/network-scripts/ifcfg-emp0s3

I ustaw ONBOOTnayes

ONBOOT=yes

Woa woa woa, czyli rażące uproszczenie nazewnictwa interfejsu CentOS 7. Zobacz: cgit.freedesktop.org/systemd/systemd/tree/src/udev/... w celach informacyjnych. Możliwe, że interfejs jest bardziej p#p###interfejsem formatu, ale tak czy inaczej lepiej jest określić rzeczywistą nazwę niż ją odgadnąć.
Centimane

Pytający używa również CentOS 6.4, więc nazywanie interfejsu CentOS 7 nie jest istotne. Nazwa interfejsu zmieniła się drastycznie w 7.
Centimane

1
Pracował dla mnie. Dzięki. Jestem na darmowym RHEL. Aby poznać nazwę interfejsu uruchom pifconfig. Tak, RHEL nie został dostarczony z ifconfig. Nawet w sbin. Ubuntu jest pod tym względem lepszy.
NotAgain

@Centimane Hej, dziękuję za poinformowanie mnie, że upraszczam. Ale dla mnie to praca i nie jestem pewien, czy to zła praktyka. Czy mógłbyś udostępnić właściwy sposób uzyskania właściwego interfejsu dla centos? Tak więc będzie to „Bulletproff” dla przyszłej wersji Centos.
Yana Agun Siswanto

1
Nazwy interfejsów są oparte na sprzęcie, więc nazwa interfejsu jest oparta na typie używanej karty sieciowej i sposobie zgłaszania sprzętu do RHEL. Opierając się nazwy interfejsu RHEL myśli Twój NIC jest em urządzenie beded, p ort 0 s Wiele 3 . Ale inny sprzęt będzie używał innej nazwy karty sieciowej.
Centimane


1

Myślę, że to rzuca to ustawienie sieciowe. Moja praca najlepiej sprawdza się w przypadku „Bridged Adapter”, ponieważ wtedy bezpośrednio używasz karty sieciowej hosta. Umożliwi to również komputerowi wirtualnemu korzystanie z DHCP w celu uzyskania własnego wewnętrznego adresu IP z routera.

NAT jest nieco dziwny, ponieważ używasz tylko jednego adresu IP (takiego samego jak hosta?) I zamiast tego przekazujesz translację portów - tak naprawdę nie jest to osobny adres IP dla komputera wirtualnego. HostOnly Myślę, że pozwala tylko komputerowi wirtualnemu na utworzenie „sieci lokalnej” z twoim hostem - tj. brak zewnętrznego Internetu. I to w zasadzie pozostawia tylko urządzenie z pętlą zwrotną.


0

Wygląda mi to na problem /etc/udev/rules.d/70-persistent-net.rules. O ile ten plik nie zostanie usunięty, edycja ifcfg-ethX nie pomoże, ponieważ wszystkie poprzednie ustawienia zostaną zachowane. Usuń plik, a następnie użyj „wyzwalacza udevadm”, aby go ponownie utworzyć.


Nie rozumiem, w jaki sposób odnosi się to do braku urządzenia.
thrig

0

Dotyczy to szczególnie VMBox, w którym zainstalowałeś nowy klon (mój to CentOS) i nie widzisz adresu IP:

  1. Zatrzymaj maszynę wirtualną. Przejdź do Ustawienia-> Sieć-> Zaawansowane. Następnie zresetuj adres MAC, klikając niebieską ikonę po prawej stronie. Zanotuj gdzieś nowy adres MAC.
  2. Uruchom maszynę wirtualną. Przejdź do System-> Preferencje-> Połączenia sieciowe. Edytuj połączenie eth0 -> Adres MAC urządzenia z nowym adresem MAC z kroku 1, dodając „:” między dwoma znakami. np. 08012741798D do 08: 01: 27: 41: 79: 8D i zapisz
  3. Uruchom ponownie, a następnie zaloguj się jako root: cd / var / lib / NetworkManager
  4. usuń lub przenieś NetworkManager.state do innego folderu, np .: mv NetworkManager.state NetworkManager.state.save
  5. Uruchom: usługa Zatrzymaj NetworkManager
  6. uruchom: usługa start NetworkManager
  7. Aby zobaczyć nowy adres IP, uruchom: ifconfig -a

0
  1. sudo dhclientGotowy. Ponowne uruchomienie nie jest wymagane.

  2. Jeśli chcesz, aby klient dhcp uruchamiał się automatycznie podczas rozruchu: sudo vi /etc/sysconfig/network-scripts/ifcfg-enp0s3 zmień ONBOOT=nona ONBOOT=yes.


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.