2022-05-24-12-05-35-urzadzenia-pamieci-masowej-w-systemie-linux.png

Urządzenia pamięci masowej w Linuksie

W obecnych systemach linuksowych operacja ręcznego montowania jest rzadko stosowana. W większości wypadków urządzenia montowane są automatycznie przez system dlatego niektórzy użytkownicy nie mają pojęcia w jaki sposób można zrobić to ręcznie. Jednak warto zapytać czy pomimo takiej automatyzacji nadal ta umiejętność się przydaje? Osobiście uważam, że tak. Zawsze zdarzyć się może błąd przy automatycznym montowaniu i zaistnieje potrzeba wykonania tej czynności ręcznie.

Natomiast uważam za plus, wprowadzenie opcji automatyzacji, szczególnie w systemach Linux. Otóż to, że po włożeniu pendrive czy też włożeniu płyty CD nic się nie działo było dość kłopotliwe dla początkujących użytkowników Linuksa. Na szczęście mamy to już za sobą i tylko w sporadycznych sytuacjach musimy korzystać z rozwiązania które chcę dalej zaprezentować. Niemniej jednak nim przejdę do praktycznej części chciałbym przekazać Ci trochę informacji na temat gdzie te urządzenia się znajdują i w jaki sposób możemy zasięgnąć trochę informacji o nich.

W systemach Linux nie ma czegoś takiego jak partycja C:, D: lecz używana jest struktura drzewiasta która rozpoczyna się od katalogu głównego /. W tym katalogu głównym odnajdujemy wszystkie foldery oraz pliki, natomiast na łamach tego artykułu zajmę się tylko katalogiem /dev.

Musisz wiedzieć, że w systemach Linux każde urządzenie jest reprezentowane przez plik. Wszystkie pliki podłączonych urządzeń znajdują się we wcześniej wspomnianym katalogu /dev. Zresztą jak zapewne sam się domyślasz skrót dev w rozwinięciu z języka angielskiego oznacza device czyli urządzenie.

Ważne jest również rozróżnienie urządzeń podłączonych, a zamontowanych. Otóż po włożeniu pendriva do portu USB to urządzenie zostaje wykryte przez system i albo automatycznie zamontowane, albo będzie dodane do katalogu dev jako tylko podłączone, czyli widoczne w systemie.

W konsoli wpisz polecenie wyświetlające zawartość katalogu jak w przykładzie poniżej:

ls /dev

Wyniku nie będę wklejał ponieważ będzie on dość obszerny jak i również na pewno będzie różnił się od twojego. Ważne jest byś poznał jak wiele urządzeń zawiera ten katalog, oraz jak każde z nich od procesora po dysk jest rozpoznawalne jako plik.

W tym artykule zajmę się tylko i wyłącznie urządzeniami pamięci masowej. Na samym początku wyjaśnijmy jak system po rozpoznaniu, nazywa takie urządzenia.

Pierwszy podział jaki chcę zaprezentować dotyczy nazewnictwa dysków. Jak wiadomo często zdarza się, że nie posiadamy tylko jednego dysku podłączonego do urządzenia. W systemie Linux mają one określoną hierarchię którą prezentuję poniżej:

  • sda – pierwszy dysk
  • sdb – drugi dysk
  • sdc – trzeci dysk
  • itd.

Dysk SATA zawsze reprezentowany jest jako sd, następnie dodawana jest litera alfabetu, rozpoczynając od a.

Kiedyś systemy Linux przedstawiały dyski jako hd. Jeszcze można spotkać tego typu etykietę dlatego postanowiłem jedno zdanie o tym napisać.

Dla przykładu do swojego komputera domowego podłączony mam dysk zewnętrzny oraz pendrive. Oczywiście nie zapominajmy o dysku na którym zainstalowany jest system Linux. Spójrzmy na poniższe polecenie:

ls /dev/sd?
/dev/sda  /dev/sdb  /dev/sdc

Zgodnie z tym co napisałem powyżej wyświetliło trzy dyski, nazywając je w kolejności alfabetycznej.

Każdy z tych dysków może być podzielony na jedną lub kilka partycji. Tutaj często spotykam się z brakiem rozróżnienia pomiędzy tymi dwoma pojęciami dlatego pozwolę sobie w skrócie wskazać różnicę pomiędzy nimi:

  • Dysk jest to urządzenie, a partycja jest to wydzielone miejsce na tym urządzeniu.
  • Każda partycja posiada swój odrębny plik w katalogu /dev.

Wyświetlmy dyski oraz ich partycje:

ls -l /dev/sd*
brw-rw---- 1 root disk 8,  0 maj 19 20:34 /dev/sda
brw-rw---- 1 root disk 8,  1 maj 19 20:34 /dev/sda1
brw-rw---- 1 root disk 8,  3 maj 19 20:34 /dev/sda3
brw-rw---- 1 root disk 8,  5 maj 19 20:34 /dev/sda5
brw-rw---- 1 root disk 8,  6 maj 19 20:34 /dev/sda6
brw-rw---- 1 root disk 8, 16 maj 19 22:18 /dev/sdb
brw-rw---- 1 root disk 8, 17 maj 19 22:18 /dev/sdb1
brw-rw---- 1 root disk 8, 32 maj 19 22:18 /dev/sdc
brw-rw---- 1 root disk 8, 33 maj 19 22:18 /dev/sdc1

