在systemd
使用 构建的基于嵌入式系统上yocto
,我尝试使用systemd-mount
它来在插入 USB 驱动器时自动安装 USB 驱动器。
继官方手册,我创建了udev
如下规则:
ACTION=="add", SUBSYSTEMS=="usb", SUBSYSTEM=="block", ENV{ID_FS_USAGE}=="filesystem", \
RUN{program}+="/usr/bin/systemd-mount --bind-device --no-block --automount=yes --collect $devnode"
卷已正确安装,但当我删除设备时,安装点仍保留在文件系统上。
看看手册,在我看来,该选项--bind-device
应该提供这种功能:
如果设置,当支持设备消失时,自动挂载点将自动删除。
但这种情况并非如此。
拔下设备插头后,如何设法删除安装点?
我是否需要实现某种udev
在 USB 移除时调用的魔术脚本,或者我遗漏了一些东西systemd
?
答案1
据消息人士透露systemd.挂载工具 --bind-device
仅在生成的单元文件中添加行 ( After=
)挂载点目录不会自动删除(BindsTo=
/run/systemd/transient/*.{automount,mount}
看起来你需要制作一些神奇的脚本