linux user group brescia

immagine del castello

Archivio della mailing list

quiz del mese...

Maurizio Paolini paolini a dmf.bs.unicatt.it
Ven 14 Dic 2001 07:53:31 UTC
> Il 08:50, giovedì 13 dicembre 2001, hai scritto:
> > Giusto per ravvivare la mailing list, ecco un veloce quiz:
> >
> > Tizio deve amministrare un certo numero di macchine Linux, e decide che
> > ciascuna di queste esporta via NFS l'area "/home/export/" a tutte le
> > altre; le aree esportate vengono montate dalle altre macchine tramite
> > una entry in /etc/fstab.
> >
> > A questo punto Tizio deve decidere in quale posizione nella sequenza di
> > boot posizionare l'operazione di export, e ragiona come segue: "siccome
> > l'operazione di export non e' di fatto necessaria per il completamento
> > del boot della macchina, questa puo' essere fatta come ultima operazione",
> > e agisce di conseguenza.
> >
> > Solo dopo un paio di mesi si rende conto dell'errore commesso... quale?
> >
> > mp
>
> La lettura dell'fstab è stata precedente all'esportazione, tutte le macchine 
> hanno tentato e fallito il montaggio di qualcosa che non era ancora condiviso.

Beh, quasi... in realta' la macchina A (ad esempio) monta prima i files 
esportati dalle altre macchine, e poi esporta il proprio; quindi in effetti 
un "reboot" di A non da problemi.  E lo stesso avviene per le altre macchine.

Il problema si ha quando si spengono CONTEMPORANEAMENTE due o piu' macchine,
cosa che avviene tipicamente in occasione di una caduta dell'alimentazione
generale o quando viene il classico tecnico dell'ENEL a fare dei lavori :-(

Alla riaccensione A si blocca al mount nfs in attesa che B faccia l'export,
e viceversa B si blocca al mount in attesa che A faccia l'export... risultato
un bel Dead lock!

Purtroppo si tratta di esperienza vissuta, non e' un problema teorico!

All'epoca si trattava di due macchine SUN con solaris, ma il problema e'
lo stesso.  Pero' la SUN prevedeva una opzione in piu' per il mount di
filesystems al boot, che consisteva nel lasciare in background il tentativo
di mount nfs e quindi di proseguire con il resto del boot; in questo modo
si evitava il deadlock.  Questa opzione non mi pare sia stata implementata
in linux.

mp



Maggiori informazioni sulla lista Lug