Автоматично монтувати USB-пристрої на Raspberry PI

Ця стаття опублікована привіт наші форум

У Raspberry, якщо ви не використовуєте графічний інтерфейс, стає неприємно постійно монтувати нашу пам’ять USB. Крім того, в процесі автоматизації цієї дії (що я покажу нижче) ви можете дізнатися трохи про те, як Linux обробляє пристрої.

Встановіть autofs та udev

Перше, що ми збираємося зробити, це встановити автоф y удев

sudo apt-get встановити autofs udev

udev - це інструмент ядра Linux, який відповідає за управління каталогом / dev, де знаходяться всі пристрої. І autofs дозволяє нам, після налаштування, все монтувати та демонтувати автоматично, як тільки usb підключається або відключається.

Перше, що ми зробимо, це підключити нашу usb-пам’ять (я буду використовувати марку Kingston) до нашого комп’ютера / Raspberry Pi. Потім ми виконуємо:

судо fdisk -l

буде мати результат, подібний до цього:

Disk / dev / mmcblk0: 15.7 GB ... Device Boot Start End Blocks Id System / dev / mmcblk0p1 2048 1607421 802687 e W95 FAT16 (LBA) / dev / mmcblk0p2 1613824 30613503 14499840 85 Linux, розширений / dev / mmcblk0p3 30613504 Linux … .. Диск / розробник / sda: 30679039 ГБ ... Початок завантаження пристрою Кінець блоків Ідентифікатор System / dev / sda32768 83 30.9 1 c W2048 FAT60436479 (LBA)

Моя зовнішня usb-пам’ять має 30.9 ГБ (тобто це / dev / sda1), тоді як пам’ять SD, де я встановив Linux, має 15.7 ГБ.

Спеціальні правила в udev

Знаючи, що sda1 - наш пристрій, ми будемо використовувати udev для вилучення інформації з пам'яті, тому виконуємо таку команду:

udevadm info -a -p $ (udevadm info -q шлях -n / dev / sda1)

будуть блоки, розділені фразою "дивлячись на батьківський пристрій '/ пристрої / ... .."

щоб полегшити пошук, ми можемо використовувати grep, тому я роблю наступне:

udevadm info -a -p $ (udevadm info -q шлях -n / dev / sda1) | виробник grep

у моєму випадку, оскільки моєю пам'яттю є Kingston, результат:

    ATTRS {виробник} == "Kingston" # 1 ATTRS {виробник} == "Linux 3.12.28+ dwc_otg_hcd"

або ми також можемо шукати:

udevadm info -a -p $ (udevadm info -q шлях -n / dev / sda1) | grep модель udevadm info -a -p $ (udevadm info -q шлях -n / dev / sdd1) | постачальник grep

Я зацікавлений:

ATTRS {виробник} == "Кінгстон"

Як це було першим збігом обставин. У виведенні команди удевадм Шукаю блок, де вперше з’являється "ATTRS {Manufacturer}"

Я беру деякі дані, які я вважаю унікальними з пристрою блоку, у моєму випадку:

   ATTRS {product} == "xxx" ATTRS {serial} == "xxxx" DRIVERS == "usb"

вам просто потрібно створити правила. Ми робимо файл, закінчений в .rules в udev:

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

всередині файлу, який ми помістили

ATTRS {product} == "xxx", ATTRS {serial} == "xxx", DRIVERS == "usb", SYMLINK + = "miusb"

Тепер, коли я підключаю свій usb, буде файл / dev / miusb. Це було найскладніше.

Налаштування автозаписів

Ми виконуємо:

sudo nano / etc / default / autofs

де написано "TIMEOUT =", вони ставлять "TIMEOUT = 1"

Переходимо до /etc/auto.master

nano /etc/auto.master

і всередині файлу, який ми помістили в останньому рядку:

/ media /etc/auto.misc

тепер ми переходимо до /etc/auto.misc

nano /etc/auto.master

і в останньому рядку пишемо:

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

нарешті, ми змушуємо завантажувати модуль autofs на початку:

sudo nano / etc / modules

і в останньому рядку пишемо:

autofs4

і вуаля, ми перезапускаємо малину. Майте на увазі, що папка не існує в / media, але коли ми робимо a

cd / media / memory

ми вже всередині. І якщо ми припинимо його використовувати, папка зникне, і ми зможемо вилучити пристрій, не демонтуючи його вручну.


5 коментарі, залиште свій

Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.

  1.   привіт - сказав він

    дякую за розміщення 🙂

  2.   Пабло - сказав він

    Я думаю, що сталася помилка, на етапі редагування auto.misc в коді пишеться auto.master, на випадок, якщо хтось підозрюючий це зробить і не зрозуміє 🙂

  3.   Фернандо Діас - сказав він

    Дякую, я просто хотів зробити це на Raspbian, я раніше використовував Arch, і це було простіше.

  4.   Azureus - сказав він

    Дуже добре, що мені це довелося зайняти, коли я поставив свій Pi як торрент-клієнт з каталогами, якими користується samba.
    У посібнику fstab сказано, що дещо більш надійним є перевірка етикетки пристрою за допомогою # blkid, у моєму випадку у мене автоматично встановлюється розділ windows при кожному запуску наступним чином:

    / dev / sda2
    UUID = 24A0729FA07276E0 / home / azureus / Windows ntfs auto, за замовчуванням 0 2

    на малині у мене встановлений LVM, я погано пам’ятаю конфігурацію.
    Згідно з керівництвом, ви можете використовувати # fdisk -l, щоб отримати номер диска та букву та # blkid, щоб знати, яка мітка відповідає якому диску.

    Привіт.

    1.    Azureus - сказав він

      [Оновлення]
      Ця мітка виникає внаслідок того, що є люди (такі як я), яким лінь відключати том кожного разу, коли комп’ютер вимикається, проблема полягає в тому, що у вас є кілька томів, оскільки він не завжди встановлюється в одному порядку після декількох перезавантажень . До речі, це має недолік, коли пристрій, що відповідає призначеній мітці для автоматичного монтажу, видаляється, видає помилку і не дозволяє завантажувати / home у випадку, якщо розділ встановлений на home. Цю проблему можна вирішити коментарем пристрою, що спричиняє конфлікти у fstab, або повторним підключенням пристрою