Pasang perangkat USB secara otomatis pada Raspberry PI

Artikel ini telah diterbitkan oleh Hei kami lubang

Di Raspberry, jika Anda tidak menggunakan antarmuka grafis, akan menjengkelkan untuk memasang memori USB berulang kali. Selain itu, dalam proses mengotomatiskan tindakan ini (yang saya tunjukkan di bawah), Anda dapat belajar sedikit tentang cara Linux menangani perangkat.

Instal autofs dan udev

Hal pertama yang akan kita lakukan adalah menginstal autof y udev

sudo apt-get install autofs udev

udev adalah alat kernel linux yang bertugas mengelola direktori / dev yang merupakan tempat semua perangkat berada. Dan autofs memungkinkan kita, setelah dikonfigurasi, semua mount dan unmount secara otomatis segera setelah usb terhubung atau terputus.

Hal pertama yang akan kita lakukan adalah menghubungkan memori usb kita (saya akan menggunakan merek Kingston) di komputer / Raspberry Pi kita. Kemudian kami mengeksekusi:

sudo fdisk-l

akan memiliki keluaran yang mirip dengan ini:

Disk / dev / mmcblk0: 15.7 GB ... Device Boot Start End Block Id System / dev / mmcblk0p1 2048 1607421 802687 e W95 FAT16 (LBA) / dev / mmcblk0p2 1613824 30613503 14499840 85 Linux diperpanjang / dev / mmcblk0p3 30613504 30679039 32768 Linux … .. Disk / dev / sda: 83 GB ... Perangkat Boot Mulai End Block Id Sistem / dev / sda30.9 1 2048 60436479 c W30217216 FAT95 (LBA)

Memori usb eksternal saya memiliki 30.9 GB (yaitu / dev / sda1) sedangkan memori SD tempat saya menginstal Linux memiliki 15.7 GB.

Aturan khusus di udev

Mengetahui bahwa sda1 adalah perangkat kami, kami akan menggunakan udev untuk mengekstrak informasi dari memori, jadi kami menjalankan perintah berikut:

info udevadm -a -p $ (info udevadm -q jalur -n / dev / sda1)

akan ada blok yang dipisahkan oleh frase "melihat perangkat induk '/ perangkat / ... .."

untuk mempermudah pencarian kita bisa menggunakan grep, jadi saya melakukan hal berikut:

info udevadm -a -p $ (info udevadm -q jalur -n / dev / sda1) | produsen grep

dalam kasus saya karena ingatan saya adalah Kingston, hasilnya adalah:

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

atau kita juga bisa mencari:

info udevadm -a -p $ (info udevadm -q jalur -n / dev / sda1) | grep model udevadm info -a -p $ (info udevadm -q path -n / dev / sdd1) | grep vendor

Saya tertarik:

ATRS {pabrikan} == "Kingston"

Seperti kebetulan pertama. Pada keluaran perintah udevadm.dll Saya mencari blok tempat pertama kali muncul "ATTRS {manufacturer}"

Saya mengambil beberapa data yang saya anggap unik dari perangkat blok, dalam kasus saya:

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

Anda hanya perlu membuat aturan. Kami membuat file selesai dalam .rules di udev:

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

di dalam file yang kami masukkan

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

Sekarang ketika saya menghubungkan usb saya akan ada file / dev / miusb. Ini adalah bagian tersulit.

Menyiapkan autofs

Kami mengeksekusi:

sudo nano / etc / default / autofs

di mana dikatakan "TIMEOUT =" mereka meletakkan "TIMEOUT = 1"

Ayo pergi ke /etc/auto.master

nano /etc/auto.master

dan di dalam file yang kami letakkan di baris terakhir:

/ media /etc/auto.misc

sekarang kita pergi ke /etc/auto.misc

nano /etc/auto.master

dan di baris terakhir kami menulis:

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

akhirnya kami membuatnya memuat modul autofs di awal:

sudo nano / etc / modules

dan di baris terakhir kami menulis:

autofs4

dan voila, kami memulai ulang Raspberry. Perlu diingat bahwa folder tersebut tidak ada di / media tetapi ketika kita melakukan a

cd / media / memori

kita sudah di dalam. Dan jika kami berhenti menggunakannya, folder tersebut akan hilang dan kami dapat menghapus perangkat tanpa melepasnya secara manual.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.

  1.   Hei dijo

    terima kasih telah mempostingnya 🙂

  2.   Pablo dijo

    Saya rasa ada kesalahan, pada langkah mengedit auto.misc, auto.master tertulis di kode, seandainya ada orang yang tidak curiga melakukannya dan tidak menyadarinya 🙂

  3.   Fernando Diaz dijo

    Terima kasih, saya hanya ingin melakukannya di Raspbian, saya menggunakan Arch sebelumnya dan itu lebih mudah.

  4.   Azureus dijo

    Sangat bagus, yang harus saya tempati ketika saya menempatkan Pi saya sebagai klien torrent dengan direktori yang dibagikan oleh samba.
    Manual fstab mengatakan bahwa sesuatu yang sedikit lebih kuat adalah memeriksa label unit dengan # blkid, dalam kasus saya, saya memiliki partisi windows yang dipasang otomatis pada setiap startup sebagai berikut:

    / Dev / sda2
    UUID = 24A0729FA07276E0 / home / azureus / Windows ntfs otomatis, default 0 2

    pada raspberry saya memasang LVM, saya tidak ingat konfigurasinya dengan baik.
    Menurut manual, Anda dapat menggunakan # fdisk -l untuk mendapatkan nomor dan huruf drive dan # blkid untuk mengetahui label mana yang sesuai dengan drive mana.

    Salam.

    1.    Azureus dijo

      [Memperbarui]
      Label ini muncul dari fakta bahwa ada orang (seperti saya) yang merasa malas untuk memutus volume setiap kali komputer dimatikan, masalahnya adalah ketika Anda memiliki beberapa volume karena tidak selalu dipasang dengan urutan yang sama setelah beberapa kali reboot . Ngomong-ngomong, ini memiliki kekurangan, ketika perangkat yang sesuai dengan label yang ditetapkan untuk automount dihapus, itu membuat kesalahan dan tidak memungkinkan / home dimuat jika partisi dipasang di rumah. Ini dapat diselesaikan dengan mengomentari perangkat yang menyebabkan konflik di fstab atau dengan menghubungkan perangkat lagi