CentOS nessuna interfaccia di rete dopo l'installazione in VirtualBox


53

Ho Ubuntu 12.10 su cui ho installato la scatola virtuale su cui ho installato Centos 6.4 i386. Su Ubuntu ho: kernel 3.5.0-17-generico in esecuzione.

Sulla scatola virtuale installo Centos 6.4 e tutto funziona bene, tuttavia quando avvio nella macchina VM, c'è solo l'interfaccia di loopback. Nient'altro. Ho provato ad aggiungere manualmente il file ifcfg-eth0 ma non succede nulla. Sulle impostazioni della VM ho aggiunto interfacce NAT e HostOnly ma ogni volta che avvio in Centos c'è solo l'interfaccia lo. Cosa dovrei fare?

Risposte:


53

È necessario abilitare la rete durante l'installazione. Puoi farlo anche dopo l'installazione. Questo è un cambiamento nell'installazione di CentOS nelle versioni 6.x che butta via molte persone, incluso me stesso.

A partire da CentOS 6.x puoi scegliere di NetworkManagergestire le tue impostazioni di rete o comunque farlo alla vecchia maniera e configurarle manualmente usando /etc/sysconfig/network-scripts/ifcfg-eth0tipi di file. Dato che si tratta di una macchina virtuale che consiglierei di usare NetworkManager.

Per richiamare lo strumento dell'editor di connessione, procedi come segue:

$ nm-connection-editor

Ti verrà presentata una GUI come questa:

                         ss di conn.  editore

Da questa GUI dovrai modificare la configurazione di eth0 in questo modo:

                         ss di nm # 1

                         ss di nm # 2

                         ss di nm # 3

Senza una GUI

Se stai tentando di farlo su un server senza testa, puoi modificare i seguenti file e riavviare per eth0abilitare il tuo dispositivo di rete e acquisire un indirizzo IP da un server DHCP. Modifica queste 2 opzioni nel file /etc/sysconfig/network-scripts/ifcfg-eth0,:

ONBOOT="yes"
NM_CONTROLLED="no"

Riferimenti


