- Úvod
- 1.1. Stručná poznámka k pojmům
- Instalace
- Konfigurace
- 3.1. Hlavní mapový soubor
- 3.1.1. Přímé a nepřímé mapy
- 3.2. Mapové soubory
- NAPŘÍKLAD: V tomto návodu nakonfigurujeme autofs pro automatické připojování sdílené složky NFS pomocí sady konfiguračních souborů. Tento návod předpokládá, že jste již obeznámeni s exporty NFS a že již máte v síti správně fungující sdílení NFS. Přejděte na stránku Nastavení NFS, kde se dozvíte, jak takový server nastavit. 4.1. Úprava souboru /etc/auto.master
- 4.2. Vytvoření souboru /etc/auto.nfs
- 4.2.1. NFSv4
- 4.3. Odpojení statických úložišť a úprava /etc/fstab
- 4.4. Opětovné načtení souboru /etc/init.d/autofs
- 4.5. Ujistěte se, že to funguje
- Pokročilé informace
- 5.1. Poznámka k /net a /smb
- 5.2. Zástupné znaky
- Montáž jiných typů souborových systémů
- 6.1. CIFS
- 6.2. Souborové systémy založené na FUSE
- 6.2.1. Souborový systém SSHFS
- Problémy s automatickým připojováním
- Viz také
Úvod
autofs je program pro automatické připojování adresářů podle potřeby. Automatická připojení se připojují pouze při přístupu k nim a po určité době nečinnosti se odpojí. Díky tomu automatické připojování sdílených souborů NFS/Samba šetří šířku pásma a nabízí lepší celkový výkon ve srovnání se statickým připojováním pomocí fstab.
1.1. Stručná poznámka k pojmům
Aby se předešlo nedorozuměním, bude se používat následující terminologie:
-
automount je program používaný ke konfiguraci přípojného bodu pro autofs. Při spuštění programu autofs se pro každou mapu spustí démon automount.
- Auto-mount neboli automatické připojování označuje proces automatického připojování souborových systémů.
-
autofs je program, který řídí činnost démonů automount.
Instalace
Balíček autofs nainstalujete buď kliknutím sem, nebo zadáním následujícího příkazu do okna terminálu:
-
$ sudo apt-get install autofs
Konfigurace
autofs lze konfigurovat úpravou konfiguračních souborů. Existují i jiné způsoby konfigurace autofs v síti (viz AutofsLDAP), ale konfigurační soubory poskytují nejjednodušší nastavení.
3.1. Hlavní mapový soubor
Výchozí konfigurační soubor pro autofs je /etc/auto.master. Pokud nemáte pádný důvod pro jeho změnu, ponechte jej jako výchozí.
Tady je ukázkový soubor poskytovaný Ubuntu:
## $Id: auto.master,v 1.4 2005/01/04 14:36:54 raven Exp $## Sample auto.master file# This is an automounter map and it has the following format# key location# For details of the format look at autofs(5).#/misc /etc/auto.misc --timeout=60#/smb /etc/auto.smb#/misc /etc/auto.misc#/net /etc/auto.net
-
Ve výchozím nastavení jsou všechny řádky zakomentovány pomocí znaku #.
Každý z řádků v souboru auto.master popisuje připojení a umístění jeho mapy. Tyto řádky mají následující formát:
-
mount-point :] map
3.1.1. Přímé a nepřímé mapy
automount mapy mohou být přímé nebo nepřímé. Nepřímé mapy, jako například ty v souboru auto.master uvedeném výše, vytvářejí přípojné body jako podadresáře uvnitř hlavního přípojného bodu. Vezměme například následující položku hlavní mapy:
-
/smb /etc/auto.smb
Tento záznam v souboru auto.master říká programu autofs, aby se podíval do adresáře /etc/auto.smb a vytvořil přípojné body v adresáři /smb.
Přímé mapy vytvoří přípojný bod na cestě uvedené v příslušném souboru mapy. Položka přípojného bodu v souboru auto.master je vždy /-. Například následující řádek dává autofs pokyn k vytvoření přípojného bodu na místě zadaném v auto.data:
-
/- /etc/auto.data
- Pokud není soubor mapy zadán pomocí úplné místní nebo síťové cesty, použije se k vyhledání mapy konfigurace přepínače jmenných služeb, např:
/- auto.data
3.2. Mapové soubory
Jak je uvedeno výše, každé připojení autofs má svůj vlastní mapový soubor. Tyto soubory jsou obvykle pojmenovány podle konvence auto.<X>, kde <X> může být cokoli, pokud to odpovídá položce v auto.master a platí pro název souboru.
Soubory map mají následující formát:
-
key location
NAPŘÍKLAD: V tomto návodu nakonfigurujeme autofs pro automatické připojování sdílené složky NFS pomocí sady konfiguračních souborů. Tento návod předpokládá, že jste již obeznámeni s exporty NFS a že již máte v síti správně fungující sdílení NFS. Přejděte na stránku Nastavení NFS, kde se dozvíte, jak takový server nastavit.
4.1. Úprava souboru /etc/auto.master
Následující krok vytvoří přípojný bod na adrese /nfs a nakonfiguruje jej podle nastavení uvedených v souboru /etc/auto.nfs (který vytvoříme v dalším kroku).
- Na terminálu zadejte následující příkaz:
$ sudo nano /etc/auto.master
-
Na konec souboru /etc/auto.master přidejte následující řádek:
/nfs /etc/auto.nfs
4.2. Vytvoření souboru /etc/auto.nfs
Nyní vytvoříme soubor, který bude obsahovat naši mapu automatického počítadla:
-
$ sudo nano /etc/auto.nfs
Tento soubor by měl obsahovat samostatný řádek pro každou sdílenou složku NFS. Formát řádku je {mount point}. {umístění}. Pokud jste dříve nakonfigurovali statické připojení v /etc/fstab, může být užitečné na ně odkázat. Nezapomeňte, že zde zadané přípojné body budou relativní vůči přípojnému bodu uvedenému v /etc/auto.master.
Následující řádek je určen pro sdílení používající starší verze systému NFS (před verzí 4):
-
server server:/
Tento příkaz vytvoří nový přípojný bod na adrese /nfs/server/ a připojí kořenový adresář systému NFS exportovaný počítačem, jehož jméno hostitele je server.
4.2.1. NFSv4
Pokud vaše sdílené soubory NFS používají systém NFSv4, je třeba o tom informovat systém autofs. V takovém případě by se výše uvedený řádek zobrazil takto:
-
server -fstype=nfs4 server:/
Klient potřebuje stejné změny v /etc/default/nfs-common, aby se mohl připojit k serveru NFSv4.
-
V /etc/default/nfs-common nastavíme:
NEED_IDMAPD=yesNEED_GSSD=no # no is default
4.3. Odpojení statických úložišť a úprava /etc/fstab
Pokud jste dříve nakonfigurovali sdílené soubory NFS jako statická úložiště, je nyní čas je odpojit.
-
$ sudo umount /server
Následujte odstranění (nebo zakomentování) jejich příslušných záznamů v /etc/fstab.
-
#server:/ /server/ nfs defaults 0 0
4.4. Opětovné načtení souboru /etc/init.d/autofs
Po zadání změn spusťte následující příkaz pro opětovné načtení systému autofs:
-
$ sudo service autofs reload
Pokud pracujete na starší verzi ubuntu a nefunguje to, zkuste:
-
$ sudo /etc/init.d/autofs reload
Pokud pracujete v Natty a nefunguje to, zkuste:
-
$ sudo /etc/init.d/autofs restart
4.5. Ujistěte se, že to funguje
Pro přístup ke sdílené složce a ověření, že funguje správně, zadejte do shellu následující příkaz:
-
$ ls /nfs/server
Pokud se v seznamu zobrazí vaše sdílené místo NFS, gratulujeme! Máte funkční připojení NFS přes autofs! Pokud se chcete dozvědět některé pokročilejší informace, pokračujte ve čtení.
Pokročilé informace
Pokud byste podle výše uvedeného příkladu adresářové struktury zadali do shellu příkaz ls /nfs, mohli byste být překvapeni, že v seznamu nic nevidíte. Nezapomeňte však, že před automatickým připojením adresáře k němu musíte získat přístup. Chcete-li získat přístup ke sdílenému adresáři, zadejte příkaz ls /nfs/server. Jakmile k němu získáte přístup, bude vaše sdílená složka uvedena pouze do doby, než se ukončí. To je dobré mít na paměti, protože vám to může ušetřit čas při diagnostice problému s autofs, který ve skutečnosti neexistuje.
5.1. Poznámka k /net a /smb
Tyto dvě výchozí konfigurace mohou být užitečné pro vaše nastavení. Pokud máte hodně sdílených souborů NFS nebo Samba, možná budete chtít tyto řádky odkomentovat. /net umožňuje automatické připojování souborových systémů jinde v síti, které jsou exportovány systémem NFS. Máte-li například server s názvem fileserver s adresářem pro export NFS s názvem /export, můžete jej připojit zadáním příkazového řádku shellu cd /net/fileserver/export. V prostředí se souborovými servery NFS může být taková konfigurace užitečná. Adresář /smb funguje stejně, ale je určen pro souborové systémy Samba. Pokud je však třeba se před přístupem ke sdílenému souboru Samba ověřit, automatické připojení nebude fungovat.
5.2. Zástupné znaky
Řekněme, že máte adresář s několika podadresáři, které chcete nechat automaticky připojit jednotlivě. Příkladem je adresář /home, v takovém případě může soubor /etc/auto.master obsahovat následující řádek:
-
/home /etc/auto.home
Je-li přihlášen uživatel1, budete chtít automaticky připojit jeho domovský adresář. Pokud však vytvoříte přípojný bod pro celý adresář /home, připojíte současně i domovské adresáře všech ostatních uživatelů, čímž dojde k plýtvání šířkou pásma. Jedním z řešení tohoto problému by bylo vytvoření samostatných záznamů pro každý adresář, a to následujícím způsobem:
-
# /etc/auto.homeuser1 server:/home/user1user2 server:/home/user2user3 server:/home/user3
To funguje, ale je to těžkopádné. Místo toho můžete použít znaky zástupných karet, a to následujícím způsobem:
-
* server:/home/&
Hvězdička (*) se použije místo přípojného bodu a ampersand (&) místo připojovaného adresáře. Podrobnější informace o používání zástupných znaků naleznete v části Používání zástupných znaků jako zkratek v mapách systému AutoFS.
Můžete také použít proměnné (viz manuálová stránka autofs(5)) pro nahrazení uživatelů a dalších parametrů, abyste mohli vytvořit obecný soubor pro více uživatelů. Níže je uveden příklad mapy smb, která mapuje na základě uživatele, který se ptá na sdílení pomocí proměnné $USER.
* -fstype=cifs,rw,credentials=/home/$USER/.smbcredentials,iocharset=utf8,uid=$USER,gid=users,file_mode=0700,dir_mode=0700 ://server/$USERshare1 -fstype=cifs,rw,credentials=/home/$USER/.smbcredentials,iocharset=utf8,uid=$USER,gid=users ://server/share1share2 -fstype=cifs,rw,credentials=/home/$USER/.smbcredentials,iocharset=utf8,uid=$USER,gid=users ://server/share2
Montáž jiných typů souborových systémů
6.1. CIFS
Při zadávání sdílené složky CIFS v mapovém souboru zadejte -fstype=cifs a před umístění sdílené složky vložte dvojtečku (:).
Příklad:
mntpoint -fstype=cifs ://example.com/shrname
Příklad: Připojení pro čtení a zápis s uvedením uživatele a skupiny, která bude soubory vlastnit:
mntpoint -fstype=cifs,rw,uid=myuserid,gid=mygrpid ://example.com/shrname
Příklad: Připojení pro čtení a zápis se zadáním uživatelského jména a hesla pro připojení ke sdílené složce:
mntpoint -fstype=cifs,rw,username=myuser,password=mypass ://example.com/shrname
6.2. Souborové systémy založené na FUSE
Souborové systémy založené na FUSE se připojují zadáním parametru -fstype=fuse. Umístění souborového systému určuje binární soubor v uživatelském prostoru použitý k připojení souborového systému, za nímž následuje hash (#) a za ním umístění.
Při zadávání umístění souborového systému FUSE v souboru mapy musí být některé znaky, zejména hash (#) a dvojtečka (:), překryty zpětným lomítkem (\). Celému umístění musí předcházet dvojtečka (:).
Protože funkce automount provádí připojení jako root, je obvykle nutné v možnostech připojení zadat allow_other, abyste umožnili přístup ke sdílenému souboru uživateli, který není root.
6.2.1. Souborový systém SSHFS
SSHFS je souborový systém založený na FUSE. Při připojování pomocí autofs musí být dvojtečka (:) za názvem serveru uzavřena zpětným lomítkem (\).
Měli byste již nastavit ověřování bez hesla pomocí šifrování veřejného klíče. Než budete pokračovat, ujistěte se, že rozumíte bezpečnostním důsledkům tohoto postupu.
Pamatujte, že funkce automount připojí váš souborový systém SSHFS jako root, takže musíte:
-
Zkopírujte svůj soukromý klíč do adresáře /root/.ssh. Než budete pokračovat, ujistěte se, že rozumíte bezpečnostním důsledkům tohoto postupu.
-
Přidat potřebné klíče hostitelů do adresáře /root/.ssh/known_hosts.
- Zadejte uživatelské jméno používané pro připojení
Pro otestování připojení souborového systému SSHFS jako root vydejte následující příkaz:
sudo sshfs [email protected]:/ mountpoint
Pokud se připojení podaří bez výzvy k zadání hesla, jste připraveni k připojení souborového systému prostřednictvím autofs
Příklad:
mntpoint -fstype=fuse,allow_other :sshfs\#[email protected]\:/path/to/mount
Příklad: Připojení pro čtení a zápis se zadáním uživatele a skupiny, která bude soubory vlastnit:
mntpoint -fstype=fuse,rw,uid=1000,gid=1000,allow_other :sshfs\#[email protected]\:/path/to/mount
Poznamenejte, že pro připojování pomocí FUSE musí být uid a gid číselná ID.
Problémy s automatickým připojováním
Pokud máte problémy s automatickým připojováním souborových systémů, může být užitečné spustit automatické připojování v popředí.
-
Zastavte démona autofs
sudo service autofs stop
-
Spusťte automatické připojování v popředí se slovními informacemi
sudo automount -f -v
- Z jiného terminálu zkuste připojit své souborové systémy změnou adresářů do přípojného bodu.
- Podívejte se na výstup z prvního terminálu a zjistěte, proč se připojení nezdařilo nebo se o něj nepokusili.
Viz také
-
Mount – informace o procesu připojování a jeho konfiguraci v Ubuntu.
-
Manuální stránka mount – je umístěna na oficiálních stránkách Ubuntu.