Automount
Automount(8) je daemon, který nám umožňuje automaticky připojovat
či odpojovat jak lokální diskové svazky, tak i NFS-sdílené d. svazky.
Hlavní konf. soubor je /etc/auto.master, viz auto.master(5).
Každý řádek v tomto souboru popisuje který mountpoint (adresář)
je popsán ve kterém vedlejším konf. souboru, ten již popisuje, které souborové
systémy se pod jakým jménem adresáře mohou připojit. Je to celkem intuitivní
konfigurace, uvedu příklady:
[xkubeja@nymfe38 xkubeja]$ cat /etc/auto.master
# $Id: auto.master,v 1.2 1997/10/06 21:52:03 hpa Exp $
# Sample auto.master file
# Format of this file:
# mountpoint map options
# For details of the format look at autofs(8).
/mnt /etc/auto.mnt --timeout 3
/misc /etc/auto.tmpnymfe --timeout 3
/packages /etc/auto.packages --timeout 10800
/net/anxur /etc/auto.anxur --timeout 60
/home /etc/auto.home --timeout 10800
/net/afs /etc/auto.afs --timeout 60
/net/afs_software /etc/auto.software --timeout 60
/net/news /etc/auto.news --timeout 60
/net/atlas/home /etc/auto.atlas --timeout 10800
/net/aisa /etc/auto.aisa --timeout 300
/net/anxur1 /etc/auto.anxur1 --timeout 300
Tímto admini stroje nymfe38 říkají, že mountpoint /mnt
má konfiguraci v souboru /etc/auto.mnt a dále zde uvádí
parametr daemonu automount --timeout 3, tj. timeout je
zde 3 vteřiny, implicitně bývá 5 minut (ovšem uvádí se to ve vteřinách).
Takže automount tímto ví, že když všechny procesy
opustí připojený filesystem z tohoto mountpointu, tak pokud
ještě počká 3 vteřiny a pak teprve daný filesystem odpojí.
Podívejme se tedy blíže na mountpoint /home, tedy ptáme
se souboru /etc/auto.home, co nám o něm řekne:
[xkubeja@nymfe38 xkubeja]$ cat /etc/auto.home
* -rw,soft,intr atlas.fi.muni.cz:/export/home/&
Tady vidíme, že z tohoto
mountpointu je přístupný přes adresář * podstrom /export/home/& přes NFS z
NFS-serveru atlas.fi.muni.cz. To jsme zrovna kápli na speciální
případ - znaky * a & zde mají speciální význam. * znamená 'cokoliv' , a
& se vždy nahradí tím řetězcem, kterým začíná řádek, na němž se vyskytuje,
v tomto případě se substituuje za řetezec použit místo hvězdičky.
Tento zápis zkracuje v dané situaci konfiguraci, neboť je pro všechny
uživatele, mající svůj home na atlasu stejná.
Uvedu příklad. Nechť na atlasu existuje adresář /export/home/user.
Potom, když jsem na tomto stroji (nymfe38) a provedu
[xkubeja@nymfe38 xkubeja]$ cd /home/user
připojí se mi na toto místo (do adresáře /home/user, na nymfe38) podstrom
/export/home/user ze stroje atlas.fi.muni.cz.
Pochopitelně, automount ke každému připojení používá příkaz mount(8),
a chceme li mu dát nějaké parametry (mimo ty základní - tj. co kam připojit),
napíšeme je do druhého sloupce, tedy v našem případě vidíme parametry
-rw,soft,intr.
Démon automount se v linuxu ovládá pomocí skriptu autofs(8).
/etc/init.d/autofs
Amd
Amd (Auto Mount Daemon) je podobný automounter jako Automount.
Používá se hlavně na BSD systémech. Hlavní konfigurační soubor je
/etc/amd.conf, vypsán níže, formát je značně podobný s
hlavním konf. souborem automountu (/etc/auto.master).
Více viz amd.conf(5).
[xkubeja@gorgo04 xkubeja]$ cat /etc/amd.conf
[ global ]
auto_dir = /amd
restart_mounts = yes
cache_duration = 5
dismount_interval = 5
log_file = syslog
log_options = all
map_type = file
[ /home ]
map_name = /etc/amd.home
[ /packages ]
map_name = /etc/amd.packages
[ /net/aisa ]
map_name = /etc/amd.aisa
[ /mnt ]
map_name = /etc/amd.mnt
Tento soubor nám podobně sděluje, že je zde mountpoint /home a
je nakonfigurován v souboru /etc/amd.home. Pátrejme dál.
[xkubeja@gorgo04 xkubeja]$ cat /etc/amd.home
* type:=nfs;rhost:=atlas;rfs:=/export/home/${key};opts:=rw,grpid,resvport,vers=2,proto=udp,nosuid,nodev,utimeout=900
Tento soubor nám říká již podrobné informace o tomto mountpointu, opět stojí za
povšimnutí fakt, že syntax je podobná jako v případě automountu
(viz. výše, soubor /etc/auto.home ), akorát tu je pár změn na kráse:
rhost:=atlas;rfs:=/export/home/${key}; říká to samé jako v
případě automountu, jen místo znaku & se zde píše ${key} a
jinak ostatní věci na řádku jsou ty 'druhořadé' parametry pro mount(8).