CodeGym /Kursy /Docker SELF /Montowanie i odmontowywanie systemów plików: mount, umoun...

Montowanie i odmontowywanie systemów plików: mount, umount

Docker SELF
Poziom 6 , Lekcja 3
Dostępny

Montowanie i odmontowywanie systemów plików: mount, umount

1. Czym jest montaż?

Witaj na kolejnym ekscytującym wykładzie o pracy z Linuxem! Dziś porozmawiamy o montażu i odmontowywaniu systemów plików — procesie, który otwiera drzwi do pracy z pendrive'ami, dodatkowymi dyskami twardymi, a nawet magazynami sieciowymi. Nauczymy się, jak skonfigurować automatyczny montaż, aby Twoje dane były dostępne już od startu systemu. A co najważniejsze, wszystko to zrobimy w praktyce!

Montaż — to proces podłączania systemu plików urządzenia (dysk twardy, pendrive, obraz ISO) do drzewa systemu plików Linux. W odróżnieniu od Windows, gdzie widzisz urządzenia jako "D:\" lub "E:\", w Linuxie wszystkie urządzenia „wbudowuje się” w strukturę plików w określonym folderze, zwanym punktem montażu.

Analogicznie: pociąg i stacja

Wyobraź sobie pociąg (urządzenie) i stację kolejową (punkt montażu). Aby ludzie mogli wysiąść na stacji i korzystać z infrastruktury (plików), pociąg musi przybyć na peron i zostać połączony. Mniej więcej tak samo działa montaż urządzenia z jego punktem w Linuxie.


2. Komenda mount

Zaczniemy od komendy, która wykonuje montowanie — mount. To jedna z tych komend, których będziesz używać regularnie, szczególnie jeśli pracujesz z dyskami zewnętrznymi lub magazynami sieciowymi.

Podstawowa składnia

mount [opcje] <urządzenie> <punkt montowania>
  • <urządzenie> — to miejsce, gdzie twoje urządzenie jest podłączone w systemie, na przykład /dev/sdb1. Możesz to znaleźć za pomocą komendy lsblk.
  • <punkt montowania> — folder, w który dane urządzenia będą przekazywane. Na przykład, może to być /mnt/disk.

Przykład podłączenia pendrive'a:

sudo mount /dev/sdb1 /mnt/usb

Po wykonaniu komendy pliki z urządzenia /dev/sdb1 będą dostępne wewnątrz folderu /mnt/usb.

Przydatne opcje komendy mount

  1. Wskazanie systemu plików:

    Jeśli Linux nie rozpoznaje systemu plików urządzenia, użyj flagi -t. Na przykład:

    sudo mount -t ext4 /dev/sdb1 /mnt/usb
    

    To jest przydatne, jeśli używasz rzadkich systemów plików.

  2. Montowanie tylko do odczytu:

    Jeśli chcesz chronić dane urządzenia przed zmianami, użyj opcji -o ro:

    sudo mount -o ro /dev/sdb1 /mnt/usb
    
  3. Montowanie z określeniem kodowania:

    Dla dysków FAT32 lub NTFS czasami trzeba określić kodowanie znaków:

    sudo mount -o iocharset=utf8 /dev/sdb1 /mnt/usb
    

3. Komenda umount

Teraz, gdy podłączyłeś urządzenie, pojawia się pytanie: jak je odłączyć? To ważne, aby Linux „zamknął” wszystkie połączenia z dyskiem i zakończył zapis.

Podstawowa składnia

umount <urządzenie lub punkt montowania>

Przykład dla już podłączonego pendrive'a USB:

sudo umount /mnt/usb

Lub można wskazać samo urządzenie:

sudo umount /dev/sdb1

Co zrobić, jeśli umount nie działa?

Czasami komenda umount może zwrócić błąd: "Device is busy" (urządzenie zajęte). Oznacza to, że ktoś (w kontekście systemu plików) „siedzi na torach”. Może to być ty lub inny program, który aktualnie otworzył plik na tym urządzeniu.

