Risposte:
Ho deciso di seguire l'approccio CLI e Alt + Ctrl + F2, quindi SEI LIBERO di farlo mentre sei connesso alla GUI - Ok, scriverò i passaggi generali, quindi sentiti libero di usare qualunque approccio ti piaccia.
Modifica /etc/network/interfaces
:
sudo nano /etc/network/interfaces
Se stai digitando questo da LXTerminal mentre sei collegato alla GUI, allora:
gksudo leafpad /etc/network/interfaces
Rimuovi tutto ciò che è scritto lì e tieni questo:
auto lo
iface lo inet loopback
È una buona idea conservare una copia di backup del file "interfaces" per ogni evenienza, quindi assicurati di salvare un file "interfaces.bak" prima di fare qualsiasi cosa
Ctrl+ Ose si utilizza nano e Ctrl+ S(File> Salva) se si utilizza leafpad.
Ctrl+ Xse si utilizza nano e Ctrl+ Q(File> Esci) se si utilizza leafpad.
Reboot.
Fatto.
auto lo
; La seconda linea èiface lo inet loopback
network-manager
installato. Viene installato sulla versione desktop di Ubuntu, ma non sulla versione server. Se non hai network-manager
installato, e lo fai, allora nessuna delle tue interfacce funzionerà
In ogni situazione in cui mi sono imbattuto in questo è un problema in / etc / network / interfaces
Non dovresti rimuovere tutto come suggerito in un post precedente, ma piuttosto ispezionare i problemi comuni.
Nel mio caso stava definendo il parametro gateway per IPS Ethernet aggiuntivo. Devi solo definire il gateway per l'interfaccia primaria per ogni scheda.
Quello che intendo con questo è se il tuo file è simile al seguente:
auto eth0
iface eth0 inet static
address 10.0.0.5
netmask 255.255.255.0
network 10.0.0.0
gateway 10.0.0.1
auto eth0:0
iface eth0:0 inet static
address 10.0.0.6
netmask 255.255.255.0
network 10.0.0.0
#gateway 10.0.0.1
Il secondo parametro gateway farà bloccare Ubuntu per 60+ secondi durante l'avvio, è necessario solo definire il gateway per la prima sezione eth0, è necessario definire il gateway per eventuali altre schede nic, IE eth1, wlan0 ecc ma NON per IPS aggiuntivo assegnato allo stesso nic. La versione precedente di Ubuntu non ha avuto problemi con questo, ma a Ubuntu 12.04 non piace ... Sii gentile se potrebbe semplicemente ignorarlo.
Sono sicuro che ci sono altri "problemi" in questo file che possono causare questo, quindi dovresti ispezionare il file e assicurarti che non ci siano errori di battitura ecc.
Anche questo potrebbe aiutare: http://tech.pedersen-live.com/2012/05/disable-waiting-for-network-configuration-messages-on-ubuntu-boot/
Fondamentalmente si modifica questo /etc/init/failsafe.conf
file e si disabilitano (commentano) i sleep
comandi che mettono effettivamente in pausa il sistema. Oltre a svolgere il lavoro, almeno nel mio caso non si è verificato alcun errore nella configurazione della rete, quindi tutto è andato bene.
A proposito, la tua soluzione consente solo di configurare l'interfaccia di loopback, qualcosa che non potevo permettermi nella mia installazione (ho dovuto impostare manualmente le interfacce e i bridge).
failsafe.conf
sia eccessiva
La vera soluzione (!) A questo problema è il seguente comando:
sudo sed -i.old-`date +%Y%m%d-%H%M%S` '/^auto lo$/!s/^auto /allow-hotplug /' /etc/network/interfaces
In /etc/network/interfaces
questo cambia tutte le interfacce (tranne lo
) da auto
a allow-hotplug
. In questo modo l'avvio non è più in attesa che le interfacce vengano visualizzate per prime.
Avviso: dopo questa modifica, un'interfaccia connessa in modo permanente potrebbe rimanere inattiva dopo l'avvio fino a quando non
systemd
viene visualizzato un evento plug-in reale. Vedi le note di seguito.
Esempio prima (guarda auto eth0
):
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp
Esempio dopo (guarda allow-hotplug eth0
):
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
Appunti:
Se si montano condivisioni di rete /etc/fstab
, utilizzare auto
e non allow-hotplug
per l'interfaccia alle condivisioni di rete. Altrimenti potresti vedere accadere cose strane durante il processo di avvio, perché la rete deve essere disponibile prima dei montaggi di condivisione di rete. allow-hotplug
non garantisce questo.
Se le interfacce sono in auto
modalità, esprimi: "Queste interfacce sono cruciali per l'avvio, quindi dobbiamo aspettare che vengano visualizzate prima di iniziare." Quindi, se non si presentano, Ubuntu ritarda l'avvio con fail-safe, aspettando che appaiano fino a 120 secondi. E questa è la cosa giusta da fare.
Al contrario, le interfacce che sono impostate per allow-hotplug
dire a Ubuntu, che sono opzionali. Quindi non sono indispensabili per l'avvio.
Ubuntu registra quali interfacce sono disponibili al momento dell'installazione e presume che siano importanti per le operazioni successive. Questa è una scelta prudente, nel caso in cui l'interfaccia sia successivamente necessaria perché alcuni Servizi si legano ad essa, poiché tali servizi non si avviano se mancano l'interfaccia.
C'è anche un'impostazione del kernel che consente ai processi di collegarsi a IP inesistenti, quindi puoi sempre usarli allow-hotplug
se vuoi, senza danneggiare la stabilità del processo di avvio. Tuttavia, questa è una storia completamente diversa.
Note (aggiornamento 2018-01-04):
Al mio fianco, allow-auto
fa lo stesso auto
, quindi non aiuta (provato con br0
).
Dopo aver aggiornato uno dei miei sistemi su Debian Stretch e passare a SystemD, l'avvio è stato insopportabilmente ritardato in attesa che si aprisse l'interfaccia (permanentemente connessa all'esterno) br0
. Tuttavia, con allow-hotplug
l'interfaccia br0
rimasta bloccata dopo l'avvio . Forse questo è causato dal fatto che SystemD non riceve alcun evento plug reale o sintetico su tale interfaccia. Io non scavare più in profondità questo, come un oscuro crontab
ingresso @reboot /sbin/ifup br0
per root
esso fisso per me. (Funziona, ma probabilmente è qualcosa che meglio non dovrebbe essere raccomandato agli altri. Mi piacerebbe sapere se qualcuno ha qualche idea migliore.)
((Il testo finisce qui, il resto è per il tuo divertimento))
Ed ecco una storia della buonanotte, ispirata da questo:
Alcuni coltivatori si scatenarono. I loro raccolti si sono asciugati! Quindi hanno indagato sul perché non c'era abbastanza acqua nel canale di irrigazione. Nella distanza più vicina individuarono immediatamente il loro colpevole. La diga! La maledetta diga ha trattenuto tutta l'acqua!
Da questo momento in poi fu chiaro cosa fare. "Fai saltare la diga!" gridarono e iniziarono a raccogliere la loro dinamite. Quindi si diressero tutti verso la diga.
Il figlio piccolo di uno dei contadini chiese a suo padre cosa stesse succedendo. Disse a suo figlio: "Non c'è abbastanza acqua nel fossato, quindi facciamo esplodere la diga!" Quindi se ne andò immediatamente per seguire il branco.
"Ma", il piccolo ha cercato di gridare a suo padre, "Ma c'è una valvola! Basta aprire la valvola!" Purtroppo, la sua voce era troppo gentile, e le sue gambe erano troppo corte, quindi questo messaggio non ha raggiunto nessuno.
Il ragazzo si sedette e pianse. Mezz'ora dopo sentì il lontano "Boom" che distrusse la sua piaga preferita nella diga, dove si trovava anche la valvola.
Quello che è successo dopo?
Il Diluvio spazzò via tutti i raccolti preziosi. La banca portò via la fattoria del padre del ragazzo. Suo padre non era in grado di pagare per una buona scuola. Quindi il ragazzo si arruolò nell'esercito per ottenere un'istruzione superiore. Lì ha imparato tutto sulla fisica degli esplosivi e ora cerca di inventare una diga resistente agli scoppi.
Cosa c'entra questa storia con questa qui?
L'impostazione dell'interfaccia, che vive dentro /etc/network/interfaces
, viene fatta saltare con il sonno in fail-safe rimosso, e anche se qualcuno vede la valvola chiusa ( auto
), nessuno si accorge che potrebbe anche essere openend!
Aggiungi a #
nel /etc/init/failsafe.conf
file davanti a tutte le righe che contengono sleep <n>
. Ciò contribuirebbe ad avviare rapidamente.
Ciò porterebbe a un avvio più rapido e non risolverà alcun problema con il /etc/network/interfaces
file. Risolvere i problemi con il /etc/network/interfaces
file non è lo scopo del /etc/init/failsafe.conf
file.
Ci sono situazioni in cui si desidera che l'interfaccia di rete non funzioni (ad es. Avere un laptop che ha solo l'interfaccia eth0 (connessione cablata) inserita qualche volta). Non voglio aspettare altri 2 minuti perché il mio laptop si avvii perché non ho la connessione cablata inserita.
Ho avuto un problema simile. Eseguendo ifconfig -a
, ho determinato che gli unici dispositivi di rete sul mio computer erano p4p1
e lo
. Non c'era eth0
.
Così ho modificato /etc/network/interfaces
, sostituendo tutte le istanze di eth0
con p4p1
. I contenuti del file sono ora:
auto lo
iface lo inet loopback
auto p4p1
iface p4p1 inet dhcp
Dopo il riavvio, la rete funzionava bene.
Se è importante, stavo usando Ubuntu 12.04.5 Server edition.
auto p4p1
con allow-hotplug p4p1
e anche il tuo computer si avvierà rapidamente se Ethernet non funziona. Tuttavia, questo dipende dalla tua configurazione. Ad esempio, se si tratta di una workstation o un server con condivisioni di rete ( NFS
o Samba
) si desidera definitivamente attendere che la rete sia disponibile prima di continuare, quindi allow-hotplug
sarebbe una scelta sbagliata.
ifconfig -a
ho scoperto che le interfacce erano davvero eth4
e eth5
.
auto lo iface lo inet loopback
non funziona