AutoFS/hu
Az AutoFS egy olyan program, amely a Linux kernel automatikusan-felcsatoló (automounter) segítségével igény szerint automatikusan felcsatolja a kívánt fájlrendszereket a éppen működésben lévő fájlrendszerünkhöz. Maga a program együtt tud működni USB flash meghajtókkal, külső merevlemezekkel, külső SSD meghajtókkal, hálózati megosztásokkal, CDROM/DVD/Blu-ray lemezekkel, és így tovább...
Az AutoFS a helyi fájlrendszer könyvtárainak figyelésével működik. Valahányszor egy program megpróbál hozzáférni ezen könyvtárak egyikéhez, az AutoFS valamit felcsatol arra a könyvtárra. A figyelni kívánt könyvtárakat, valamint azt, hogy mit kell rájuk csatlakoztatni, az AutoFS konfigurációs fájljaiban (például /etc/autofs/autofs.master) kell megadni. Az AutoFS csatolások konfigurálására vonatkozó példák az oldal alján, a használat alatt találhatók.
Telepítés
Az AutoFS egy kernelmodult, és egy felhasználói-térben lévő programot igényel.
Egy fájlrendszer felcsatolásához (akár AutoFS-el, akár manuálisan történik az) a megfelelő felcsatolási segédet is telepíteni kell. Például a sys-fs/ntfs3g programcsomagot vagy valami ezzel egyenértékű programcsomag szükséges egy NTFS fájlrendszer felcsatolásához telepíteni a renszerünkbe. Egyes fájlrendszerek a kernelkonfiguráció módosítását is igényelhetik. Ellenőrizze a wiki oldalt az adott fájlrendszerhez, hogy megtudja, milyen szoftverre és konfigurációra lesz szükség.
Kernel konfiguráció
A következő kernelbeállítás aktiválja az automatikus csatoláshoz szükséges kernelfunkciókat.
File systems --->
<*/M> Kernel automounter version 4 support (also supports v3)
Ha az opció M-ra van állítva, a modulfájlt tartalmazó partíciót már fel kell csatolni, hogy az AutoFS működhessen.
Felhasználói-térben lévő program
A legtöbb Linux fájlrendszerhez hasonlóan, amellett, hogy a kernelben engedélyezve van a megfelelő opció, telepíteni kell a felhasználói-térben működő programcsomagot is, hogy ténylegesen kezelve legyen a felcsatolás.
USE flags for net-fs/autofs Kernel based automounter
+libtirpc
|
Use TiRPC library instead of SunRPC |
ldap
|
Install LDAP module |
mount-locking
|
Enable locking to prevent corruption of /etc/mtab in the presence of concurrent auto-mounting. If enabled, recursive auto-mounting (eg. using autofs to bind or loop mount a filesystem which is itself auto-mounted) is not possible. |
sasl
|
Enable SASL support in the LDAP module |
selinux
|
!!internal use only!! Security Enhanced Linux support, this must be set by the selinux profile or breakage will occur |
systemd
|
Enable use of systemd-specific libraries and features like socket activation or session tracking |
Telepítse a következő paranccsal:
root #
emerge --ask net-fs/autofs
További szoftver
Az NFS fájlrendszerek felcsatolásához szükséges a net-fs/nfs-utils programcsomag:
root #
emerge --ask net-fs/nfs-utils
A CIFS fájlrendszerekhez a net-fs/cifs-utils programcsomagra is szükség van:
root #
emerge --ask net-fs/cifs-utils
A WebDAV fájlrendszerek kezeléséhez a net-fs/davfs2 programcsomag telepítésére van szükség:
root #
emerge --ask net-fs/davfs2
Konfiguráció
Szolgáltatás
A rendszerünkön futnia kell az AutoFS szolgáltatásnak azért, hogy automatikusan megtörténjenek a felcsatolások:
OpenRC
Az AutoFS hozzáadása az alapértelmezett futási szinthez:
root #
rc-update add autofs default
Az automounter használatának megkezdéséhez az újraindítás előtt, indítsa el azt manuálisan:
root #
/etc/init.d/autofs start
Természetesen célszerű először a konfigurációs fájlokat szerkeszteni az alábbiak szerint. Ha az AutoFS már fut a konfiguráció szerkesztésekor, futtassa a következő parancsot a konfiguráció újratöltéséhez:
root #
/etc/init.d/autofs reload
Fájlok
Az AutoFS alapértelmezett telepítése a következő négy konfigurációs fájlt biztosítja:
Fájl | Leírás |
---|---|
/etc/conf.d/autofs | Ez a fájl használható parancssori paraméterek átadására az automatikusan automount programnak. A legtöbb felhasználónak nem kell ezt a fájlt szerkesztenie.
|
/etc/autofs/autofs.conf | Ez a fájl meghatároz néhány alapértelmezett paramétert az AutoFS számára, például a fő térképfájl helyét és az alapértelmezett időtúllépést, amely az inaktív csatolás leválasztását okozza. a legtöbb felhasználónak nem kell szerkesztenie ezt a fájlt. |
/etc/autofs/auto.master | Ez a "master map". Gyakorlatilag a "map files" és más erőforrások indexe, amelyek megmondják az AutoFS-nak, hogy mit és hova kell felcsatolni. A legtöbb felhasználónak szerkesztenie kell ezt a fájlt. |
/etc/autofs/auto.misc | Ez egy példa egy "map file"-ra, amelyre a master map hivatkozik. Megadja, hogy mit és hova kell felcsatolni. A legtöbb felhasználónak szerkesztenie kell ezt a fájlt. |
/etc/conf.d/autofs
Az /etc/conf.d/autofs az a konfigurációs fájl, amely megfelel az /etc/init.d/autofs init-szkriptnek. Az AutoFS alapvető használatához nincs szükség ennek a fájlnak a módosítására.
A fájl két változót határoz meg:
- USE_MISC_DEVICE: Ha ez
"yes"
értékre van állítva, akkor az initscript létrehozza a /dev/autofs eszközfájlt. - OPTIONS: Ez tartalmazza az
automount
-nak átadandó parancssori argumentumokat. Futtassa a manman 8 automount
parancsot, hogy megtekinthesse az összes engedélyezett opciót felsoroló kézikönyvoldalt.
Az
automount
megadhat egy nem opció argumentumot, a master map fájlnevét, de a legtöbb felhasználó számára az alapértelmezett érték (auto.master
) megfelelő. Ha meg akarja változtatni a master map fájlnevet, akkor a master_map_name konfigurációs változó megváltoztatása az /etc/autofs/autofs.conf fájlban, valószínűleg jobb módja ennek. Ezen oldal további része azt feltételezi, hogy a master map fájlnév az alapértelmezett értéken maradt./etc/autofs/autofs.conf
Az /etc/autofs/autofs.conf az AutoFS saját konfigurációs fájlja. Az alapértelmezett telepítést jól kommentálják, és az ebben a fájlban megadható opciók is dokumentálva vannak a man kézikönyv oldalán, amelyet a
user $
man 5 autofs.conf
futtatással megtekinthet.
/etc/autofs/auto.master
Az /etc/autofs/auto.master az (alapértelmezett) "master map". Minden sor egy AutoFS felcsatolást ír le.
Az alapvető használatot a man auto.master írja le.
Az AutoFS nem úgy használja a "mount" és "mount point" kifejezéseket, mint a
/bin/mount
vagy az /etc/fstab.A tipikus konfigurációs sor ehhez a fájlhoz általában így néz ki:
mount-point [map-type[,format]:]map [options]
Indirekt leképezések jönnek létre, hasonlóan az mkdir -p-hez, és eltávolítódnak a fájlrendszer leválasztásakor.
A mount-point
megad egy könyvtárat az AutoFS-nek, amit figyelni kell, és a map
-olni kell (fel kell térképezni), tehát megmondja az AutoFS-nek, hogy mit kell felcsatolni a fájlrendszerbe. Részletekért tekintse meg a Használat bekezdést.
Miután az első két (szóközzel elválasztott) mezőt (mount-point
, és map
) beállította, a sorban minden más opciót az AutoFS automount-ja (ha kötőjellel kezdődik), vagy a mount átadható opcionális lehetőségként kezel. A mount használatakor az átadott opciókat követi az -o
kapcsoló. Példaként tekintse meg a Használat bekezdést.
Az
auto.master
megjegyzései alapján a formátum a key [ -mount-options-separated-by-comma ] location
elrendezés szerint néz ki. Az 5.1.2-es verziótól ez hibás. Ez a kialakítás a map fájlok bejegyzéseire vonatkozik. Például /etc/autofs/auto.misc./etc/autofs/auto.misc
Az /etc/autofs/auto.misc egy példa a "map" fájlra. Az AutoFS csak azokat a map fájlokat használja, amelyekre a fő map fájlban ténylegesen hivatkozik, így biztonságosan átnevezheti vagy törölheti ezt a fájlt mindaddig, amíg az /etc/autofs/auto.master fájlt az egyezőnek megfelelően módosítja. További térképfájlokat is létrehozhat ugyanazt a szintaxist követve. megegyezés szerint a map fájlok az /etc/autofs/auto.* mintával vannak elnevezve.
A fájl sorai a következő formátumot veszik fel:
key [-options] location
Itt a key
az AutoFS mount-hoz társított egyedi kulcsot ad meg, amely a fájlrendszer felcsatolási útvonalának egy részét vagy egészét képezi. A location
megmondja az AutoFS-nak, hogy milyen fájlrendszert kell felcsatolnia oda. Az -options
egy vesszővel elválasztott lista a mount-nak átadandó opciókról, kivéve néhány speciális opciót, amelyeket az AutoFS kezel (például az fstype
). A részletekért lásd alább a Usage bekezdést, vagy
user $
man 5 autofs
parancs futtatásával tekintse meg a kézikönyvet.
Használat
Az AutoFS felcsatolási lehetőségek nem lesznek felcsatolva addig amíg meg nem próbálja a felhasználó elérni őket. Ez azt jelenti, hogy az AutoFS nem használható egyszerűen a rendszerhez adott eszközök automatikus csatlakoztatására.
Az AutoFS felcsatolások a következőben vannak megadva: /etc/autofs/auto.master
Példa konfiguráció:
/media/blockdev /etc/autofs/auto.blockdev --timeout=5
* -fstype=auto :dev/&
A map helye a host:path
formátumot vesz fel. Ebben az esetben az auto.blockdev
, amely az /etc/autofs/auto.blockdev fájlra hivatkozik. A host
komponens üresen hagyható, hogy a helyi gépen lévő útvonalra hivatkozzon. Ellenkező esetben a megnevezett távoli gépről származó elnevezett elérési út az NFS használatával lesz csatolva.
Ezzel a konfigurációval a /media/blockdev létre lesz hozva amikor az autofs szolgáltatás elindul. Ha egy eszköz létezik a /dev/sda1 címen, és megpróbálja elérni a /media/blockdev/sda1 fájlt, akkor az adott helyen lévő eszköznek automatikusan oda kell csatlakoznia.
Kétféle AutoFS mount létezik, közvetlen és közvetett.
Közvetlen AutoFS felcsatolások
Közvetlen AutoFS csatlakoztatás esetén a mount-point
a /-
, és a key
a map fájlban beírva az a teljes elérési út, ahova a fájlrendszer fel lesz csatolva. Például az AutoFS kézikönyvoldalain egy ehhez hasonló példa található:
/- /etc/autofs/auto.data
/tst/sbin bogus:/usr/sbin
Ezek a sorok azt mondják, hogy az AutoFS figyelje a /tst/sbin könyvtárat. Ha egy program megpróbál hozzáférni bármihez a könyvtárban, az AutoFS felcsatolja a /usr/sbin
könyvtárat a távoli bogus
gazdagépről a helyi /tst/sbin
könyvtárba. Más szóval hatékonyan végrehajtja a parancsot.
root #
mount -t nfs bogus:/usr/sbin /tst/sbin
Egy példa egy helyi eszköz felcsatolására a következőképpen nézhet ki:
/- /etc/autofs/auto.local
/mnt/stuff -fstype=ext4 :/dev/sdd1
Ez hatékonyan végrehajtja a parancsot
root #
mount -t ext4 /dev/sdd1 /mnt/stuff
Közvetett AutoFS felcsatolások
Közvetett AutoFS felcsatolás esetén a mount-point
egy könyvtár elérési útja, a map
pedig egy olyan fájl teljes elérési útja, amely leírja az eszközök abban a könyvtárban történő csatlakoztatásának szabályait. Például az alapértelmezett telepítés a következő sort tartalmazza (bár ki van kommentezve):
/misc /etc/autofs/auto.misc
Ez a sor arra utasítja az AutoFS programot, hogy figyelje a /misc alatt található fájlokat és könyvtárakat a fájlrendszerhez való hozzáféréshez. Amikor egy program megpróbál hozzáférni valamihez a /misc könyvtáron belül, akkor az AutoFS az /etc/autofs/auto.misc fájl konfigurációját fogja használni annak meghatározására, hogy automatikusan felcsatoljon-e valamit. Minden (nem megjegyzés, nem üres) sor a fájlban megfelel valaminek, amit az AutoFS a /misc alá tud majd csatolni. Például a vonal
cd -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
utasítja az AutoFS programot, hogy figyelve legyen a /misc/cd könyvtár. Amikor egy program megpróbál hozzáférni ehhez a könyvtárhoz, az AutoFS hatékonyan futtatja a parancsot
root #
mount -t iso9660 -o ro,nosuid,nodev /dev/cdrom /misc/cd
Itt van még néhány példa:
# mount-point below /mnt/auto | mount options | device, network share etc.
# network share mounted via NFSv3 on /mnt/auto/data
data -rw,vers=3,soft,async 192.0.2.1:/tank1/data
# network share mounted via CIFS on /mnt/auto/data1
data1 -fstype=cifs,credentials=/root/smb.txt ://192.0.2.1/data1
# memory stick used regulary with known UUID, for example a Kindle
kindle -fstype=vfat,rw,uid=1000 :UUID="4CBF-23A2"
Az indirekt felcsatolások lehetővé teszik az AutoFS számára, hogy helyettesítő karaktereket legyenek használva. Például, ha a felhasználók saját könyvtárai egy másik gépen vannak tárolva, és NFS-re vannak csatlakoztatva, akkor az AutoFS a következőképpen konfigurálható:
/home /etc/autofs/auto.home
* neighborhood:/export/home/&
Így amikor egy larry
felhasználó bejelentkezik, és hozzáfér néhány fájlhoz a saját könyvtárában, akkor az AutoFS hatékonyan futtatja a parancsot:
root #
mount -t nfs neighborhood:/export/home/larry /home/larry
Hasznos opciók
Ezek a lehetőségek a fő map fájlban adhatók meg.
--timeout=<seconds>
megadja, hogy egy automatikusan csatolt fájlrendszer hány másodpercig maradhat használaton kívül, még mielőtt az AutoFS leválasztja.--ghost
vagy abrowse
(utóbbi formában nincs kötőjel) hasznos lehet közvetett csatlakoztatáshoz. Ez arra készteti az AutoFS programot, hogy létrehozza azt a könyvtárat, amelyre valami fel lesz csatolva, amikor az automount szolgáltatás elindul, nem csak a könyvtár elérésekor.
Az opciók teljes leírásához futtassa a
user $
man 5 auto.master
parancsot.
Nem fájl map-ek
Az /etc/autofs/auto.master fájlban ahelyett, hogy pusztán a map
-et adná meg, a második oszlop bonyolultabb formát ölthet. Például map-type:map
, amely lehetővé teszi, hogy a map más legyen, mint egy fájl. Lehet például egy végrehajtható fájl, amely kinyomtatja a map specifikációkat (a sorokat, amelyek egy map fájlban szerepelnének), vagy bármely különféle típusú adatbázis. A felismert típusok teljes leírásához futtassa a
user $
man 5 auto.master
parancsot.
Egyszerű Windows-féle Samba megosztás felcsatolása
Itt van egy mód a hálózati Samba megosztások automatikus csatlakoztatására, ahogy a Window$ teszi. Ez a konfiguráció lehetővé teszi egy megosztás automatikus csatlakoztatását a következő parancs kiadásával egy parancssorban:
user $
cd /net/192.0.2.1/share
vagy navigáljon a /net/192.0.2.1/share oldalra egy fájlrendszer böngészőben vagy párbeszédpanelen. A benne lévő fájlok úgy jelennek meg, mintha a helyi gépen lennének.
Ahhoz, hogy ez működjön, a Samba-t telepíteni kell és be kell állítani a csatlakoztatás előtt.
/net file:/etc/autofs/auto.smbm --ghost --nonstrict
* -fstype=autofs,-Dhost=& file://etc/autofs/auto.share
* -fstype=cifs,username=guest,password=,file_mode=0664,dir_mode=0775,uid=netmount,gid=netmount,port=139 ://${host}/&
Hibaelhárítás
Csatlakoztatási hiba vagy problémák esetén használja a következő lépéseket a probléma forrásának szűkítéséhez.
Állítsa le az autofs szolgáltatást:
root #
/etc/init.d/autofs stop
Futtassa az automount
szolgáltatást az előtérben az stderr-be való bejelentkezéshez, és adja hozzá a verbose opciót az általános állapot és a folyamatüzenetek naplózásához az aktuálisan futó parancssorban:
root #
automount -f -v
Rendszeres rendszerfelhasználóként csatolja fel a fájlrendszert a következő könyvtárba lépve:
user $
cd /net/gentoo
Ellenőrizze a szolgáltatást futtató kimenetet előtérben és bőbeszédű módban. Példa hibaüzenet jelenik meg az alábbi kimenetben:
root #
automount -f -v
Starting automounter version 5.1.6, master map auto.master using kernel protocol version 5.05 mounted indirect on /net with timeout 300, freq 75 seconds attempting to mount entry /net/gentoo >> mount: /net/gentoo: bad option; for several filesystems (e.g. nfs, cifs) you might need a /sbin/mount.<type> helper program. mount(generic): failed to mount //example.net/larry (type cifs) on /net/gentoo failed to mount /net/gentoo
Külső források
- Automount mini-Howto on The Linux Documentation Project website
- AutoFS page on the Ubuntu Community Help Wiki