我想使用外部 USB 闪存驱动器来存储加密密钥。每当在启动期间连接驱动器时 - 它应该解密 Luks 容器并继续启动
如果在启动期间没有带有标签 KEY 的 USB 驱动器 - 它应该无限期等待(重新启动、重试或只是等待)。
我想让它以 systemd 方式运行,我已经有 /init 脚本,它会主动尝试无限循环地挂载驱动器,但我想让它更强大和更 systemd 原生。我尝试创建挂载单元:
[Unit]
Description=Mount USB Drive
Requires=dev-disk-by\x2dlabel-KEY.device
After=dev-disk-by\x2dlabel-KEY.device
[Mount]
What=/dev/disk/by-label/KEY
Where=/mnt/usb
Type=auto
Options=defaults
DirectoryMode=0755
TimeoutSec=0 and 100000d - the same result
[Install]
WantedBy=initrd-fs.target
它等待默认的 90 秒,然后报告:
[DEPEND] Dependency failed for File System …eck on /dev/disk/by-label/KEY.
[DEPEND] Dependency failed for /mnt/usb.
[DEPEND] Dependency failed for Local File Systems.
但继续启动,
JobTimeoutSec=1min
JobTimeoutAction=reboot-force
也FailureAction=reboot-force
没有用。
理想情况下,我想安静地等待带有 KEY 标签的 USB 驱动器,然后继续启动,第二好的选择是 - 超时时重新启动。