Sophie

Sophie

distrib > Mandriva > 9.1 > i586 > by-pkgid > f1098342ec4a2b28475e34123ce17201 > files > 1374

howto-html-it-9.1-0.5mdk.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<TITLE>Automount mini-Howto</TITLE>


</HEAD>
<BODY>
<H1>Automount mini-Howto</H1>

<H2><CODE>don@sabotage.org</CODE></H2>v0.3, 22 ottobre 1998
<P><HR>
<EM>Questo file descrive il programma autofs, una utility che esegue il mount automaticamente. Viene descritto come configurare questa utility e come risolvere i problemi pi&ugrave; comuni.
Traduzione di Zaxa Zaxu &lt;bezzolone@yahoo.it></EM>
<HR>
<H2><A NAME="s1">1. Introduzione</A></H2>

<H2>1.1 Automount - come e perch&eacute;</H2>

<P>L'automount &egrave; il processo che permette il mount e l'unmount di alcuni filesystem in maniera automatica. Questa operazione viene eseguita da un demone. Se il filesystem si trova in stato unmounted e l'utente cerca di accedervi, viene automaticamente eseguito il mount.
Questo tipo di funzionalit&agrave; &egrave; utile in particolar modo in ambienti di
rete molto estesi, oppure quando si ha la necessit&agrave; di avere numerosi
mount incrociati anche tra poche macchine (specialmente se alcune non
sono sempre attive). Altri casi in cui &egrave; molto utile avere l'automount
sono:
<UL>
<LI>la presenza di unit&agrave; rimuovibili</LI>
<LI>la necessit&agrave; di avere il mount di filesystem dos in modalit&agrave; conversione ascii attivata e disattivata contemporaneamente.</LI>
</UL>
<H2>1.2 Tipi di automount</H2>

<P>Ci sono due diversi tipi di automounter in linux; <EM>AMD</EM> e <EM>autofs</EM>. AMD &egrave; il demone automount che funziona in maniera analoga al demone AMD del SunOS. &Egrave; implementato nello spazio utente e non fa parte del kernel. Non &egrave; necessario per il kernel avere la funzionalit&agrave; di automount integrata se viene eseguito il mount NFS utilizzando il demone AMD, in quanto il traffico diretto ai filesystem automontati vengono passati attraverso il sistema NFS.
Autofs &egrave; un sitema pi&ugrave; recente ed innovativo ed &egrave; assistito dal kernel. Questo significa che il codice del kernel che gestisce i filesystem conosce quali sono i punti di mount dei filesystem automontati. Il programma che esegue l'automount si rivolge al kernel per conoscerli. In questo mini-howto verr&agrave; descritta solo l'utility autofs.
<P>
<H2><A NAME="s2">2. Installazione</A></H2>

<P>L'utility autofs si basa su funzionalit&agrave; del kernel, perci&ograve; il kernel deve essere compilato abilitandone il supporto. Nelle versioni del kernel 2.0.xx questa opzione si presenta come sperimentale, anche se si &egrave; dimostrata sufficientemente stabile. Nelle versioni del kernel 2.1.xx (e 2.2.xx) non &egrave; pi&ugrave; sperimentale.
<P>
<P>Per il corretto funzionamento sono necessari anche il programma automount e i file di configurazione. Utilizzando la distribuzione RedHat (in cui il package RPM fa parte della installazione) non dovrebbero sorgere problemi. Il programma automount dovrebbe essere inizializzato da uno script rc che si trova in <CODE>/etc/rc.d/init.d</CODE>.
La corretta installazione del package RPM installa anche questo script, ma bisognerebbe assicurarsi che questo script venga eseguito al boot, creando un link in una delle directory rc?.d, utilizzando il pannello di controllo fornito con RedHat, oppure, se si utilizzano altre distribuzioni, utilizzando un qualunque altro metodo.
Non &egrave; comunque necessario comprendere a fondo quali operazioni esegue lo script di avvio. Se si sta leggendo questo howto, non dovrebbe comunque interessare.
<P>
<H2><A NAME="s3">3. Configurazione</A></H2>

