SDカードの自動検出と取り付け

SDカードの自動検出と取り付け

ラズベリーパイでUbuntuを実行しています。 SDカードリーダーはUSB経由で接続されています。 GUI(gnome)が実行されている場合、SDカードは自動的に/media/ubuntu/{label}適切にマウントおよびマウント解除されます。これにより、システムは技術的にSDカードの挿入と取り外しを検出できます。

本番環境では、rasp piはモニターに接続できず、 kdeは実行されません。 udevルールを使用して、接続されたUSBスティックを検出できます。https://gist.github.com/juancarlospaco/7f4eab1b6899c55ea90dc0ef5eea965d、帰属:

ACTION=="add", ENV{ID_FS_TYPE}!="ntfs", RUN+="/usr/bin/systemd-mount --no-block --automount=yes --collect /dev/%k '/media/ubuntu/%E{dir_name}'"


# clean up after device removal
ACTION=="remove", ENV{dir_name}!="", RUN+="/usr/bin/systemd-umount -l '/media/ubuntu/%E{dir_name}'", RUN+="/bin/rmdir '/media/ubuntu/%E{dir_name}'"

USBメモリースティックで動作します。しかし、SDカードでは動作しません。 udevは追加または削除を実行せずに変更のみを実行するため、これは驚くべきことではありません。次のセッションでは、SDカードを取り外して再挿入します。

ubuntu@ubuntu:/$ udevadm monitor

KERNEL[6751.389160] change   /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3/1-1.3:1.0/host2/target2:0:0/2:0:0:0/block/sdc (block)
UDEV  [6751.599761] change   /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3/1-1.3:1.0/host2/target2:0:0/2:0:0:0/block/sdc (block)
KERNEL[6754.242775] change   /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3/1-1.3:1.0/host2/target2:0:0/2:0:0:0/block/sdc (block)
UDEV  [6754.391038] change   /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3/1-1.3:1.0/host2/target2:0:0/2:0:0:0/block/sdc (block)

ブロックデバイスのポーリングが正しく設定されました。

ubuntu@ubuntu:~$ cat /sys/module/block/parameters/events_dfl_poll_msecs
2000

ここで何ができますか?もう一度強調したい:gnomeを使用すると、自動的にインストール/削除が可能です。

ベストアンサー1

おすすめ記事