Jak edytować i rozumieć / etc / fstab

Jak edytować i rozumieć / etc / fstab - 1.1

Jest plik o nazwie /etc/fstab w systemie Linux. Dowiedz się, co oznacza jego zawartość i jak jest używana w połączeniu z mount dowództwo. Kiedy nauczysz się rozumieć fstab będziesz mógł samodzielnie edytować jego zawartość.

W tym pliku tuX zakładam, że już wiesz, jak zamontować systemy plików i partycje za pomocą mount Komenda. Jeśli nie, sugeruję przeczytanie Montażu pliku tuX przed przeczytaniem tego.

 

Co to jest fstab i dlaczego jest przydatny

fstab to plik konfiguracyjny zawierający informacje o wszystkich partycjach i urządzeniach pamięci masowej w komputerze. Plik znajduje się pod /etc, więc pełna ścieżka do tego pliku to /etc/fstab.

/etc/fstab zawiera informacje o tym, gdzie należy zamontować partycje i urządzenia magazynujące oraz jak. Jeśli nie możesz uzyskać dostępu do partycji Windows z systemu Linux, nie możesz zamontować dysku CD lub pisać na dyskietce jako zwykły użytkownik lub masz problemy z dyskiem CD-RW, prawdopodobnie masz źle skonfigurowany /etc/fstab plik. Zazwyczaj możesz rozwiązać problemy z montażem, edytując swoje fstab plik.

/etc/fstab to zwykły plik tekstowy, więc możesz go otwierać i edytować w dowolnym znanym Ci edytorze tekstu. Pamiętaj jednak, że przed edycją musisz mieć uprawnienia roota fstab. Aby edytować plik, musisz się zalogować jako root lub użyć su polecenie, aby stać się rootem.

Przegląd pliku >

Oczywiście każdy ma trochę inne zdanie /etc/fstab plik, ponieważ partycje, urządzenia i ich właściwości są różne w różnych systemach. Ale podstawowa struktura fstab jest zawsze taka sama. Oto przykład zawartości /etc/fstab:

/ dev / hda2 / ext2 Domyślnie 1 1
/ dev / hdb1 / Home ext2 Domyślnie 1 2
/ dev / cdrom / media / cdrom samochód ro, noauto, user, exec 0 0
/ dev / fd0 / media / floppy samochód rw, noauto, user, sync 0 0
proc / proc proc Domyślnie 0 0
/ dev / hda1 zamiana zamiana pri = 42 0 0

Co oznacza ten cały bełkot? Jak widać, każda linia (lub wiersz) zawiera informacje o jednym urządzeniu lub partycji. Pierwsza kolumna zawiera nazwę urządzenia, druga jego punkt montowania, trzecia typ systemu plików, czwarta opcje montowania, piąta (liczba) opcje zrzutu i szósta (inna liczba) opcje sprawdzania systemu plików. Przyjrzyjmy się bliżej tym rzeczom.

Kolumny 1st i 2nd: Urządzenie i domyślny punkt montowania >

Pierwsza i druga kolumna powinny być całkiem proste. Mówią mount polecenia dokładnie te same rzeczy, które ty powiedzieć mount kiedy montujesz rzeczy ręcznie: jakie jest urządzenie lub partycja i jaki jest punkt montowania. Punkt podłączenia określony dla urządzenia w /etc/fstab jest jego domyślnym punktem montowania. Jest to katalog, w którym urządzenie zostanie zamontowane, jeśli nie określisz innego punktu montowania podczas montowania urządzenia.

Jak już nauczyłeś się z Montowanie pliku tuX, większość dystrybucji Linuksa tworzy specjalne katalogi dla punktów montowania. Większość dystrybucji tworzy je w ramach /mnt, ale niektóre (przynajmniej SuSE) pod /media. Jak zapewne zauważyłeś, patrząc na przykład fstab, Używam punktów montowania SuSE jako przykładu.

Co to wszystko znaczy? Jeśli wpiszę następujące polecenie:
mount /dev/fd0
… Moja dyskietka zostanie zamontowana /media/floppy, ponieważ jest to domyślny punkt podłączenia określony w /etc/fstab. Jeśli nie ma wpisu dla /dev/fd0 w moim fstab kiedy wydam powyższe polecenie, mount jest bardzo zdezorientowany, ponieważ nie wie, gdzie zamontować dyskietkę.

Możesz dowolnie zmieniać domyślne punkty montowania wymienione w /etc/fstab jeśli nie jesteś zadowolony z ustawień domyślnych, które dała ci twoja dystrybucja. Po prostu upewnij się, że punkt montowania jest katalogiem, który już istnieje w twoim systemie. Jeśli tak się nie stanie, po prostu go utwórz.

Niektóre partycje i urządzenia są również automatycznie montowane po uruchomieniu systemu Linux. Na przykład spójrz na przykład fstab powyżej. Są wiersze, które wyglądają tak:

/dev/hda2 / ext2 defaults 1 1
/dev/hdb1 /home ext2 defaults 1 2

