Wat is het Linux-fstab-bestand en hoe werkt het?
Als u Linux gebruikt, is het waarschijnlijk dat u enkele opties voor uw bestandssystemen moet wijzigen. Kennismaken met fstab kan het hele proces een stuk eenvoudiger maken, en het is veel eenvoudiger dan je denkt.
Wat is Fstab?
Fstab is de bestandssysteemtabel van uw besturingssysteem. Als je een beoordeling van bestandssystemen wilt, kijk dan eens naar ons andere artikel, HTG Explains: Welk Linux-bestandssysteem zou je moeten kiezen? Vroeger was het de belangrijkste manier waarop het systeem bestanden automatisch aankoppelde. Tegenwoordig kun je elk soort USB-stick aansluiten en het zal gewoon in Nautilus verschijnen zoals in Windows en Mac OS, maar eens in de tijd moest je die schijven handmatig koppelen aan een specifieke map met de " mount "commando. Dit gold voor dvd's, cd's en zelfs floppies (weet je nog?).
Toen was je enige alternatief dat de computer moest vertellen dat wanneer een bepaald apparaat was aangesloten, het automatisch op een specifieke plaats zou moeten worden gemonteerd. Dit is waar fstab binnenkwam, en het was geweldig. Stel dat je harde schijven hebt geruild op je IDE- of SCSI-controller. De computer kan de bestandssystemen in een andere volgorde laden, waardoor dingen in de war worden gemaakt. Fstab is geconfigureerd om te zoeken naar specifieke bestandssystemen en deze automatisch elke keer op een gewenste manier te koppelen, waardoor een groot aantal rampen voorkomen wordt.
Uw FSTAB-bestand
Het fstab-bestand bevindt zich op:
/ Etc / fstab
Laten we eens naar mijn fstab-bestand kijken, zullen wij?
Je zult zeker verschillen zien, maar als je mee wilt gaan met je eigen fstab, knal je deze opdracht gewoon in een terminal:
Je kunt ook gedit gebruiken als je niet vertrouwd bent met nano.
De voor de hand liggende opties
U zult merken dat alle gegevens beginnen met UUID's. Wellicht herinnert u zich dat u dit in een van onze vorige artikelen zag, Hoe u een partitieschema kiest voor uw Linux-pc, maar we zullen het toch nog een keer uitleggen. Elk bestandssysteem krijgt tijdens het formatteren een Universeel unieke identificatiecode toegewezen, die het naar het graf brengt. Omdat het niet kan worden gewijzigd, is dit de ideale manier om bestandssystemen te selecteren voor montage, vooral voor belangrijke. Laten we zeggen dat uw / home-partitie zich op een tweede harde schijf bevindt en u deze naar een externe harde schijf verplaatst; fstab zal die partitie nog steeds vinden en correct koppelen, waardoor een mislukte boot wordt vermeden. Als u overschakelt naar (of vastloopt met) de oude methode om apparaat-ID's te gebruiken om partities te selecteren (bijv. / Dev / sda1), verdwijnt dit voordeel omdat harde schijven en partities worden geteld door hun controllers en dus kunnen veranderen.
Bewerken: het gebruik van UUID's in uw fstab-bestand, hoewel handig voor de meeste thuisgebruikers, heeft enkele belangrijke kanttekeningen. Dit werkt niet bij het gebruik van dingen zoals "geassembleerde" of "netwerkgebaseerde" apparaten. Als u een meer geavanceerde gebruiker bent of van plan bent om in de toekomst dingen als software-RAID te gebruiken, kunt u beter geen UUID's gebruiken.
Het volgende gedeelte van fstab wordt, net als alle daaropvolgende, van elkaar gescheiden door een spatie of een tab of een combinatie ervan. Hier vind je het koppelpunt. Zoals je ziet, heb ik een root (/) mountpoint, een swap en twee die ik handmatig heb toegevoegd voor mijn gedeelde netwerkopslagdrives. Als u een ingang aan fstab toevoegt, moet u handmatig het koppelpunt maken voordat u uw computer opnieuw opstart (en de wijzigingen worden van kracht).
De volgende is de sectie die het type bestandssysteem op de partitie identificeert. Velen, zoals ext2 / 3/4, ReiserFS, jFS, etc. worden standaard door Linux gelezen. Het is mogelijk dat uw specifieke systeem bepaalde pakketten moet hebben geïnstalleerd om ze te kunnen lezen en schrijven. De perfecte voorbeelden zijn mijn NTFS-partities; je kunt zien dat ik het ntfs-3g stuurprogramma gebruik om er toegang toe te krijgen.
The Scarier Stuff
De volgende secties zijn wat gewoonlijk nieuwkomers afschrikken, maar ze zijn echt niet zo ingewikkeld. Er is een groot aantal opties beschikbaar, maar er is een handvol of heel veel opties. Laten we ze eens bekijken. (De standaardoptie is eerst, gevolgd door alternatieven, maar omdat Linux-distro's heel verschillend kunnen zijn, kan uw aantal kilometers variëren.)
- auto / noauto: Geef op of de partitie automatisch tijdens het opstarten moet worden gemount. Je kunt specifieke partities blokkeren tijdens het opstarten door "noauto" te gebruiken.
- exec / noexec: geeft aan of de partitie binaries kan uitvoeren. Als je een scratch-partitie hebt die je compileert, dan zou dit handig zijn, of misschien als je / home hebt op een apart bestandssysteem. Als u zich zorgen maakt over de beveiliging, wijzigt u dit in 'noexec'.
- ro / rw: "ro" is alleen-lezen en "rw" is read-write. Als u als gebruiker naar een bestandssysteem wilt schrijven en niet als root, moet u "rw" hebben opgegeven.
- sync / async: deze is interessant. "Sync" dwingt het schrijven onmiddellijk na de uitvoering van de opdracht, wat ideaal is voor diskettes (hoeveel van een nerd ben jij?) En USB-drives, maar niet helemaal noodzakelijk voor interne harde schijven. Wat "async" doet, is toestaan dat de opdracht wordt uitgevoerd over een verstreken tijdsperiode, bijvoorbeeld wanneer de activiteit van de gebruiker sterft en dergelijke. Ooit een bericht ontvangen met de vraag "wacht terwijl er wijzigingen aan de schijf worden geschreven?" Dit is meestal de reden.
- nouser / user: Hiermee kan de gebruiker rechten voor het koppelen en ontkoppelen hebben. Een belangrijke opmerking is dat "gebruiker" automatisch "noexec" impliceert, dus als u binaries moet uitvoeren en nog steeds als een gebruiker wilt mounten, moet u "exec" expliciet als een optie gebruiken.
Deze opties worden gescheiden door een komma en geen spaties en kunnen in willekeurige volgorde worden geplaatst. Als u niet zeker bent van de standaardwaarden, is het goed om expliciet uw opties te vermelden. Dingen die zijn gekoppeld vanaf tijdelijke plaatsen (zoals USB) zullen dit basispatroon niet volgen, tenzij u items voor hen (via UUID) hebt gemaakt in fstab. Het is handig als u wilt dat een externe harde schijf altijd op een bepaalde manier wordt gemonteerd, omdat normale thumb-drives en dergelijke niet worden beïnvloed.
U kunt zien dat op mijn twee opslagstations gebruikersprivileges zijn ingeschakeld, lezen en schrijven is ingeschakeld en automatisch koppelen is ingeschakeld. Ik compileer niet veel software, maar als ik dat doe, voeg ik de "exec" -optie toe aan het einde van de lijst.
Dumping en Fscking
De volgende optie is een binaire waarde ("0" voor false en "1" voor true) voor "dumping". Dit is een tamelijk verouderde back-upmethode voor gevallen waarin het systeem uitviel. Je moet dit verlaten als "0".
De laatste optie is een numerieke waarde voor "passeren". Dit geeft het systeem de volgorde waarin fsck moet worden uitgesproken (spreek dat uit zoals u het wilt), of voer een bestandssysteemcontrole uit. Als een schijf een optie "0" heeft, wordt deze overgeslagen, net als mijn NTFS-geformatteerde opslagstations. Het root-bestandssysteem moet altijd "1" zijn en andere bestandssystemen kunnen daarna worden uitgevoerd. Dit werkt het beste voor journaling-bestandssystemen zoals ext3 / 4 en ReiserFS. Oudere bestandssystemen zoals FAT16 / 32 en ext2 kunnen een tijdje duren, dus het is beter om het fscking uit te schakelen en het zelf periodiek te doen.
Nu je weet wat je doet, kun je gek worden met automatische montage en dergelijke. Het is erg handig als je een heleboel partities hebt die moeten worden beheerd. Onthoud altijd dat je een back-up moet maken voor het geval er iets misgaat, maar veel plezier hebt en laat je ervaringen achter in de opmerkingen!