W takich przypadkach pomaga komenda fuser, która pokaże procesy blokujące urządzenie:

fuser -v /mnt/usb

Znalezionego winowajcę możesz zakończyć proces:

kill <ID procesu>

Po tym ponownie wykonaj komendę umount.

Ważne!

Pamiętasz w Windows, jak przed wyciągnięciem pendrive'a trzeba było kliknąć przycisk Wysuń (Eject)? To nic innego jak wykonanie komendy unmount.


4. Automatyczne montowanie przez /etc/fstab

Ręczne montowanie jest wygodne, ale co zrobić, jeśli urządzenie trzeba podłączać przy każdym uruchomieniu systemu? Do tego służy plik /etc/fstab.

Co to jest /etc/fstab?

To plik konfiguracyjny zawierający listę urządzeń, które Linux powinien automatycznie podłączyć. Korzystając z fstab, można ustawić takie parametry, jak typ systemu plików, punkt montowania i prawa dostępu.

Jak dodać urządzenie do /etc/fstab?

  1. Znajdź UUID swojego urządzenia za pomocą komendy blkid:

    sudo blkid
    

    Na przykład urządzenie /dev/sdb1 może mieć UUID 1234-5678.

  2. Otwórz plik /etc/fstab do edycji:

    sudo nano /etc/fstab
    
  3. Dodaj nowy wiersz:

    UUID=1234-5678 /mnt/usb ext4 defaults 0 2
    
    • UUID — unikalny identyfikator twojego urządzenia.
    • /mnt/usb — punkt montowania.
    • ext4 — system plików urządzenia.
    • defaults — domyślne parametry montowania.
    • 0 i 2 — parametry sprawdzania urządzenia podczas uruchamiania (konfigurowalne).
  4. Sprawdź ustawienia, montując urządzenie:

    sudo mount -a
    

Teraz po ponownym uruchomieniu systemu urządzenie będzie podłączane automatycznie.

Ryzyka

⚠️ Jeśli skonfigurujesz /etc/fstab niepoprawnie, system może się nie uruchomić. Zawsze sprawdzaj konfigurację za pomocą:

sudo mount -a

Jeśli nie ma błędów, wszystko działa poprawnie.


5. Przykład: montowanie i odmontowywanie pendrive'a USB

Załóżmy, że podłączyłeś pendrive'a USB, a system rozpoznał go jako /dev/sdb1.

  1. Utwórz punkt montowania:

    sudo mkdir -p /mnt/usb
    
  2. Podłącz pendrive:

    sudo mount /dev/sdb1 /mnt/usb
    
  3. Sprawdź zawartość:

    ls /mnt/usb
    
  4. Po zakończeniu pracy, odłącz urządzenie:

    sudo umount /mnt/usb
    

Teraz urządzenie zostało bezpiecznie odłączone i możesz je wyjąć.


6. Zadanie praktyczne

Zadanie

  1. Podłącz pendrive USB lub dysk wirtualny.
  2. Utwórz punkt montowania /mnt/test-disk.
  3. Zamontuj urządzenie w tym folderze i sprawdź zawartość.
  4. Skonfiguruj montowanie przez /etc/fstab, używając UUID.
  5. Odepnij urządzenie i upewnij się, że ustawienia działają po ponownym uruchomieniu.

Wskazówki

  • Jeśli nie masz urządzenia, utwórz je za pomocą komendy formatowania z poprzedniego wykładu (mkfs.ext4).
  • Sprawdź ustawienia fstab przed ponownym uruchomieniem.

Teraz wiesz, jak montować i odmontowywać urządzenia w Linuxie, automatyzować ich podłączanie przez konfigurację /etc/fstab oraz bezpiecznie diagnozować wszelkie problemy. Montowanie to ważny krok do wygodnej pracy z danymi, a te umiejętności przydadzą się zarówno w projektach domowych, jak i na serwerze w pracy.

Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION