Domanda:
Avvio lento: attesa Ethernet
NULL
2016-04-07 19:17:45 UTC
view on stackexchange narkive permalink

Sto usando Minibian (versione leggera di Raspbian) e se il Pi non è connesso a una rete aspetterà un minuto intero prima di terminare l'avvio.

Ho notato che se commentavo le righe 3 e 4 in / etc / network / interfaces il Pi si avviava in un normale lasso di tempo. Tuttavia, ho poi perso la capacità di SSH nel mio Pi. Quando voglio un avvio veloce, questo è l'aspetto del mio file / etc / network / interfaces :

  auto loiface lo inet loopback # auto eth0 # iface eth0 inet dhcp  

Quindi ora mi trovo in questa situazione imbarazzante in cui devo modificare questo file per alternare tra l'avvio veloce e la possibilità di utilizzare SSH con il mio Pi.

Qualcuno sa come posso risolvere questo problema, per soddisfare entrambe le condizioni?

Non ho capito; il tuo RPi sta aspettando la connessione ethernet?
Sì, dice qualcosa sull'effetto di, un processo di avvio è in esecuzione per LSB: in attesa di rete. Aspetterà 1 minuto e poi finirà l'avvio.
Sei risposte:
Evgeniy Chukanov
2016-09-02 00:54:51 UTC
view on stackexchange narkive permalink

Crea file (con sottodirectory)

  /etc/systemd/system/networking.service.d/reduce-timeout.conf  

con contenuto :

  [Service] TimeoutStartSec = 1  

Sul mio modello Pi B (con Minibian) questa soluzione ha risolto il problema.Pi boot time ridotto a 15 sec e la rete funziona.

Confermato rende enorme diff su rpi3 raspbian ultimo agosto 2017
Huczu
2016-04-07 19:27:09 UTC
view on stackexchange narkive permalink

Esegui sudo raspi-config e disabilita la quarta opzione: Attendi rete all'avvio .

Ho dimenticato di dire che l'ho fatto nella mia prima risoluzione dei problemi e non aiuta.
Ho guardato nello script ** raspi-config ** e quando selezioni Fast boot-no wait, viene rimosso il file: `/etc/systemd/system/dhcpcd.service.d`/wait.conf. Ho controllato e quel file non è sul mio sistema, quindi qualunque cosa raspi-config faccia per la rete non ha importanza perché il file che usa per aspettare è andato.
AnyDev
2018-07-24 08:32:09 UTC
view on stackexchange narkive permalink

Non ho avuto successo nell'applicare le molte altre buone soluzioni alla mia configurazione che implica avere un'interfaccia macvlan sopra eth0 . Installazione basata su 2018-06-27-raspbian-stretch- lite . Cosa funziona bene per me:

Disabilita il servizio dhcpcd .

  systemctl disable dhcpcd  

Riduci il timeout in /etc/dhcp/dhclient.conf.

  # Non tenere l'avvio per 60 secondi predefiniti, arrenditi più velocemente # ma non troppo veloce, guarda cosa funziona con il tuo servertimeout DHCP 10; # Riprova più velocemente # Questo è dopo la rinuncia iniziale e dhclient è andato in background e l'avvio è proceduto senza un lease # L'impostazione predefinita 5 minuti è troppo longretry 20; # Considera anche l'impostazione backoff-cutoff  

Quindi ora che attende all'avvio fino a 10 secondi, e se non c'è lease DHCP, dhclient va in background e l'avvio continua senza un lease.

Senza dhcpcd ho l'ulteriore vantaggio di essere arrestato / avviato / riavviato manualmente wlan0 cod e> senza dover dare la caccia a wpa_supplicant iniziato presumibilmente da dhcpcd e che si rifiutava di fermarsi con ifdown wlan0 . Nota: questo potrebbe significare che potresti non essere in grado di utilizzare rapsi-config per configurare il tuo wifi e devi scrivere config in / etc / network / interfaces , che è comunque preferito per me.

La soluzione altrimenti ordinata di Evgeniy Chukanov utilizzando /etc/systemd/system/networking.service.d/reduce-timeout.conf per ridurre il timeout fa sì che dhcpcd NON visualizzare la mia interfaccia macvlan SE viene raggiunto il timeout di lease su eth0 all'avvio.

Non che la mia configurazione macvlan sia importante per OP, ma è stata la ragione per trovare questa soluzione , quindi per completezza: In /etc/network/interfaces.d/macvlan1

  auto macvlan1iface macvlan1 inet indirizzo statico ..... netmask ..... collegamento ip pre-up aggiungi collegamento macvlan1 tipo eth0 collegamento ip post-down macvlan del macvlan1

Da allora ho scambiato eth0 e mavclan1 , e utilizzo IPv4 statico su eth0 e client DHCP su macvlan1 , che mi fa andare oltre anche usando dhcpcd , l'interfaccia viene creata, ma ancora non tenta di ottenere il lease dopo il timeout iniziale. Non mi sono preoccupato di indagare ulteriormente perché la mia soluzione senza dhcpcd funziona molto bene per me.

goldilocks
2016-04-07 20:30:52 UTC
view on stackexchange narkive permalink

Qualcuno sa come posso risolvere questo problema, per soddisfare entrambe le condizioni?

Forse, ma non in modo canonico ("pratica corretta") senza esaminare il sistema (Non ho mai usato Minibian) e apprendere di più su come si suppone funzioni la configurazione di rete su GNU / Linux in generale, perché non l'ho mai usata correttamente.

Tutte le mie macchine in stile Debian, incluso pis, hanno un / etc / network / interfaces che assomiglia alla tua versione commentata.

  auto loiface lo inet loopback  

Le distribuzioni non in "stile debian" non hanno affatto questo file, anche se avranno qualcosa di più o meno equivalente, che disabiliterò anche grossolanamente. Lo faccio perché l'intero sistema di configurazione automatica if-up / down a mia opinione causa più problemi di quanti ne risolva. Tuttavia, parte della mia prospettiva include il fatto che comprendo abbastanza bene il networking Linux a un livello inferiore, e che trovo lo scripting per questo genere di cose e / o l'aggiunta di qualcosa al sistema init io stesso abbastanza semplice . Ma questa è una prospettiva che ha richiesto alcuni anni per essere acquisita.

Il mio consiglio qui sarebbe di lasciare quel file così com'è (con tutto tranne le prime due righe commentate o rimosse ) e prova ad aggiungerlo a /etc/rc.local:

  (ip link set eth0 up dhclient -v eth0) &> /var/log/ethernet.log 

Innanzitutto assicurati che dhclient sia installato ( dhclient --version ) e, in caso contrario, installalo.

Controlla anche il sistema per ifplugd: ps -C ifplugd . Se è in uso, disabilitalo.

Ci sono alcuni svantaggi in questo:

  • Si presume che tu stia usando solo il pi su un cavo, ovvero, non vuoi che preferisca o riporti su Wi-Fi.

  • Se ti disconnetti, dovrai eseguire nuovamente quei comandi o riavviare.

Se non funziona, dai un'occhiata a /var/log/ethernet.log .

Grazie ... ma sono ancora curioso di sapere perché questo sarebbe un problema? ... Raspbian vero e proprio non ha questo problema. Ci sono altre informazioni che potrei fornire per scoprire che è la causa di questo?
Sta diventando un po 'alla pari con il tentativo di aiutare qualcuno a diagnosticare i problemi del motore per telefono - non necessariamente impossibile ma probabilmente non ne vale la pena. Chiedilo alla bocca del cavallo (cioè al creatore di Minibian), che probabilmente significherà email.
Vero .. speravo che qualcuno qui potesse usare Minibian e aver risolto questo problema.
Non abbiamo nemmeno un tag ma ne ho aggiunto uno ...
regisin
2018-03-10 01:02:07 UTC
view on stackexchange narkive permalink

Non ho ancora la reputazione di commentare la risposta accettata. Ma solo un rapido aggiornamento sulla risposta, per l'ultimo Raspbian Linux raspberrypi 4.9.59-v7 + # 1047 SMP Sun Oct 29 12:19:23 GMT 2017 armv7l GNU / Linux

Il file che vuoi modificare è:

  /etc/systemd/system/network-online.target.wants/networking.service  

Già esiste e dovresti modificare la sezione già menzionata nella risposta. Nel mio caso, da TimeoutStartSec = 5min a TimeoutStartSec = 1 ha funzionato.

Non è necessario utilizzare quel file. Il metodo nella risposta accettata è probabilmente una soluzione più "best practice" poiché non stai modificando una configurazione che potrebbe essere sostituita durante l'aggiornamento.
G3z
2018-02-11 07:52:05 UTC
view on stackexchange narkive permalink

Rimuovo l'ip statico da /boot/cmdline.txt e funziona.



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...