Fstab – meghajtók automatikus felcsatolása linux alatt

Kezdő linux felhasználóként kevés frusztrálóbb dolog van annál, mint amikor a két merevlemezedből csak az egyik meghajtót látod, amire a rendszert telepítetted és a másik meghajtót pedig még vagy nem tudod, hogy hogyan kell csatolni, vagy megtalálod a fájlkezelőben, de állandóan jelszót kér.

Egy olyan funkciót szeretnék most a kezdők számára ismertetni, ami lehetővé teszi minden linux rendszeren, hogy automatikusan csatoljunk meghajtókat, partíciókat  közvetlenül a rendszerünk indulásakor, így nekünk már semmit sem kell majd ezek után csinálni, mindig elérhetőek maradnak.

Az  /etc/fstab fájl egy konfigurációs fájl, amely meghatározza az elérhető eszközöket és partíciókat, valamint azt, hogy hol és hogyan kell ezeket a partíciókat használni. Ez a fájl a rendszer telepítése során jön létre.

Linux alatt minden eszköz elérhető könyvtárként a „/dev” mappában. Ez azt jelenti, hogy ha egy meghajtót vagy bármilyen külső eszközt csatlakoztatunk a számítógéphez, az megjelenik a /dev mappában. Az eszközfájl használatával azonban nem fogjuk tudni használni az eszközt, és nem fogjuk tudni elérni a tartalmát. Elő kell készíteni, hogy használható legyen. Az fstab fájl lehetővé teszi, hogy megadjuk, hogyan és milyen opciókat kell használni egy adott eszköz vagy partíció csatlakoztatásához, hogy minden alkalommal ezeket a beállításokat használja. Ezt a fájlt a rendszer minden alkalommal beolvassa a rendszer indításakor és a megadott fájlrendszer ennek megfelelően felcsatolásra kerül. A megadott sorokat megjegyzésekkel is kiegészíthetjük és manuálisan is csatlakoztathatjuk a fájlrendszert újraindítás után.

Példaként, ha az fstab fájl (/etc/fstab) tartalmazza a következő bejegyzést:
/dev/hdc /cdrom iso9660 rw,noauto,user 0 0
Csak a következő parancsot kell kiadnia a cdrom csatlakoztatásához, miután behelyezett egy CD-t a CD-meghajtóba.

mount /cdrom

Ez a CD-ROM-ot a /cdrom mappába illeszti az „rw, noauto és user” opciókkal (később részletesen végigmegyünk a különféle opciókon) és a CD tartalma a /cdrom könyvtáron keresztül böngészhető.

       fstab beállítások

Az fstab minden sora egy adott eszköznek vagy partíciónak felel meg. Az fájl mintabejegyzése a következő:

eszköz           csatolási könyvtár    fájlrendszer típusa       opciók                     dump   fsck
/dev/hdc     /cdrom       iso9660       rw,noauto,user   0    0

      Az első mező (device) –  az eszköz

Az eszköz neve gyakorlatilag. Ha csatlakoztattunk egy külső eszközt, és nem tudjuk az eszköz nevét, akkor a dmesg vagy a „tail –f /var/log/messages” parancsot lehet használni az eszköznév megkereséséhez. SCSI és SATA merevlemezek esetén az eszközök nevei: /dev/sda (első meghajtó), /dev/sdb (második meghajtó). Az UUID -t is használhatjuk az adott lemezhez vagy partícióhoz. Ezt a blkid parancs adja meg számunkra.
Ebben az esetben az eszköz nevét egyszerűen így írjuk – a példa kedvéért csatoljuk a webes könyvtárunkat/vinyónkat:

UUID=7a74286d-413a-467c-a658-283297910745 /var/www ext4 defaults 0 0

       A második mező (mounting_directory) – a csatolási könyvtár

Ennek a könyvtárnak léteznie kell. Ez azt jelenti, hogy a mount parancs használata előtt létre kell hozni a könyvtárat. Ide fogjuk felcsatolni az eszközt.

       Harmadik mező (filesystem type) – fájlrendszer_típusa

A fájlrendszer típusa. A különböző fontos fájlrendszertípusok a következők lehetnek:

  • – ext2, ext3, ext4: Általában az összes újabb Linux partíció Ext4. Az Ext3 egy újabb fájlrendszertípus, amely abban különbözik az Ext2-től, hogy naplózott, ami azt jelenti, hogy ha kikapcsolja a számítógépet anélkül, hogy megfelelően leállna, nem szabad elveszítenie semmilyen adatot, és a rendszernek nem szabad túl sok időt eltöltenie fájlrendszer ellenőrzésekkel a következő alkalommal. Az ext4 pedig gyorsabb és hatékonyabb, mint az ext3. Az eredeti ext3 fájlrendszer kódját a 4.3-as verzióval eltávolították a Linux Kernelből, helyette az ext4 fájlrendszer kódja már képes kezelni az ext2, ext3 és ext4 fájlrendszereket. Fenntartja a kompatibilitást, ha a fájlrendszer ext2 vagy ext3 néven van felcsatolva, és biztosítja a frissíthetőséget, ha ext4 néven van felcsatolva.
  • – reiserfs: A ReiserFS egy naplózott fájlrendszer, de sokkal fejlettebb volt egy időben, mint az Ext3. Sok Linux disztribúció (beleértve a SuSE-t is) a ReiserFS-t kezdte használni alapértelmezett fájlrendszerként a Linux-partíciókhoz. 2006 óta a jelentőssége jócskán lecsökkent.
  • – swap: A “swap” fájlrendszer típust használják a swap, azaz a memória-csere partíciók.
  • – vfat és ntfs : Az USB-meghajtó valószínűleg Vfat-ként van formázva (ismertebb nevén FAT32). A Windows partíciók valószínűleg Vfat vagy NTFS.
  • – ISO 9660: Ez egy általános formátum, amely a kompakt lemezeket, DVD-ket és Blu-ray lemezeket célozza meg.
  • – Auto: Az “auto” opció egyszerűen azt jelenti, hogy a rendszer automatikusan észleli a fájlrendszer típusát. Általában a hajlékonylemezek vagy CD-ROM-ok megkapják ezt a lehetőséget, mivel a fájlrendszer típusa eltérő lehet.
  • A folyamatos fejlődés révén természetesen még további opciók is kerülnek be és ki, ezt könnyedén ellenőrizhetjük a man paranccsal vagy egy kis internetes kereséssel, lehet még akár xfs, jfs, smbfs, nfs, f2fs, stb… stb….

   A negyedik mező (options) – opciók

Nincs sok extra opció, de azért végignézzük azokat a fontos lehetőségeket, amelyekkel a szerveradminisztrátornak tisztában kell lennie.

  • – auto és noauto: az auto megadja, hogy az eszközt/partíciót automatikusan fel kell csatolni a rendszerindításkor, a „noauto” pedig azt határozza meg, hogy az eszközt kifejezetten nem kell, nem szabad csatolni. Amikor végrehajtja a „mount –a” parancsot, minden partíció, amelynél az „auto” érték van beállítva, automatikusan fel lesz csatolva. A gyökérpartícióknál be kell állítani az „auto” opciót értelemszerűen.
  • – exec és noexec : Az „exec” opció megadja, hogy az eszközön található fájlok végrehajthatók legyenek, a „noexec” pedig eltávolítja a végrehajtási funkciót. A nem végrehajtható fájlok tárolására szolgáló partíciók, például a /var vagy a /tmp, a nagyobb biztonság érdekében a noexec funkciót engedélyezhetik.
  • – user és nouser: A „user” opció megadja, hogy a felhasználók fel tudják csatolni a partíciókat, a „nouser” pedig azt határozza meg, hogy csak a root felhasználó csatolhat fel bármilyen partíciót. A „user” opciót olyan eszközökhöz kell beállítani, mint a floppy, ha még van, pendrive, külső vinyó vagy cdrom, hogy a felhasználók a root helyett fel tudják csatolni az eszközt.

Példa explicit, azaz noauto csatolásra, ahol egy adott külső merevlemez még nincs a gépbe bedugva, tehát nincs értelme az auto opciónak:

UUID=C68E30678E3051E3 /mnt/ntfs1 ntfs-3g noauto,uid=1000,gid=1000,umask=0022 0 0