<P>L'installazione del package RPM dovrebbe essere abbastanza agevole, ma ci sono alcuni particolari che &egrave; meglio controllare, soprattutto se non lo si &egrave; mai fatto prima.
<P>
<P>Ci sono due file in /etc, che si chiamano <CODE>auto.master</CODE> e <CODE>auto.misc</CODE>.
Il contenuto del mio auto.master &egrave; il seguente:
<PRE>
/auto   /etc/auto.misc  --timeout 60
</PRE>
<P>Il primo parametro non &egrave; il mount point, ma il percorso base del set di mount point.
Il secondo parametro indica dove trovare i mount point.
Il terzo parametro indica che i filesystem di cui si &egrave; eseguito l'automount possono cominciare a tentare l'unmount 60 secondi dopo l'utilizzo. Non viene ovviamente effettuato l'unmount se i filesystem sono in uso.
<P>Auto.misc &egrave; il "map file" predefinito. Possono essere definiti diversi "map file" in auto.master.
Questo &egrave; il contenuto del mio auto.misc:
<PRE>
kernel          -ro,soft,intr           ftp.kernel.org:/pub/linux
cd              -fstype=iso9660,ro      :/dev/cdrom
zip             -fstype=auto            :/dev/hdd4
floppy          -fstype=vfat            :/dev/fd0
</PRE>
<P>La prima colonna ("chiave") indica il mount point. In base all'esempio che stiamo considerando diventa /auto/kernel, /auto/cd, /auto/zip ecc.
La seconda colonna indica le opzioni di mount. Per l'elenco i opzioni leggere la pagina di manuale relativa a mount (man mount).
L'ultima colonna indica la provenienza del filesystem. La prima voce ("kernel") &egrave; un mount NFS. Il simbolo : sulle altre righe indica un device locale.
<P>
<H2><A NAME="s4">4. Aspettando l'unmount</A></H2>