5
Centos 6.4 "nm-connection-editor non trovato" ... nessuna GUI in esecuzione. Server senza testa. nessuna gioia. :(
Mojo,

1
I passaggi "Senza una GUI" hanno funzionato perfettamente, grazie mille!
Carattere jolly

2
I passaggi Senza una GUI mi hanno sconcertato un po 'fino a quando ho verificato le prossime risposte. In CentOS min, invece di eth0 c'è qualcos'altro, quindi aggiorna la tua risposta a ifcfg-XXXX. Inoltre, NM_CONTROLLED non è stato elencato e poiché gli altri non lo hanno specificato, non l'ho aggiunto, pertanto deve essere l'impostazione predefinita. La rete è attiva e funzionante ora. Se puoi anche aggiornare la risposta per reindirizzare i ragazzi "NO GUI", o posizionarla sopra la risposta della GUI, sarebbe fantastico, poiché sospetto che n / w sarebbe disabilitato solo su distro min, se disabilitato su distro normali, cioè discutibile perché confonderebbe molti rumori.
killjoy

@killjoy - quale versione di CentOS stai usando. Quello che ho mostrato sopra è stato come è stato nel 2013 quando l'ho scritto. Le cose potrebbero essere cambiate nelle versioni più recenti. Anche NM_CONTROLLED è come puoi farlo esplicitamente. Quindi perché l'ho mostrato.
slm

@slim - ultima versione 7 a partire dalla data del post, infatti alcuni altri hanno anche valori diversi. Sul mio computer virtuale di lavoro, è "-eno", quindi sì, suppongo che non sia un eth0 statico come prima.
killjoy,

18

Esegui il comando:

$ ip a

Questo mostrerà le interfacce. Devo /etc/sysconfig/network-scripts aprire il ifcfgfile corrispondente e impostare all'avvio su Sì. Riavvia il sistema e sei inattivo.

Per impostazione predefinita, questo è impostato su no in Centos 7


1
Importa se stai eseguendo una VM? Perché ho fatto tutto questo un sacco di volte, e ANCORA dice che la rete è irraggiungibile e non posso installare le aggiunte guest VirtualBox senza la rete, perché CentOS non include bzip2 per qualche motivo ritardato.
MarcusJ,

1
Per espandere questo, è possibile creare un nuovo ifcfgfile e denominare l'interfaccia come desiderato con l' DEVICE=[name]opzione purché si includa il file HWADDR=[mac address].
Centimane,

Devi anche cambiare questa riga: NM_CONTROLLED = no
Rob Sedgwick,

cosa fai se non ci sono file ifcfg corrispondenti agli ip aspettacoli del dispositivo ?
maratona,

8

Quando si crea una nuova macchina virtuale (ovvero un sistema operativo guest) con VirtualBox, per impostazione predefinita la NIC diventa un Am79C973. Sebbene questa NIC possa essere supportata da molti sistemi operativi, questa particolare NIC non sembra essere supportata da CentOS 7. Ciò significa che l'unica NIC che verrà visualizzata nella nuova VM CentOS 7 sarà la NIC loopback. Quello che devi fare è cambiare la scheda NIC in una supportata come l'82543GC.

Innanzitutto, arrestare la VM CentOS se non lo si è già fatto, quindi modificare la scheda NIC utilizzando questo comando sull'host VirtualBox:

vboxmanage modifyvm "testvm" --nictype1 82543GC

Ora riavvia la VM CentOS e noterai che ora ha una scheda di rete.

Spero che questo aiuti.


Non sto usando Vbox. Sto solo eseguendo centos come dual-boot ma ho lo stesso problema di op
samayo

Stavo avendo lo stesso problema di OP, questo mi ha risolto. (VirtualBox + CentOS 7)
hoosierEE,

6

dai un'occhiata ai file di configurazione NIC /etc/sysconfig/networking/devices/ifcfg-ethXe controlla se il parametro ONBOOTesiste. In caso contrario, aggiungilo.

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

Il riavvio o /etc/init.d/network restartdopo la modifica dovrebbe far apparire l'interfaccia.


Un abbondante +1 per l'utilizzo di grep per scoprire dove hanno effettuato la configurazione questa settimana! (BTW stesso problema su Centos6 e la correzione funzionava ancora)
gbarry

5

In centos 7, il nome dell'interfaccia di rete è enp0s3, per far funzionare la rete, è necessario modificare i file corrispondenti mediante:

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

E impostare l' ONBOOTayes

ONBOOT=yes

Woa woa woa, questa è una semplificazione eccessiva della denominazione dell'interfaccia di CentOS 7. Vedere: cgit.freedesktop.org/systemd/systemd/tree/src/udev/… come riferimento. È probabile che l'interfaccia sia più probabilmente un'interfaccia di p#p###formato, ma in entrambi i casi è meglio determinare il nome effettivo piuttosto che indovinarlo.
Centimane,

Inoltre, il richiedente utilizza CentOS 6.4, quindi la denominazione dell'interfaccia di CentOS 7 non è rilevante. La denominazione dell'interfaccia è cambiata drasticamente in 7.
Centimane,

1
Ha funzionato per me. Grazie. Sono su RHEL gratuito. Per conoscere il nome dell'interfaccia eseguire pifconfig. Sì, RHEL non è stato fornito con ifconfig. Anche a sbin. Ubuntu è migliore in questo senso.
NotAgain dice che ripristina Monica il

@Centimane Ehi, grazie per avermi fatto sapere che ho semplificato troppo. Ma per me è un lavoro, e non sono sicuro che sia una cattiva pratica. Ti dispiacerebbe condividere il modo corretto per ottenere l'interfaccia corretta per centos? In modo che sarebbe "Bulletproff" per la futura versione di Centos.
Yana Agun Siswanto,

1
I nomi dell'interfaccia si basano sull'hardware, quindi il nome dell'interfaccia si basa sul tipo di scheda NIC in uso e su come l'hardware viene segnalato a RHEL. In base al largo il tuo nome di interfaccia RHEL pensa la scheda di rete è un em beded dispositivo, p ort 0 s sacco 3 . Ma hardware diverso utilizzerà un nome NIC diverso.
Centimane,

4

Correre dhclient –vcome root ha risolto il problema per me.

Ho ottenuto questa soluzione da questo articolo .


1

Penso che sia probabilmente l'impostazione di rete che la getta. Ho scoperto che il mio funziona meglio con "Bridged Adapter", poiché utilizzi direttamente la scheda di rete dell'host. Consentirà inoltre al computer virtuale di utilizzare DHCP per ottenere il proprio IP interno dal router.

NAT è un po 'strano, dato che usi solo un indirizzo IP (lo stesso dell'host?) E invece inoltri sulla traduzione delle porte, quindi non è realmente un IP separato per il computer virtuale. HostOnly Penso che consenta solo al computer virtuale di creare una "rete locale" con il tuo host, ad es. nessuna Internet esterna. E questo ti lascia praticamente solo con il dispositivo loop-back.


0

Questo mi sembra un problema /etc/udev/rules.d/70-persistent-net.rules. A meno che questo file non venga cancellato, la modifica di ifcfg-ethX non sarà di aiuto poiché le impostazioni precedenti che hai avuto persisteranno. Eliminare il file, quindi utilizzare "udevadm trigger" per ricrearlo.


Non vedo come questo si riferisce a un dispositivo non presente.
thrig

0

Questo vale in particolare per VMBox dove hai installato un nuovo clone (il mio era CentOS) e non vedi un indirizzo IP:

  1. Ferma la VM. Vai su Impostazioni-> Rete-> Avanzate. Quindi ripristinare l'indirizzo MAC facendo clic sull'icona blu a destra. Nota il nuovo indirizzo MAC da qualche parte.
  2. Avvia la VM. Vai su Sistema-> Preferenze-> Connessioni di rete. Modificare la connessione eth0 -> Indirizzo MAC del dispositivo con un nuovo indirizzo MAC dal passaggio 1 aggiungendo ":" tra due caratteri. ad es. da 08012741798D a 08: 01: 27: 41: 79: 8D e salva
  3. Riavvia, quindi accedi come root: cd / var / lib / NetworkManager
  4. rimuovere o spostare NetworkManager.state in un'altra cartella, ad es. mv NetworkManager.state NetworkManager.state.save
  5. run: service NetworkManager stop
  6. run: service NetworkManager start
  7. Per visualizzare il nuovo indirizzo IP eseguito: ifconfig -a

0
  1. sudo dhclientFatto. Nessun riavvio richiesto.

  2. Se si desidera che il client DHCP venga avviato automaticamente all'avvio: sudo vi /etc/sysconfig/network-scripts/ifcfg-enp0s3 passare ONBOOT=noa ONBOOT=yes.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.