FSTAB(5)

NAZWA
fstab - statyczna informacja o systemach plików

SKŁADNIA

/etc/fstab

OPIS

Plik fstab zawiera opisowe informacje na temat różnych systemów plików, które mogą zostać zamontowane w systemie. fstab jest wyłącznie czytany przez programy i nie jest przez nie zapisywany; prawidłowe utworzenie tego pliku i zarządzanie nim jest obowiązkiem administratora. Kolejność rekordów w pliku fstab jest istotna, ponieważ fsck(8), mount(8) i umount(8), w celu wykonania swoich zadań, dane z pliku fstab pobierają sekwencyjnie.

Plik nie jest odczytywany jedynie przez mount(8), lecz jest używany przez wiele innych narzędzi i demonów, a poprawna funkcjonalność może wymagać podjęcia dodatkowych kroków. Na przykład, w systemach korzystających z systemd, zaleca się wykonać systemctl daemon-reload po zmodyfikowaniu pliku fstab.

Każdy system plików jest opisany w oddzielnym wierszu, z polami rozdzielonymi tabulatorami lub spacjami. Każdy wiersz jest dzielony na pola przed przetworzeniem. Oznacza to, że spacje i tabulatory w polach muszą być chronione za pomocą \040 lub \011, nawet jeśli występują wewnątrz cytowanych łańcuchów (np. LABEL="foo\040bar").

Wiersze rozpoczynające się od znaku "#" są komentarzami. Puste wiersze są ignorowane.

Poniżej przedstawiono typowy przykład wpisu pliku fstab:

    LABEL=t-home2   /home      ext4    defaults,auto_da_alloc      0  2

  Pierwsze pole (fs_spec).

Pole opisuje specjalne urządzenie blokowe, zdalny system plików lub obraz systemu plików do urządzenia pętli (loop) przeznaczony do zamontowania albo plik wymiany lub partycję wymiany do włączenia.

W przypadku zwykłych montowań, będzie to (dowiązanie do) węzła specjalnego urządzenia blokowego (utworzonego przez mknod(2)) do urządzenia do zamontowania, np. /dev/cdrom lub /dev/sdb7. Do montowań NFS będzie to <stacja>:<katalog>, np. knuth.aeb.nl:/. W przypadku systemów, które nie są powiązane z fizycznymi dyskami, można użyć dowolnego łańcucha znaków; łańcuch ten będzie wyświetlany na przykład w wyjściu polecenia df(1). Typowym użyciem jest proc w przypadku systemu plików procfs; mem, none lub tmpfs w przypadku tmpfs. Inne specjalne systemy plików jak udev lub sysfs zazwyczaj nie są wpisywane do pliku fstab.

Zamiast nazwy urządzenia można podać LABEL=<etykieta> lub UUID=<uuid>. Jest to rekomendowana metoda, ponieważ nazwy urządzeń często są przypadkowe lub wynikają z kolejności, w jakiej system wykrywa urządzenia, i mogą się zmienić, kiedy inne dyski są dodawane lub usuwane. Przykłady: "LABEL=Boot" lub "UUID=3e6be9de-8139-11d1-9106-a43f08d823a6" (aby ustawić etykietę dysku, prosimy używać narzędzi odpowiednich dla danego systemu plików, na przykład e2label(8), xfs_admin(8) lub fatlabel(8)).

Jest także możliwe użycie PARTUUID= oraz PARTLABEL=. Te identyfikatory partycji są obsługiwane na przykład przez GUID Partition Table (GPT).

Więcej szczegółów o identyfikatorach urządzeń można znaleźć w podręcznikach mount(8), blkid(8) lub lsblk(8).

Proszę zauważyć, że mount(8) używa UUID-ów jako łańcuchów (ciągów), dlatego UUID-y powinny zawierać małe litery. Jednak gdy podaje się identyfikatory woluminów w systemach plików FAT lub NTFS, używane są wielkie litery (np. UUID="A40D-85E7" lub UUID="61DB7756DB7779B3").

  Drugie pole (fs_file).

To pole wskazuje na miejsce, w którym ma być zamontowany (docelowy) dany system plików. Dla przestrzeni wymiany (ang. "swap area") to pole powinno zawierać wartość "none". Jeśli nazwa punktu montowania zawiera spacje lub tabulatory, można je zapisać jako, odpowiednio, "\040" i "\011".

  Trzecie pole (fs_vfstype).