Jak się nauczyłeś, te wersety to oznaczają /dev/hda2 zostanie zamontowany do / i /dev/hdb1 do /home. Odbywa się to automatycznie po uruchomieniu systemu Linux ... gdyby tak się nie stało, miałbyś trudności z używaniem swojego fajnego systemu Linux, ponieważ wszystkie używane programy są w / i nie byłbyś w stanie ich uruchomić, gdyby / nie był zamontowany! Ale skąd system wie, gdzie chcesz zamontować /dev/hda2 i /dev/hdb1? Patrząc na /etc/fstab plik oczywiście.

Kolumna 3rd: Typ systemu plików >

Trzecia kolumna w /etc/fstab określa typ systemu plików urządzenia lub partycji. Obsługiwanych jest wiele różnych systemów plików, ale przyjrzymy się tylko najpopularniejszym.

ext2 i ext3 Bardzo prawdopodobne, że Twoje partycje Linuksa to Ext3. Ext2 był kiedyś standardowym systemem plików dla Linuksa, ale obecnie Ext3 i ReiserFS są zwykle domyślnymi systemami plików dla prawie każdej nowej dystrybucji Linuksa. Ext3 to nowszy typ systemu plików, który różni się od Ext2 tym, że jest księgowaneco oznacza, że ​​jeśli wyłączysz komputer bez prawidłowego wyłączenia, nie powinieneś stracić żadnych danych, a twój system nie powinien spędzać lat na sprawdzaniu systemu plików przy następnym uruchomieniu.

reiserfs Twoje partycje Linuksa mogą być bardzo dobrze sformatowane jako ReiserFS. Podobnie jak Ext3, ReiserFS jest systemem plików z księgowaniem, ale jest znacznie bardziej zaawansowany niż Ext3. Wiele dystrybucji Linuksa (w tym SuSE) zaczęło używać ReiserFS jako domyślnego systemu plików dla partycji Linuksa.

zamiana Nazwa systemu plików jest oczywista. W partycjach wymiany używany jest typ systemu plików „swap”.

vfat i ntfs Twoja pamięć USB jest najprawdopodobniej sformatowana jako Vfat (szerzej znany jako FAT32). Twoje partycje Windows to prawdopodobnie Vfat lub NTFS. Wszystkie serie 9x (95, 98, ME) używają Vfat, a seria NT (NT, 2000, XP, Vista, 7) używa NTFS, ale mogą być także sformatowane jako Vfat.

samochód Nie, to nie jest typ systemu plików 🙂 Opcja „auto” oznacza po prostu, że typ systemu plików jest wykrywany automatycznie. Jeśli spojrzysz na przykład fstab powyżej zobaczysz, że dyskietka i CD-ROM mają „auto” jako typ systemu plików. Czemu? Ich typ systemu plików może się różnić. Jedna dyskietka może być sformatowana dla systemu Windows, a druga dla systemu Linux Ext2. Dlatego rozsądnie jest pozwolić systemowi automatycznie wykryć typ systemu plików nośnika, taki jak dyskietki i płyty CD.

4th kolumna: opcje montażu >

Czwarta kolumna w fstab wyświetla listę wszystkich opcji montowania urządzenia lub partycji. Jest to również najbardziej myląca kolumna w fstab plik, ale wiedząc, co oznaczają niektóre z najczęstszych opcji, oszczędza ci dużego bólu głowy. Tak, dostępnych jest wiele opcji, ale przyjrzę się tylko najczęściej używanym. Aby uzyskać więcej informacji, sprawdź stronę podręcznika man mount.

auto i noauto Z auto opcja, urządzenie zostanie zamontowane automatycznie (przy starcie, tak jak powiedziałem ci nieco wcześniej, lub gdy wydajesz mount -a dowództwo). auto jest opcją domyślną. Jeśli nie chcesz, aby urządzenie było montowane automatycznie, użyj noauto opcja w /etc/fstab. Z noauto, urządzenie można zamontować tylko jawnie.

użytkownik i użytkownik Są to bardzo przydatne opcje. The user opcja pozwala normalnym użytkownikom zamontować urządzenie, podczas gdy nouser pozwala tylko rootowi zamontować urządzenie. nouser jest wartością domyślną, która jest główną przyczyną bólu głowy dla nowych użytkowników Linuksa. Jeśli nie możesz zamontować swojego cdromu, dyskietki, partycji Windows lub czegoś innego jako zwykły użytkownik, dodaj rozszerzenie user opcja do /etc/fstab.

exec i noexec exec pozwala na wykonywanie binariów znajdujących się na tej partycji, podczas gdy noexec nie pozwala ci tego zrobić. noexec może być przydatne w przypadku partycji zawierającej pliki binarne, których nie chcesz uruchamiać w systemie lub których nie można nawet wykonać w systemie. Może tak być w przypadku partycji Windows.