Ez a hálózati meghajtókhoz is használt opció, ami adott esetben még nem áll készen a hálózaton, majd csak később akarjuk használni.
A csatlakoztatás előtt győződjünk meg arról, hogy engedélyeztük a csatlakozási pont könyvtárának engedélyét a kívánt felhasználó számára. Ez ugyanakkor egy csatolt könyvtáron általában nem működik, még ha engedélyt is állítunk be.

  • Egyéb lehetőségek: megadhatjuk a tulajdonos és a csoport nevét, példa:
    /source/location /destination/mountpoint ext3 -o uid=linux -o gid=nyílt forrás
    vagy
    /source/location /destination/mountpoint ext3 uid=linux,gid=opensource
  • – ro és rw : A „ro” opció megadja, hogy a fájlrendszert csak olvashatóként kell beilleszteni, az „rw” opció pedig engedélyezi az olvasást-írást.
  • – sync és async: Ez határozza meg, hogyan kell a fájlrendszer bemenetét és kimenetét végrehajtani. A szinkronizálás azt jelenti, hogy amikor egy fájlt a pendrive -ra másol, a változtatások fizikailag a pandrive -ra íródnak a másolás parancs kiadásával egyidejűleg. Az „async” esetében a változtatások csak a pendrive leválasztásakor íródnak le, ezzel biztos már sokan találkozhattak, ez az a bizonyos kérem várjon felirat 😀
  • – suid / nosuid: A „suid” opció lehetővé teszi a suid, az sgid bitek és a „nosuid” opció pedig blokkolja a suid és sgid bitek működését. A Unix típusú rendszerekben a programok azokkal a felhasználói jogokkal futnak, amivel az őket elindító felhasználó rendelkezik. Ezt lehet megváltoztatni a suid és az sgid bitekkel. Egy suid bittel rendelkező program elindításakor a program egy másik felhasználó jogaival fog futni, fájlokat olvasni, írni és más programokat futtatni, ezt lehet tiltani.

– defaults (alapértelmezések): Az Ext4 fájlrendszerek normál alapértelmezése az rw,suid,dev,exec,auto,nouser,async opciókkal egyenértékű, magyarán ezeket nem kell állandóan, minden egyes alkalommal begépelni, csak a defaults opciót és ez behelyettesíti azt a sok kapcsolót

       Az ötödik mező (dump)

Megadja azt a beállítást, amelyet a dump (biztonsági mentési segédprogram) programnak használnia kell. Ha az érték 0, akkor a partíciót kizárja a biztonsági mentésből, és ha a beállítás értéke nem nulla, akkor a fájlrendszerről biztonsági másolat készül. Ez a program ma már nagyon ritkán és kevéssé használatos.

    A hatodik mező (fsck)

Ez azt jelenti, hogy ha az érték nullára van állítva, az eszköz vagy partíció ki lesz zárva az fsck ellenőrzésből, és ha nem nulla, az fsck ellenőrzés az érték beállításának sorrendjében fut le. A gyökérpartíció értéke egy (1) lesz, így először az fsck fogja ellenőrizni. Ha kettőt (2) állít be, az azt jelenti, hogy a rendszer újraindításkor sorban végrehajtja az fsck -t az összes ‘2’-vel jelölt többi partíción.

Hát ennyi lett volna a nagy kaland, remélem hogy ezek után már mindenki sokkal magabiztosabban fogja használni az fstab -ot.

Ha bármilyen problémába ütközünk a partíció csatlakoztatása során, az /etc/fstab fájlt ellenőrizni kell, hogy nincs-e hibás konfiguráció. Csak megnyugtatásul közlöm, hogy szinte mindenkivel előfordulhat 😀

Köszönöm a figyelmet, további jó linuxozást és szép napot és osztani ér !


Továbbra is várunk mindenkit nagy szeretettel csevegő oldalunkon élőben:
https://skamilinux.hu/chat/

Aktív fórum témák:
https://skamilinux.hu/phpBB3/search.php?search_id=active_topics

Legutóbbi PuppySzoftverek:
https://sourceforge.net/p/puppyszoftver/activity

Vélemény, hozzászólás?

Translate »