SD 카드 자동 감지 및 설치

SD 카드 자동 감지 및 설치

라즈베리 파이에서 우분투를 실행하고 있습니다. 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을 사용하면 자동으로 설치/제거가 가능합니다.

관련 정보