Automatycznie montuj urządzenia USB na Raspberry PI

Ten artykuł został opublikowany przez Hej nasz foro

W Raspberry, jeśli nie używasz interfejsu graficznego, irytujące jest ciągłe montowanie naszej pamięci USB. Ponadto w procesie automatyzacji tej czynności (co pokazuję poniżej) możesz dowiedzieć się trochę o tym, jak Linux obsługuje urządzenia.

Zainstaluj autofs i udev

Pierwszą rzeczą, którą zamierzamy zrobić, jest instalacja autofs y udev

sudo apt-get zainstaluj autofs udev

udev to narzędzie jądra Linuksa odpowiedzialne za zarządzanie katalogiem / dev, w którym znajdują się wszystkie urządzenia. Autofs pozwala nam, po skonfigurowaniu, automatycznie montować i odmontowywać, gdy tylko USB zostanie podłączony lub odłączony.

Pierwszą rzeczą, którą zrobimy, jest podłączenie naszej pamięci USB (będę używać marki Kingston) w naszym komputerze / Raspberry Pi. Następnie wykonujemy:

sudo fdisk-l

będzie miał wynik podobny do tego:

Dysk / dev / mmcblk0: 15.7 GB ... Początek rozruchu urządzenia System id bloków końcowych / dev / mmcblk0p1 2048 1607421 802687 e W95 FAT16 (LBA) / dev / mmcblk0p2 1613824 30613503 14499840 85 Linux rozszerzony / dev / mmcblk0p3 30613504 30679039 32768 Linux … .. Dysk / dev / sda: 83 GB ... Początek rozruchu urządzenia Koniec System Id bloków / dev / sda30.9 1 2048 60436479 c W30217216 FAT95 (LBA)

Moja zewnętrzna pamięć USB ma 30.9 GB (tj. Jest to / dev / sda1), podczas gdy pamięć SD, na której mam zainstalowany Linux ma 15.7 GB.

Zasady niestandardowe w udev

Wiedząc, że sda1 jest naszym urządzeniem, użyjemy udev do wyodrębnienia informacji z pamięci, więc wykonujemy następujące polecenie:

informacje udevadm -a -p $ (informacje udevadm -q ścieżka -n / dev / sda1)

będą tam bloki oddzielone frazą „patrząc na urządzenie nadrzędne” / urządzenia /… .. ”

aby nieco ułatwić wyszukiwanie, możemy użyć grep, więc wykonuję następujące czynności:

udevadm info -a -p $ (udevadm info -q ścieżka -n / dev / sda1) | producent grep

w moim przypadku, ponieważ moja pamięć to Kingston, wynik to:

    ATTRS {producent} == "Kingston" # 1 ATTRS {producent} == "Linux 3.12.28+ dwc_otg_hcd"

lub możemy również wyszukać:

udevadm info -a -p $ (udevadm info -q ścieżka -n / dev / sda1) | grep model udevadm info -a -p $ (udevadm info -q ścieżka -n / dev / sdd1) | dostawca grep

Jestem zainteresowany:

ATTRS {Manufacturer} == "Kingston"

Jak to był pierwszy zbieg okoliczności. W danych wyjściowych polecenia udewadm Szukam bloku, w którym pojawia się po raz pierwszy „ATTRS {producent}”

Biorę pewne dane, które uważam za unikalne z urządzenia bloku, w moim przypadku:

   ATTRS {produkt} == "xxx" ATTRS {serial} == "xxxx" STEROWNIKI == "usb"

musisz tylko stworzyć zasady. Tworzymy plik zakończony w .rules w udev:

sudo nano /etc/udev/rules.d/personal.rules

wewnątrz pliku, który umieściliśmy

ATTRS {produkt} == "xxx", ATTRS {serial} == "xxx", STEROWNIKI == "usb", SYMLINK + = "miusb"

Teraz, kiedy podłączę mój usb, będzie plik / dev / miusb. To była najtrudniejsza część.

Konfigurowanie autofs

Wykonujemy:

sudo nano / etc / default / autofs

gdzie jest napisane „TIMEOUT =” umieszczają „TIMEOUT = 1”

Przejdźmy do /etc/auto.master

nano /etc/auto.master

a wewnątrz pliku umieściliśmy w ostatniej linii:

/ media /etc/auto.misc

teraz przechodzimy do /etc/auto.misc

nano /etc/auto.master

aw ostatnim wierszu piszemy:

mymemory -fstype = vfat, users, rw, umask = 000: / dev / miusb

na koniec sprawiamy, że ładuje moduł autofs na początku:

sudo nano / etc / modules

aw ostatnim wierszu piszemy:

autofs4

i voila, ponownie uruchamiamy Raspberry. Pamiętaj, że folder nie istnieje w / media, ale kiedy robimy plik

cd / media / pamięć

jesteśmy już w środku. A jeśli przestaniemy go używać, folder znika i możemy usunąć urządzenie bez ręcznego odmontowywania.


5 komentarzy, zostaw swoje

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.

  1.   Hej powiedział

    dzięki za wysłanie go 🙂

  2.   Paweł powiedział

    Myślę, że jest błąd, na etapie edycji auto.misc auto.master jest napisane w kodzie, na wypadek gdyby jakiś frajer to zrobił i nie zdaje sobie sprawy z da

  3.   Fernando Diaz powiedział

    Dzięki, po prostu chciałem to zrobić na Raspbian, wcześniej używałem Arch i było łatwiej.

  4.   Azureus powiedział

    Bardzo dobrze, dostałem to, kiedy umieściłem moje Pi jako klienta torrentowego z katalogami współdzielonymi przez sambę.
    Podręcznik fstab mówi, że czymś nieco bardziej niezawodnym jest sprawdzenie etykiety urządzenia za pomocą # blkid, w moim przypadku mam automatycznie montowaną partycję systemu Windows przy każdym uruchomieniu w następujący sposób:

    / Dev / sda2
    UUID = 24A0729FA07276E0 / home / azureus / Windows ntfs auto, wartości domyślne 0 2

    na malinie mam zamontowany LVM, konfiguracji nie pamietam dobrze.
    Zgodnie z instrukcją, możesz użyć # fdisk -l, aby uzyskać numer i literę dysku oraz # blkid, aby dowiedzieć się, która etykieta odpowiada któremu napędowi.

    Pozdrowienia.

    1.    Azureus powiedział

      [Aktualizacja]
      Ta etykieta wynika z faktu, że są ludzie (tacy jak ja), którzy czują się leniwi, odłączając wolumin za każdym razem, gdy komputer jest wyłączony, problem występuje, gdy masz kilka woluminów, ponieważ nie zawsze są one montowane w tej samej kolejności po kilku ponownych uruchomieniach . Nawiasem mówiąc, ma to wadę, gdy usuwane jest urządzenie odpowiadające przypisanej etykiecie do automount, generuje błąd i nie pozwala na załadowanie / home w przypadku zamontowania partycji w domu. Można to rozwiązać, komentując urządzenie powodujące konflikty w fstab lub ponownie podłączając urządzenie