exec jest opcją domyślną, co jest dobrą rzeczą. Wyobraź sobie, co by się stało, gdybyś przypadkowo użył noexec opcja z partycją główną systemu Linux…

ro Zamontuj system plików tylko do odczytu.

rw Zamontuj system plików do odczytu i zapisu. Ponownie, użycie tej opcji może wyleczyć ból głowy wielu nowych użytkowników Linuksa, którzy wyrywają sobie włosy, ponieważ nie mogą pisać na dyskietkach, partycjach systemu Windows lub czegokolwiek innego.

sync i async Jak należy wykonać wejście i wyjście do systemu plików. sync oznacza, że ​​jest to wykonywane synchronicznie. Jeśli spojrzysz na przykład fstabzauważysz, że jest to opcja używana z dyskietką. Mówiąc prostym językiem, oznacza to, że kiedy na przykład kopiujesz plik na dyskietkę, zmiany są fizycznie zapisywane na dyskietce w w tym samym czasie wydajesz polecenie kopiowania.

Jeśli jednak masz async opcja w /etc/fstab, wejście i wyjście odbywa się asynchronicznie. Teraz, gdy kopiujesz plik na dyskietkę, zmiany mogą być zapisane fizycznie na długi czas po wydanie polecenia. Nie jest to złe i czasami może być korzystne, ale może powodować nieprzyjemne wypadki: jeśli po prostu wyjmiesz dyskietkę bez jej uprzedniego odmontowania, skopiowany plik może jeszcze fizycznie nie istnieć na dyskietce!

async jest domyślne. Jednak rozsądne może być użycie sync z dyskietką, zwłaszcza jeśli jesteś przyzwyczajony do sposobu, w jaki robi się to w systemie Windows i masz tendencję do usuwania dyskietek przed ich pierwszym odmontowaniem.

Domyślnie Używa domyślnych opcji, takich jak rw, suid, dev, exec, auto, nouser i async.

Kolumny 5th i 6th: opcje Dump i fsck >

Dump i, uh, co opcje? Cóż, dump to narzędzie do tworzenia kopii zapasowych, a fsck to narzędzie do sprawdzania systemu plików. Nie będę omawiać ich tutaj zbyt długo (oboje potrzebowaliby własnego pliku tuX), ale wspomnę o nich, ponieważ w przeciwnym razie spędzilibyście resztę dnia zastanawiając się, co to znaczy na zielonej Ziemi Boga.

Kolumna 5th w /etc/fstab jest opcją zrzutu. Dump sprawdza to i na podstawie numeru decyduje, czy należy wykonać kopię zapasową systemu plików. Jeśli jest zero, dump zignoruje ten system plików. Jeśli spojrzysz na przykład fstabzauważysz, że w większości przypadków piąta kolumna ma wartość zero.

Szósta kolumna to opcja fsck. fsck sprawdza liczbę w szóstej kolumnie, aby określić, w jakiej kolejności należy sprawdzać systemy plików. Jeśli wynosi zero, fsck nie sprawdzi systemu plików.

Przykład wpisów / etc / fstab >

Jako przykład przyjrzymy się kilku z nich fstab wpisy, które były źródłem niekończącej się frustracji dla nowych użytkowników Linuksa: dyskietki i CD-ROM (chociaż obecnie dyskietki nie są już takie ważne).

/dev/fd0 /media/floppy auto rw,noauto,user,sync 0 0

Ta linia oznacza, że ​​dyskietka jest zamontowana /media/floppy domyślnie i jego typ systemu plików jest wykrywany automatycznie. Jest to przydatne, ponieważ typ dyskietki może być nieufny. Zwróć uwagę zwłaszcza na rw i użytkownikopcje: muszą tam być, jeśli chcesz mieć możliwość montowania i zapisywania na dyskietce jako zwykły użytkownik. Jeśli masz z tym problemy, sprawdź swoje fstab plik, aby zobaczyć, czy te opcje są. Zwróć także uwagę na synchronizować opcja. Może być równie dobrze asynchroniczny, ale jest synchronizowany z powodów omówionych nieco wcześniej.

/dev/cdrom /media/cdrom auto ro,noauto,user,exec 0 0

Zwróć uwagę, ponownie użytkownik opcja umożliwiająca zamontowanie dysku CD jako zwykły użytkownik. CD-ROM ma opcję ro, ponieważ nie ma sensu montować dysku CD-ROM do odczytu i zapisu, ponieważ i tak nie byłbyś w stanie na nim pisać. Zwróć także uwagę na exec opcja. Jest to szczególnie przydatne, jeśli chcesz mieć możliwość wykonania czegoś z płyty CD.

Zauważ również, że noauto opcja jest używana z dyskietką i CD-ROM. Oznacza to, że nie zostaną one automatycznie zamontowane po uruchomieniu systemu Linux. Jest to przydatne w przypadku nośników wymiennych, ponieważ czasami po uruchomieniu systemu nie ma dyskietki ani dysku CD-ROM, więc nie ma powodu, aby próbować montować coś, co w ogóle nie istnieje.