# bloccare net.eth0 all'avvio [risolto]

## Gr3yFox

Fino ad un paio di giorni fa tutto era ok, e lo script di avvio net.eth0 non partiva mai all'avvio (siccome non è sempre collegato preferisco collegare manualmente con un client dhcp in seguito se mi serve). Da ieri, dopo un aggiornamento di massa (era da un po' che non lo facevo) ha iniziato a partirmi la ricerca di un ip per la scheda con dhcp all'avvio, come se net.eth0 fosse impostato, ma non lo è, come mi conferma l'output di "rc-update -s".

Quindi mi chiedo... cosa può essere a richiamare net.eth0 quando non dovrebbe esserlo? Thx

----------

## ThorOdino

RC_PLUG_SERVICES="!net.eth0"

in /etc/conf.d/rc

Almeno cosi io blocco l'ethernet e avvio solo eth1, wireless

----------

## Gr3yFox

Forse era quello... ora non posso provare che sto compilandomi dei nuovi software, più tardi provo. Ti ringrazio.

----------

## Cazzantonio

in alternativa puoi installare questo:

 *Quote:*   

> ale@heavensdoor ~ $ eix netplug
> 
> * sys-apps/netplug 
> 
>      Available versions:  1.2.9-r2 1.2.9-r3
> ...

 

Una volta emerso puoi tranquillamente aggiungere tutte le reti ethernet che vuoi al tuo runlevel. Gli initscript di gentoo supportano automaticamente questo simpatico programma e ti avvieranno la ethernet solo se trovano un cavo collegato.

puoi usare anche ifplug ma personalmente mi sono trovato meglio con netplug

----------

## Gr3yFox

Poi ho riavviato ed il problema è stato risolto, ma ora che me lo dici rimuovo quella opzione di configurazione da rc  ed emergo netplug.

Grazie a tutti e due  :Very Happy: 

----------

## .:chrome:.

 *Gr3yFox wrote:*   

> Poi ho riavviato ed il problema è stato risolto, ma ora che me lo dici rimuovo quella opzione di configurazione da rc  ed emergo netplug.
> 
> Grazie a tutti e due 

 

sì, peccato che netplug aggiri il problema ma non lo risolva.

tu volevi che la scheda di rete non fosse attivata all'avvio. così viene attivata comunque

adesso il caricamento dei moduli e l'attivazione dei dispositivi è passato da coldplug a udev, che ne integra le funzionalità.

dovresti dire al tuo udev di non attivare i dispositivi di rete aggiungendo una riga a /etc/udev/rules.d/05-udev-early.rules

----------

## Gr3yFox

cioè se metto netplug all'avvio mi tocca aspettare come al solito che vada in timeout la ricerca di un ip per la scheda perchè la tira su comunque?

----------

## .:chrome:.

 *Gr3yFox wrote:*   

> cioè se metto netplug all'avvio mi tocca aspettare come al solito che vada in timeout la ricerca di un ip per la scheda perchè la tira su comunque?

 

no. quell'operazione viene lasciata in background.

però la scheda di rete viene attivata comuqnue, ed è un dispositivo in più con relativo modulo (anzi, almeno due moduli) che vengono caricati inutilmente, se la scheda non ti serve

----------

## Gr3yFox

Ah, i moduli. Veramente ho messo su un kernel piuttosto monolitico, tutti i moduli che usa la scheda di rete sono built-in, quindi non so se a questo punto convenga davvero disabilitarne l'attivazione...

----------

## .:chrome:.

 *Gr3yFox wrote:*   

> Ah, i moduli. Veramente ho messo su un kernel piuttosto monolitico, tutti i moduli che usa la scheda di rete sono built-in, quindi non so se a questo punto convenga davvero disabilitarne l'attivazione...

 

vedi tu... nel caso di sistemi non sempre connessi alla rete, la cosa più corretta sarebe disattivare l'attivazione automatica da parte di udev e lanciare il servizio solo quando serve. comuqnue la scelta è tua

----------

## Gr3yFox

Sono scoppiato da tutti gli esami, preferisco non andare a cercare come scrivere le regole per udev, almeno per ora penso che possa restare così.

A proposito di netplug, non mi pare che abbia installato un'initscript... devo scriverlo io?

----------

## .:chrome:.

 *Gr3yFox wrote:*   

> A proposito di netplug, non mi pare che abbia installato un'initscript... devo scriverlo io?

 

no

----------

## Gr3yFox