W tym przykładzie pozwoliłem sobie skorzystać z opcji -l polecenia ls ponieważ wynik jest bardziej czytelny.

W przypadku stworzonej partycji dodawana jest liczba do nazwy pliku. Na dysku na którym stoi mój system mam cztery partycje, natomiast na dysku zewnętrznym oraz pendrive po jednej.

Teraz sprawdźmy które partycje z wymienionych mam zamontowane. Skorzystajmy z polecenia jak w poniższym przykładzie:

df | grep /dev/sd
/dev/sda6      229645644 177686440  40224116  82% /
/dev/sdb1      976759804 652350256 324409548  67% /media/nois/ADATA HD650
/dev/sdc1       15343584    223720  15119864   2% /media/nois/96BE-695D

Pierwsza partycja jest to partycja na której mam zainstalowany system, druga to mój dysk zewnętrzny, a trzecia to pendrive. Zajmijmy się pozycją ostatnią i zobaczmy w jaki sposób możemy odmontować pendrive od systemu:

umount /dev/sdc1

W ten sposób odmontowaliśmy pendriva z naszego systemu. Aby potwierdzić wpiszmy ponownie poprzednie polecenie:

df | grep /dev/sd
/dev/sda6      229645644 177686464  40224092  82% /
/dev/sdb1      976759804 652350256 324409548  67% /media/nois/ADATA HD650 

Na liście urządzeń zamontowanych nie pojawia się, dlatego możemy udało się odmontować pendrive. Nie odłączyłem go od komputera dlatego sprawdźmy czy nadal widnieje w katalogu dev:

ls /dev/sdc1
/dev/sdc1

Podsumowując nie został usunięty pomimo odmontowania. W związku z tym jesteśmy w stanie ponownie go zamontować, a robimy to tak jak w poniższym przykładzie:

mount /dev/sdc1 /media
mount: tylko root może to zrobić

Pomimo automatycznego montowania przez system nadal aby zamontować urządzenie musimy mieć uprawnienia administratora, niemniej jednak aby je odmontować już nie. Nasze polecenie wzbogacimy o sudo i wszystko powinno działać:

sudo mount /dev/sdc1 /media

Jeżeli nie otrzymałeś żadnej informacji zwrotnej oznacza to, że z powodzeniem zamontowałeś urządzenie.

Zwróć uwagę, że na początku określiłem urządzenie z katalogu dev które chcę zamontować, a następnie określiłem miejsce montowania. Dawniej wybierano katalog /mnt jako punkt montowania obecnie najczęściej wpisuje się /media. Oczywiście nic nie stoi na przeszkodzie by zrobić inaczej.

Pamiętaj jednak, że jeżeli w folderze /media nie utworzysz katalogu, na przykład sdc1 to pendrive zostanie zamontowany bezpośrednio w tym folderze. Niesie to za sobą pewne konsekwencje ponieważ zostaną odmontowane wszystkie pozostałe urządzenia nie wliczając w to partycji systemowych. Ma to związek z tym, że system automatycznie montujący urządzenia pamięci masowej w tym katalogu umieszcza je wszystkie, dlatego jeżeli bezpośrednio w nim zamontujesz to usuniesz wszystko co się w nim znajduje.

Rozwiązania tego problemu są dwa. Pierwsze z nich polega na stworzeniu katalogu bezpośrednio w /media na przykład /media/dysk1 lub stworzeniu folderu w katalogu /tmp/dysk1 i tam przekierować punkt montowania. Rozwiązanie numer dwa wydaje mi się bardziej praktyczne ponieważ w katalogu temp (tmp) znajdują się pliki i foldery tymczasowe, a my tymczasowo potrzebujemy zamontować urządzenie. W razie jakichś wątpliwości poniżej pokazuje przykład krok po kroku jak zamontować urządzenie korzystając z drugiej opcji:

sudo mkdir /tmp/dysk1
sudo mount /dev/sdc1 /tmp/dysk1

Aby potwierdzić, że nasze urządzenie zostało właściwie zamontowane wpiszmy ponownie polecenie do wyświetlenia zamontowanych urządzeń:

df | grep /dev/sd
/dev/sda6      229645644 177710308  40200248  82% /
/dev/sdb1      976759804 652350256 324409548  67% /media/nois/ADATA HD6501
/dev/sdc1       15343584    223720  15119864   2% /tmp/dysk1

Jak można zauważyć w powyższym przykładzie, dysk zewnętrzny nadal jest zamontowany w tym samym miejscu co był. Natomiast w przypadku pendrive punkt montowania jest już w katalogu /tmp.

Mam nadzieję, że po przeczytaniu tego artykułu z montowaniem urządzeń w systemie Linux nie będziesz miał już problemów. Powyższe przykłady zostały przetestowane w systemie Linux Mint Una, ale każde z poleceń powinno działać identycznie niezależnie od systemu na jakim pracujesz.

Udostępnij

Porozmawiajmy o Twoich potrzebach

POROZMAWIAJMY O USŁUGACH, JAKICH POTRZEBUJESZ DLA SWOJEGO BIZNESU

Z chęcia pomożemy Ci wzrastać w wybranym przez Ciebie biznesie.