To pole opisuje typ systemu plików. Linux obsługuje wiele różnych systemów plików, między innymi: ext4, xfs, btrfs, f2fs, vfat, ntfs, hfsplus, tmpfs, sysfs, proc, iso9660, udf, squashfs, nfs, cifs i inne. Więcej informacji w podręczniku mount(8).

Wpis swap oznacza plik lub partycję używaną jako partycję wymiany, por. swapon(8). Wpis none jest przeznaczony do przenoszenia montowań lub do montowań używających podpięcia (bind).

Można podać więcej niż jeden typ, oddzielając je od siebie przecinkami.

Programy mount(8) i umount(8) obsługują podtypy systemów plików. Podtypy są definiowane przyrostkiem ".podtyp". Przykładowo "fuse.sshfs". Zalecane jest używanie notacji podtypów zamiast dodawać jakieś przedrostki do pierwszego pola fstab (np. "sshfs#example.com" jest przestarzałe).

  Czwarte pole (fs_mntops).

Pole opisuje opcje montowania związane z danym systemem plików.

Jest sformatowane jako lista opcji oddzielonych przecinkami i jest opcjonalne w przypadku mount(8) lub swapon(8). Typową konwencją jest podanie przynajmniej słowa kluczowego "defaults".

Zawiera zwykle typ montowania (ro lub rw, domyślne jest rw) oraz dodatkowe opcje (włączając w to opcje ustawiania wydajności), odpowiednie do danego typu systemu plików. Szczegóły można znaleźć w podręczniku mount(8) lub swapon(8).

Podstawowe, niezależne od systemu plików opcje to:

defaults
    używa opcji domyślnych. Wartości domyślne zależą od jądra i systemu plików. mount(8) nie posiada żadnych ustawionych na sztywno opcji domyślnych. Opcje domyślne jądra to zwykle: rw, suid, dev, exec, auto, nouser i async.

noauto
    nie montuje, gdy podane jest mount -a (np. w czasie rozruchu systemu)

user
    pozwala na montowanie przez użytkownika

owner
    pozwala na montowanie przez właściciela urządzenia

comment
    lub x-<nazwa> do użycia przez programy zarządzające plikiem fstab

nofail
    nie informuje o błędach urządzenia, jeśli ono nie istnieje.

  Piąte pole (fs_freq).

Pole jest używane przez komendę dump(8), aby wykryć, który system plików ma być zrzucony. Jeżeli pole jest nieobecne, to domyślną wartością jest zero (nie zrzuca).

  Pole szóste (fs_passno).

Pole jest używane przez program fsck(8) aby zadecydować, jaka powinna być kolejność sprawdzania systemów plików podczas ładowania systemu. Główny system plików powinien mieć fs_passno równą 1, inne zaś systemy plików powinny mieć fs_passno równe 2. Systemy plików w obrębie dysku będą sprawdzane po kolei, natomiast systemy plików na różnych dyskach będą sprawdzane jednocześnie, aby wykorzystać wielozadaniowość udostępnianą przez sprzęt. Jeżeli nie podano szóstego pola, to wartością domyślną jest zero (system plików nie musi być sprawdzany).

PLIKI

/etc/fstab, <fstab.h>

UWAGI

Aby poprawnie czytać pola z fstab należy używać getmntent(3) lub libmount.

Narzędzie mount oparte na czystej bibliotece libmount nie obsługuje już (od wersji 2.22 pakietu util-linux) słowa kluczowego ignore podanego jako typ systemu plików (tj. w trzecim polu).

Niniejszy dokument opisuje obsługę fstab przez util-linux i libmount. W przypadku systemd, należy zapoznać się z dokumentacją systemd. Występują pomniejsze różnice.

HISTORIA

Poprzednik tego formatu pliku fstab pojawił się w 4.0BSD.

ZOBACZ TAKŻE

getmntent(3), fs(5), findmnt(8), mount(8), swapon(8)

ZGŁASZANIE BŁĘDÓW

Problemy należy zgłaszać w

DOSTĘPNOŚĆ

Plik konfiguracyjny fstab jest częścią pakietu util-linux, który można pobrać ze strony