stando alla doc dovrebbe esistere /etc/rc.d/init.d/netplugd ma non c'è

----------

## .:chrome:.

 *Gr3yFox wrote:*   

> stando alla doc dovrebbe esistere /etc/rc.d/init.d/netplugd ma non c'è

 

non serve initscript si integra con baselayout

----------

## Gr3yFox

ah ecco, non era mica chiaro leggendo il man  :Very Happy: 

grazie.

----------

## Gr3yFox

ok testato e funzionante, grazie a tutti per l'aiuto. metto il tag risolto.

----------

## Cazzantonio

 *Gr3yFox wrote:*   

> A proposito di netplug, non mi pare che abbia installato un'initscript... devo scriverlo io?

 

Come ti ho detto viene supportato automaticamente dagli script di init della rete.

Se vuoi disattivarlo per una determinata interfaccia devi mettere in /etc/conf.d/net qualcosa del tipo 

```
modules_eth0=( "!plug" )
```

 altrimenti niente... fa tutto da se.

Inoltre non devi aspettare proprio niente... l'interfaccia si attiva in background e se trova un cavo attaccato la tira su, altrimenti la ributta giù   :Wink: 

----------

## Gr3yFox

Per attivarlo solo su eth0 ho semplicemente sostituito eth* con eth0 nel suo file di configurazione in /etc.

Però ora è spuntato un piccolo problema... se  non ho cavi collegati ad eth0, e provo ad avviare apache2 mi dice che è schedulato per partire assieme a net.eth0...  :Sad: 

Come faccio a far partire apache anche quando non ho il cavo di rete connesso?

----------

## Cazzantonio

un problema= un thread

In ogni caso chiarisciti cosa vuoi... prima vuoi stoppare eth0 senza cavo, poi la vuoi far partire lo stesso... semplice, devi deciderti. Altrimenti modificati l'initscript di apache e rimuovi il "need net" dalla funzione "depend()" o spippola tra le configurazioni di apache... boh

----------

## Gr3yFox

si è vero scusa a prima vista mi sembrava che fosse un problema inerente a netplug, quindi pensavo andasse bene chiedere in questo thread, ma in effetti ora che me lo fai notare non c'azzecca un tubo.

chiedo scusa

----------

## Delian

Un altro workaround e' di utilizzare la funzione preup, evitando di avere programmi in giro solo per questa cosa e aggiungendo una funzione molto simpatica  :Smile: .

Per maggiori dettagli puoi provare a seguire questa guida che ho scritto sul mio blog:

http://delian.wordpress.com/2007/02/19/come-evitare-che-uninterfaccia-venga-avviata-al-boot/

----------

## drumpaul

Come da oggetto vorrei chiarimento a questa domanda, tenendo conto che l'obiettivo è quello, come da guida d'insallazione gentoo, di aver la possibilità di avviare un portatile senza l'attivazione dell'interfaccia di rete come dovrebbe essere in modalità 'standalone' o offline o quello che è...

ora come ora do il parametro softlevel=nonetwork alla direttiva di grub per avviare il kernel con nonetwork al posto di default ma non ho il risultato sperato.

Grazie per il supporto, ciao.Last edited by drumpaul on Tue Mar 20, 2007 8:22 am; edited 1 time in total

----------

## makaveli87

Non so se potrebbe essere dovuto a questo.. (do solo un'idea)

/etc/conf.d/rc

```

# Some people want a finer grain over hotplug/coldplug. RC_PLUG_SERVICES is a

# list of services that are matched in order, either allowing or not. By

# default we allow services through as RC_COLDPLUG/RC_HOTPLUG has to be yes

# anyway.

# Example - RC_PLUG_SERVICES="net.wlan !net.*"

# This allows net.wlan and any service not matching net.* to be plugged.

RC_PLUG_SERVICES="!net.eth0"

```

----------

## Scen

Quoto makaveli87, RC_PLUG_SERVICES è la soluzione al problema  :Cool: 

----------

## drumpaul

Perfetto, fa proprio quello che volevo con l'opzione che mi hai indicato.

Mi scuso per l'ignoranza ma non ho 'guardato' poche volte rc e sinceramente non avevo colto le possibilità offerte da questa opzione.

Grazie mille

----------

## djinnZ

Altrimenti guarda l'opzione fallback in net.example e l'eventualità di usare ifplugd

ed aggiungi risolto

@mods: il topic è il duplicato di un'altro paio se non erro.

----------

## lavish

Fatto il merge del thread aperto da drumpaul con questo

----------

