RaspberryPIにUSBデバイスを自動的にマウントします

この記事はによって公開されました ねえ 私たちの フォーラム

Raspberryでは、グラフィカルインターフェイスを使用しないと、USBメモリを何度もマウントするのが面倒になります。 また、このアクションを自動化するプロセス(以下に示します)では、Linuxがデバイスを処理する方法について少し学ぶことができます。

autofsとudevをインストールします

最初に行うことはインストールです autofs y udev

sudo apt-get install autofsudev

udevは、すべてのデバイスが配置されている/ devディレクトリの管理を担当するLinuxカーネルツールです。 また、autofsを使用すると、設定が完了すると、usbが接続または切断されるとすぐに、すべてが自動的にマウントおよびアンマウントされます。

最初に行うことは、コンピューター/ Raspberry Piにusbメモリ(Kingstonブランドを使用します)を接続することです。 次に、以下を実行します。

fdisk-lコマンドはsudo

次のような出力があります。

ディスク/ dev / mmcblk0:15.7 GB ...デバイスブート開始エンドブロックIDシステム/ dev / mmcblk0p1 2048 1607421 802687 e W95 FAT16(LBA)/ dev / mmcblk0p2 1613824 30613503 14499840 85Linux拡張/ dev / mmcblk0p3 30613504 30679039 Linux ..ディスク/ dev / sda:32768 GB ...デバイスブート開始エンドブロックIDシステム/ dev / sda83 30.9 1 2048 c W60436479 FAT30217216(LBA)

私の外部usbメモリは30.9GB(つまり、/ dev / sda1)ですが、LinuxがインストールされているSDメモリは15.7GBです。

udevのカスタムルール

sda1がデバイスであることを知っているので、udevを使用してメモリから情報を抽出するので、次のコマンドを実行します。

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

「親デバイスを見る」/デバイス/…..」というフレーズで区切られたブロックがあります。

検索を少し簡単にするために、grepを使用できるので、次のようにします。

udevadm info -a -p $(udevadm info -q path -n / dev / sda1)| grepメーカー

私の場合、私の記憶はキングストンなので、出力は次のとおりです。

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

または、以下を検索することもできます。

udevadm info -a -p $(udevadm info -q path -n / dev / sda1)| grepモデルudevadminfo -a -p $(udevadm info -q path -n / dev / sdd1)| grepベンダー

興味ある:

ATTRS {manufacturer} == "キングストン"

最初の偶然だったように。 コマンド出力で ウデバドム 「ATTRS {manufacturer}」が最初に表示されるブロックを探します

私の場合、ブロックのデバイスから一意であると考えるデータをいくつか取得します。

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

ルールを作成するだけです。 udevで.rulesで終了したファイルを作成します。

須藤ナノ /etc/udev/rules.d/personal.rules

私たちが置いたファイルの中に

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

これで、usbを接続すると、ファイル/ dev / miusbが作成されます。 これが一番大変でした。

autofsの設定

実行します:

sudo nano / etc / default / autofs

「TIMEOUT =」と表示されている場合、「TIMEOUT = 1」と入力します。

/etc/auto.masterに行きましょう

nano /etc/auto.master

そして最後の行に置いたファイルの中に:

/メディア/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には存在しませんが、

cd /メディア/メモリ

私たちはすでに中にいます。 また、使用をやめるとフォルダが消え、手動でアンマウントせずにデバイスを取り外すことができます。


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

  1.   ねえ

    投稿してくれてありがとう🙂

  2.   パブロ

    auto.miscを編集するステップで、一部の吸盤がそれを実行して認識しない場合に備えて、コードにauto.masterが記述されているというエラーがあると思います🙂

  3.   フェルナンドディアス

    おかげで、私はRaspbianでそれを実行しようとしていました。以前は、Archを使用していたので、簡単でした。

  4.   アズレウス

    非常に良いことです。Sambaによって共有されているディレクトリを持つトレントクライアントとしてPiを配置したときに占有するようになりました。
    fstabのマニュアルによると、もう少し堅牢なのは、ユニットのラベルを#blkidで確認することです。私の場合、起動するたびに次のように自動マウントされたWindowsパーティションがあります。

    の/ dev / sda2
    UUID = 24A0729FA07276E0 / home / azureus / Windows ntfs auto、デフォルトは0 2

    ラズベリーにLVMを取り付けていますが、構成をよく覚えていません。
    マニュアルによると、#fdisk -lを使用してドライブ番号と文字を取得し、#blkidを使用してどのラベルがどのドライブに対応しているかを確認できます。

    ご挨拶。

    1.    アズレウス

      [更新]
      このラベルは、コンピュータの電源を切るたびにボリュームを切断するのが面倒だと感じる人(私のような)がいるという事実から生じています。問題は、複数のボリュームがある場合、数回の再起動後に常に同じ順序でマウントされるとは限らないためです。 。 ちなみに、これには欠点があります。自動マウントに割り当てられたラベルに対応するデバイスを削除すると、エラーがスローされ、パーティションがホームにマウントされている場合に/ホームをロードできません。 これは、fstabで競合を引き起こしているデバイスをコメントアウトするか、デバイスを再度接続することで解決できます。