<P>Qualche lettore avr&agrave; dato un'occhiata ai 60 secondi necessari per l'unmount automatico e avr&agrave; pensato: <EM>Forse &egrave; un po' troppo per attendere l'unmount di un dischetto... Forse &egrave; sufficiente eseguire un sync e tirar fuori il dischetto, cos&igrave; nessuno se ne accorge!</EM>
Vorrei suggerire <CODE>una strategia pi&ugrave; sicura</CODE>.
Innanzitutto &egrave; possibile modificare il timeout. Ma questo potrebbe non bastare, o diventare poco efficiente in termini di prestazioni. Un'altra possibilit&agrave; &egrave; quella di mandare il segnale <CODE>SIGUSR1</CODE> al processo automount (utilizzando kill). Ma prima che si inizi a creare bottoni sul desktop per eseguire unmount, &egrave; bene chiarire una serie di problemi che potrebbero insorgere.
<P>Il processo automount lanciato dall'utente root e accetta segnali solamente da root. Una delle ragioni che potrebbero spingere l'utente ad utilizzare automunt &egrave; al contrario la possibilit&agrave; di eseguire queste operazioni SENZA essere root. Sarebbe semplice creare un programma C che esegue il "lavoro brutale" come suid-root.
Comunque &egrave; possibile utilizzare sudo per permettere agli utenti di mandare l'opportuno segnale di kill. L'unico problema &egrave; che sudo non permette di utilizzare gli apici (') per processare le opzioni che permettono di individuare il PID corretto del processo a cui mandare il segnale. Si dovrebbe invece disporre del programma killall, che permette di esegure questo (ringrazio per i suggerimenti ricevuti):
<PRE>
ALL     ALL=NOPASSWD:/usr/bin/killall -USR1 automount
</PRE>

In alternativa si dovrebbe permettere agli utenti di mandare il segnale -SIGUSR1 a tutti i processi. Questo per&ograve; potrebbe avere effetti collaterali su altri programmi: costringe il riciclo di alcuni window manager e forza la chiusura di xemacs.
<P>
<H2><A NAME="s5">5. Domande e risposte</A></H2>

<P>
<P>
<H2>5.1 Non riesco a vedere /auto/floppy, o altri mount point che sto cercando.</H2>

<P>Se automount &egrave; configurato correttamente, qualunque mount point che si sta ricercando sar&agrave; disponibile al momento dell'utilizzo, anche se non lo si vede nel momento in cui non viene utilizzato. Se si sta eseguendo il browse delle directory con un programma grafico potrebbe essere necessario digitare manualmente il percorso. Sicuramente il peggior difetto di autofs &egrave; appunto il fatto che non si possa scorrere e scegliere tra i vari mount point (che al momento risultano non utilizzati e quindi invisibili. Se questa particolarit&agrave; risulta inaccettabile, modificare la configurazione del sistema (per inciso i file che terminano in .c come "configurazione").
<P>
<H2>5.2 Come faccio a vedere che cosa &egrave; in stato di mount?</H2>

<P>Usare il comando <CODE>df</CODE>. <CODE>mount</CODE> senza opzioni mostra anche le opzioni utilizzate per eseguire il mount.
<P>
<H2>5.3 Ho inserito ("vfat") che &egrave; stato riconosciuto automaticamente come in semplice disco FAT.</H2>

<P>Questo non &egrave; un problema di automount.
Se si specifica, al momento corrente, il paramentro "auto" come tipo di filesystem, non viene testato il mount del filesytem vfat, per cui viene eseguito il mount come msdos. In effetti VFAT &egrave; solamente una variante del filesystem FAT/MSDOS, che permette l'utilizzo dei nomi di file lunghi.
<P>Stando alle osservazioni di uno degli autori di mount (??) il programma mount &egrave; soltanto una interfaccia ad una chiamata di sistema, ed &egrave; comunque responsabilit&agrave; dell'utente la specifica del tipo di filesystem. Attualmente viene tentato il mount seguendo un ordine ben preciso nell'elenco dei file system disponibili, piuttosto che un metodo pi&ugrave; "euristico", attualmente in via di sviluppo. Nel frattempo &egrave; impossibile eseguire il mount di un filesystem vfat a meno che non se ne specifichi esplicitamente il tipo. Molto probabilemnte questo inconveniente verr&agrave; risolto a breve.
<P>
<H2>5.4 Il mio filesystem <CODE>/cicciopippo</CODE> &egrave; in stato di mount e non riesco a fare l'unmount con <CODE>kill -SIGUSR1</CODE>.</H2>

<P>&Egrave; sicuramente in uso da parte di qualcuno o qualcosa. Probabilmente &egrave; impossibile eseguire anche l'unmount manuale. Controllare la presenza di qualche shell posizionata sulla directory, oppure qualche applicazione, directory browser o altro che ha lasciato per cos&igrave; dire la "porta aperta". Se non si riesce ad individuare chi o cosa sta effettuando il blocco, provare ad utilizzare il programma fuser.
<P>
<H2>5.5 Chi devo ringraziare per la disponibilit&agrave; di autofs?</H2>

<P>Non ringraziatemi. Non ho niente a che fare con questa utility. Ho soltanto voluto evidenziare il grande lavoro che &egrave; stato fatto con autofs, e mostrare la sua facilit&agrave; di utilizzo. Confrontato con il precorsore AMD (che viene tra l'altro venduto ad un prezzo maggiorato perch&eacute; corredato di una serie di utility a dir poco preistoriche), autofs &egrave; molto ben documentato e i suoi sviluppatori hanno tutti i miei ringraziamenti. Il copyright indicato &egrave; Transmeta, per cui non ho a disposizione una lista di nomi.
<P>
<H2>5.6 Dove posso trovare maggiori informazioni sull'automount?</H2>

<P>E possibile trovare un tutorial su autofs qui 
<A HREF="http://www.linuxhq.com/lg/issue24/nielsen.html">http://www.linuxhq.com/lg/issue24/nielsen.html</A>.
Provare inoltre le am-utils qui 
<A HREF="http://www.cs.columbia.edu/~ezk/am-utils">http://www.cs.columbia.edu/~ezk/am-utils</A>.
<P>(Ringrazio per questi URL) 
</BODY>
</HTML>