[StartPagina] [IndexVanTitels] [IndexVanWoorden

Geschikt voor: Ubuntu, GNOME Kubuntu, KDE Xubuntu, XFCE Ubuntu Server, opdrachtregel
Versie: alle ondersteunde versies

Uitleg over /etc/fstab

IconDisks.png Het configuratiebestand /etc/fstab bevat informatie om het 'koppelen' van schijfpartities en netwerkopslaglocaties te automatiseren.

Met 'koppelen' wordt hier bedoeld het beschikbaar maken van een (fysiek) deel van een harde schijf (schijfpartitie) of netwerkopslaglocatie, via een zogenaamd koppelpunt, een map ergens in de boomstructuur van het actieve bestandssysteem.

Dit artikel is slechts een inleiding tot het gebruik van /etc/fstab.

IconSambaShares.png Het koppelen van netwerk opslag (samba/nfs/sshfs) in een omgeving met meerdere gebruikers valt buiten dit artikel.

Bestand /etc/fstab

info.png De regels in /etc/fstab zijn opgebouwd uit 6 parameters (syntax) :

[schijfpartitie] [koppelpunt] [type bestandssysteem] [parameters] [dump] [controle]

parameter

omschrijving

[ schijfpartitie ]

De schijfpartitie (als /dev partitienaam, UUID= of als LABEL=) waar het bestandssysteem is opgeslagen.

[ koppelpunt ]

De map in het actieve bestandssysteem die toegang geeft tot de gekoppelde opslaglocatie. De naam van deze map mag geen spatie bevatten. (opmerking: een swap partitie heeft geen koppelpunt, deze parameter heeft dan de waarde 'none')

[ type bestandssysteem ]

type van het bestandssysteem zoals bijvoorbeeld ext2, ext3, ntfs, iso9660, vfat, udf of een ander ondersteund type (zie man mount).

[ opties ]

Opties voor het koppelen (zie man mount). Meerdere opties worden gescheiden door een komma.

[ dump ]

Normaal is deze parameter 0.

[ controle ]

Regelt de volgorde van controle van de schijfpartitie door fsck tijdens het opstarten. De hoofd (root) partitie moet de waarde 1 hebben, andere schijfpartities de waarde 2. Met de waarde 0 is de controle uitgeschakeld.

Kijk in onderstaande voorbeelden en in de volgende hoofdstukken voor meer informatie over deze paramaters.

Schijfpartitie

Standaard maakt Ubuntu gebruik van een UUID (unieke identificatie) om schijfpartities aan te duiden.

Een UUID bestaat uit 32 hexadecimale tekens, weergegeven in 5 groepen met tussenliggende streepjes (00000000-0000-0000-0000-000000000000). Voor de type bestandsystemen FAT en NTFS bestaat de UUID uit een korte reeks tekens.

Voor een overzicht van de aanwezige schijfpartities op basis van de UUID kan een sudo blkid opdracht worden gebruikt:

sudo blkid

Deze opdracht zal ook het type van het bestandssysteem tonen.

Andere manieren om een schijfpartitie te specificeren zijn:

Het gebruiken van de UUID om een partitie te koppelen wordt aangeraden, omdat deze aanduiding constant blijft, ook als er extra schijven of USB-sticks aangesloten worden. De /dev/sdxy aanduiding kan dan wel veranderen. Let er wel op dat de UUID van een partitie verandert als deze partitie vergroot, verkleind, verplaatst of geformatteerd wordt. In zo'n geval moet het /etc/fstab bestand aangepast worden aan de nieuwe situatie.

In de voorbeelden per type bestandssysteem worden voorbeelden gegeven voor het gebruik van de LABEL= identificatie.

Koppelpunt

Een koppelpunt is een locatie (map) in het actieve bestandssysteem. Standaard wordt een submap in de map /media gebruikt maar andere locaties zijn ook mogelijk zoals in de /mnt map of in de persoonlijke map.

De naam voor het koppelpunt kan vrij worden gekozen (maar mag geen spatie bevatten) en moet vooraf zijn gemaakt om te kunnen koppelen.

Bijvoorbeeld het koppelpunt : /media/windows

Kan gemaakt worden met de opdracht:

sudo mkdir /media/windows

De map die gebruikt wordt voor het koppelen kan leeg zijn maar ook gegevens bevatten. Eventuele gegevens in de originele map zijn niet meer zichtbaar. Om de originele mapinhoud weer beschikbaar te krijgen kan de koppeling worden verbroken met de opdracht:

sudo umount /pad/naar/koppelpunt_mapnaam

Type van het bestandssysteem

Het is mogelijk om een type voor het te koppelen bestandssysteem te specificeren. Het is ook mogelijk middels de waarde 'auto' het systeem zelf het type te laten bepalen. De automatische detectie werkt in de regel goed en wordt veel gebruikt voor verwijderbare apparaten.

Voorbeelden van type bestandssystemen zijn:

Opties

Welke opties mogelijk zijn is afhankelijk van het type bestandssysteem.

Voor opties kan de waarde "defaults" worden gebruikt, waardoor een aantal voor de hand liggende opties worden gebruikt.

Algemene opties :

Voor meer (Engelstalige) informatie over de opties kijk op: man mount

Dump

Normaal is deze parameter 0 om aan te geven dat deze partitie is uitgeschakeld bij een dump (bepaalde back-up) opdracht.

Automatische controle

De controle parameter bepaalt de volgorde waarin bestandssystemen automatisch gecontroleerd worden (met een fschk opdracht). Bij een waarde "0" zal er geen automatische controle plaats vinden.

Deze parameter is soms verwarrend. Er zijn 3 mogelijke waarden:

In de praktijk wordt de waarde "1" gebruikt voor de 'hoofdpartitie', ook wel 'root-partitie' genoemd en de waarde "2" voor andere partities. De volgorde waarin de andere partities worden gecontroleerd is niet van belang.

Gebruik de waarde "0" om de automatische controle uit te zetten en voor netwerk opslag.

Het is mogelijk om de frequentie waarin de automatische controle wordt uitgevoerd te wijzigen (standaard na 30 keer koppelen) maar omdat deze controle van belang is om een correcte werking van het bestandssysteem te garanderen wordt sterk aangeraden de standaard instellingen te gebruiken.

Voorbeelden

IconEnvelope.png Hieronder een aantal voorbeelden van regels in bestand /etc/fstab

# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>

proc  /proc  proc  defaults  0  0
# /dev/sda5
UUID=be35a709-c787-4198-a903-d5fdc80ab2f8  /  ext3  errors=remount-ro  0  1
# /dev/sda6
UUID=cee15eca-5b2e-48ad-9735-eae5ac14bc90  none  swap  sw  0  0

/dev/scd0  /media/cdrom0  udf,iso9660  user,noauto,exec,utf8  0  0

Extra schijfpartities.

# FAT ~ Linux noemt het FAT bestanssysteem vfat
# /dev/hda1
UUID=12102C02102CEB83  /media/windows  vfat  auto,users,uid=1000,gid=100,dmask=027,fmask=137,utf8  0  0

# NTFS ~ Gebruik ntfs (ofwel ntfs-3g) voor schrijf toegang (rw)
# /dev/hda1
UUID=12102C02102CEB83  /media/windows  ntfs-3g auto,users,uid=1000,gid=100,dmask=027,fmask=137,utf8  0  0

# Zip Drives ~ Linux herkent ZIP drives als sdx4

# Aparte Home
# /dev/sda7
UUID=413eee0c-61ff-4cb7-a299-89d12b075093  /home  ext3  nodev,nosuid  0  2

# Extra gegevens schijfpartitie
# /dev/sda8
UUID=3f8c5321-7181-40b3-a867-9c04a6cd5f2f  /media/data  ext3  noexec  0  2

Opmerking : Onderstaande netwerk voorbeelden (samba, nfs, and sshfs) gaan er van uit dat ook de netwerk server overeenkomstig is ingericht en de benodigde pakketten zijn geïnstalleerd.

# Samba
//server/share  /media/samba  cifs  user=user,uid=1000,gid=1000  0  0
# "Server" = Samba server (ip-adres, dnsnaam of de naam in /etc/hosts)
# "share" = naam van de netwerkopslaglocatie (share)
# "user" = samba gebruikersnaam
# In dit voorbeeld wordt bij het koppelen gevraagd om het wachtwoord.
# Het koppelen zal zo niet lukken tijdens het starten van de computer.
# Er kan ook gebruik gemaakt worden van een credentials file.
# vervang "user=user" door "credentials=/etc/samba/credentials"
# In bestand /etc/samba/credentials komen 2 regels:
# username=gebuikersnaam
# password=samba-wachtwoord
# Dit bestand kan root als eigenaar hebben en alleen leesbaar zijn voor root
#  sudo chown root:root /etc/samba/credentials
#  sudo chmod 400 /etc/samba/credentials
# Let op de beveiliging; alle gebruikers gebruiken nu de netwerkopslaglocatie
# met dezelfde gebruikersnaam.

# NFS
Server:/Naam  /media/nfs  nfs  user,noexec,nosuid  0  0
# "Server" = nfs server (ip-adres, dnsnaam of de naam in /etc/hosts)
# "Naam" = naam van de netwerkopslaglocatie zoals in /etc/exports op de server
# De actuele gebruikersnaam wordt gebruik voor het koppelen.

#SSHFS
sshfs#naam@server:/map  fuse  noauto,user  0  0
# "naam" = gebruikersnaam op de server.
# "server" = ssh server (ip-adres, dnsnaam of de naam in /etc/hosts)
# "map" = map die gekoppeld wordt als netwerkopslaglocatie

Voorbeelden per type bestandssysteem

example.png Hier volgen een aantal eenvoudige voorbeelden voor bepaalde type bestandssystemen, Er wordt gebruik gemaakt van /dev/sdb1 en /dev/hda2 maar dit kan ook een andere naam voor de schijfpartitie zijn (/dev naam, UUID=<identificatie>, of LABEL=<een_label>).

ext2 en ext3

Het belangrijke verschil tussen ext2 en ext3 is het gebruik van een journaal voor bescherming tegen fouten bij een abnormale stop van het systeem.

Een root bestandsysteem:

UUID=30fcb748-ad1e-4228-af2f-951e8e7b56df / ext3 defaults,errors=remount-ro 0 1

Een NIET-root bestandssysteem:

LABEL=externe_schijf /media/disk2 ext2 defaults 0 2

Een label opvragen:

sudo e2label /dev/sdb1

Een label instellen (maximaal 16 tekens):

sudo e2label /dev/sdb1 externe_schijf

fat16 en fat32

/dev/hda2 /media/data1 vfat defaults,user,exec,uid=1000,gid=100,umask=000 0 0

LABEL=SCHIJF2 /media/data2 vfat defaults,user,dmask=027,fmask=137 0 0

Om een label te lezen:

sudo mlabel -i /dev/sdb1 -s ::

Belangrijk: Komt een melding zoals onderstaande:

Total number of sectors (7902207) not a multiple of sectors per track (63)!
Add mtools_skip_check=1 to your .mtoolsrc file to skip this test

Geef dan de terminalopdracht:

echo mtools_skip_check=1 >> ~/.mtoolsrc

Om een FAT16 of FAT32 label te wijzigen:

sudo mlabel -i /dev/sdb1 ::SCHIJF2

NTFS

Voorbeelden voor het koppelen van een Windows schijfpartitie.

/dev/hda2 /media/windows ntfs-3g defaults,locale=nl_NL.utf8 0 0

LABEL=externe_schijf /media/windows ntfs defaults,locale=nl_NL.utf8 0 0

Voor een lijst met mogelijke waarden voor de 'locale' optie op het systeem:

locale -a

Voor het beheer van labels van NTFS schijfpartities kan pakket 'ntfsprogs' gebruikt worden. Dit pakket wordt niet standaard geïnstalleerd en kan worden toegevoegd met de opdracht:

sudo apt-get install ntfsprogs

Voor het gebruik van ntfslabel mag de schijfpartitie NIET gekoppeld zijn.

Om een NTFS label te lezen:

sudo ntfslabel /dev/sdb1

Om het NTFS label te wijzigen:

sudo ntfslabel /dev/sdb1 externe_schijf

hfs+

Het hfs+ type bestandssysteem wordt voornamelijk gebruikt in Apple computers.

/dev/sdb1 /media/Macintosh_HD hfsplus rw,exec,auto,users 0 0

Wijzigen /etc/fstab

Let op!
Voor het maken van een wijziging in een systeembestand moet er een back-up gemaakt worden (de -B optie van nano maakt automatisch een back-up).

In een terminalscherm kan zo een back-up gemaakt worden:

sudo cp /etc/fstab /etc/fstab_oud

PicDocs.png Om een bestand te wijzigen in Ubuntu gebruik een terminalscherm of Alt-F2:

sudo nano -Bw /etc/fstab

Alternatief:

sudo -e /etc/fstab

Bruikbare opdrachten

IconGNOMETerminal.png Gebruik de volgende terminalopdracht om de inhoud te zien van /etc/fstab:

less /etc/fstab

Voor een overzicht van alle UUIDs gebruik de terminalopdracht:

sudo blkid

of

ls -l /dev/disk/by-uuid

Voor een overzicht van alle gelabelde schijfpartities:

ls -l /dev/disk/by-label

Voor een overzicht van alle harde schijven en schijfpartities:

sudo fdisk -l

Om alle partities in /etc/fstab in 1 opdracht te koppelen:

sudo mount -a

En nogmaals: het koppelpunt moet bestaan om te kunnen koppelen. Zo nodig moet het koppelpunt eerst gemaakt worden.

sudo mkdir /pad/naar/koppelpunt_mapnaam
sudo mkdir /media/disk2

Bronnen

IconBook-small.png Dit is een vrije vertaling van https://help.ubuntu.com/community/Fstab

Voor informatie over label identificatie is gebruik gemaakt van de Engelstalige wiki RenameUSBDrive


CategoryOverig

Attached Files

 All files | Selected Files: delete move to page copy to page

2022-09-08 16:55