Debian Buster에서 특정 볼륨에 대한 사용자 정의 고정 마운트 지점으로 udisks2 /media/$USER/mount 재정의

Debian Buster에서 특정 볼륨에 대한 사용자 정의 고정 마운트 지점으로 udisks2 /media/$USER/mount 재정의

나는 사용하고있다데비안 버스터, 10.7, 저는 udev/udisks2/systemd를 비교적 처음 접했고 이를 더 잘 이해하려고 노력했으며 많은 것을 배웠습니다. 하지만 udisks2가 특정 볼륨(SD 카드)을 자동으로 마운트하는 것을 중지하는 방법을 알 수 없는 것 같습니다. 뿐만 /media/$USER/foo아니라 /data.

지금까지 시도한 내용은 다음과 같습니다.

$ grep /data /etc/fstab
UUID="3537-3761"      /data     exfat-fuse    defaults,nofail,x-systemd.device-timeout=2ms  0       0

$ cat /etc/systemd/system/data-sdcard-mount.service   
[Unit]
Description=Mount Data SD Card on /data
[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=/bin/mount /data
ExecStop=/bin/umount /data

$ cat /etc/udev/rules.d/99-data-sdcard.rules
ACTION=="add", \
    SUBSYSTEM=="block", \
    ENV{DEVTYPE}=="partition", \
    ENV{ID_DRIVE_MEDIA_FLASH_SD}=="1", \
    ENV{ID_NAME}=="SF256", \
    ENV{ID_SERIAL}=="0x3db0a775", \
    RUN+="/bin/systemctl start data-sdcard-mount", \
    ENV{UDISKS_IGNORE}="1", \
    OPTIONS="last_rule"

ACTION=="remove", \
    SUBSYSTEM=="block", \
    ENV{DEVTYPE}=="partition", \
    ENV{ID_DRIVE_MEDIA_FLASH_SD}=="1", \
    ENV{ID_NAME}=="SF256", \
    ENV{ID_SERIAL}=="0x3db0a775", \
    RUN+="/bin/systemctl stop data-sdcard-mount", \
    OPTIONS="last_rule"

카드를 삽입했을 때 다른 터미널 창에 표시되는 시스템 로그는 다음과 같습니다(MATE에 로그인한 후에도 마찬가지임).

Feb  4 13:25:51 localhost kernel: [508706.027711] mmc3: new high speed SDXC card at address aaaa
Feb  4 13:25:51 localhost kernel: [508706.044472] mmcblk3: mmc3:aaaa SF256 238 GiB 
Feb  4 13:25:51 localhost kernel: [508706.058372]  mmcblk3: p1
Feb  4 13:25:51 localhost systemd[1]: Starting Mount Data SD Card on /data...
Feb  4 13:25:51 localhost mount[1734]: FUSE exfat 1.3.0
Feb  4 13:25:51 localhost mount[1734]: WARN: volume was not unmounted cleanly.
Feb  4 13:25:51 localhost mount.exfat-fuse: volume was not unmounted cleanly
Feb  4 13:25:51 localhost systemd[1]: data.mount: Unit is bound to inactive unit dev-disk-by\x2duuid-3537\x2d3761.device. Stopping, too.
Feb  4 13:25:51 localhost systemd[1]: Started Mount Data SD Card on /data.
Feb  4 13:25:51 localhost systemd[1]: Unmounting /data...
Feb  4 13:25:51 localhost systemd[14720]: data.mount: Succeeded.
Feb  4 13:25:51 localhost systemd[2920]: data.mount: Succeeded.
Feb  4 13:25:51 localhost systemd[1]: data.mount: Succeeded.
Feb  4 13:25:51 localhost systemd[1]: Unmounted /data.
Feb  4 13:25:52 localhost systemd[1]: Started Clean the /media/vanfan/Data mount point.
Feb  4 13:25:52 localhost udisksd[2010]: Mounted /dev/mmcblk3p1 at /media/vanfan/Data on behalf of uid 1000

/data에 마운트되었지만 어떤 이유로 마운트 해제된 것 같습니다.

나오는 내용은 다음과 같습니다 udisksctl info -b /dev/mmcblk3p1.

$ udisksctl info -b /dev/mmcblk3p1
/org/freedesktop/UDisks2/block_devices/mmcblk3p1:
  org.freedesktop.UDisks2.Block:
    Configuration:              []
    CryptoBackingDevice:        '/'
    Device:                     /dev/mmcblk3p1
    DeviceNumber:               45825
    Drive:                      '/org/freedesktop/UDisks2/drives/SF256_0x3db0a775'
    HintAuto:                   true
    HintIconName:               
    HintIgnore:                 false
    HintName:                   
    HintPartitionable:          true
    HintSymbolicIconName:       
    HintSystem:                 false
    Id:                         by-uuid-3537-3761
    IdLabel:                    Data
    IdType:                     exfat
    IdUUID:                     3537-3761
    IdUsage:                    filesystem
    IdVersion:                  1.0
    MDRaid:                     '/'
    MDRaidMember:               '/'
    PreferredDevice:            /dev/mmcblk3p1
    ReadOnly:                   false
    Size:                       255835766784
    Symlinks:                   /dev/disk/by-id/mmc-SF256_0x3db0a775-part1
                                /dev/disk/by-label/Data
                                /dev/disk/by-path/platform-4809c000.mmc-part1
                                /dev/disk/by-uuid/3537-3761
    UserspaceMountOptions:      uhelper=udisks2
  org.freedesktop.UDisks2.Filesystem:
    MountPoints:        /media/vanfan/Data
    Size:               0
  org.freedesktop.UDisks2.Partition:
    Flags:              0
    IsContained:        false
    IsContainer:        false
    Name:               
    Number:             1
    Offset:             33554432
    Size:               255835766784
    Table:              '/org/freedesktop/UDisks2/block_devices/mmcblk3'
    Type:               0x07
    UUID: 

제가 놓친 부분이 있나요? 더 좋은 방법이 있나요? 나는 이전에 이 주제에 대해 연구하고 작동시키려고 노력했지만 이것이 작동하지 않는 이유를 정말로 이해하지 못합니다.

답변1

UDisks가 귀하의 항목을 무시하는 이유를 알아낸 것 같습니다 fstab. UDisks는 귀하의 항목을 구문 분석할 수 없습니다 fstab.

UUID="3537-3761"      /data     exfat-fuse    defaults,nofail,x-systemd.device-timeout=2ms  0       0

따옴표로 인해 UUID="3537-3761"문제가 발생했습니다. 내 시스템에 대한 빠른 테스트:

따옴표 포함:

$ udisksctl mount -b /dev/sdb1
Mounted /dev/sdb1 at /run/media/vojta/E2FC-EAE3

아니요:

$ udisksctl mount -b /dev/sdb1
Mounted /dev/sdb1 at /mnt/test

이것이 작동해야 하는지는 잘 모르겠습니다. 모든 예제(포함 ) 에서는 따옴표 없이 man fstabUUID로 항목을 지정하라고 나와 있지만 작동하므로 UDisks도 아마 그래야 하므로 이를 UDisks 버그로 보고하는 것을 고려할 수 있습니다.UUID=<uuid>mount

관련 정보