如何允许使用 LUKS 密钥移除 USB 驱动器,同时保持设备解密直至重新启动或注销?

如何允许使用 LUKS 密钥移除 USB 驱动器,同时保持设备解密直至重新启动或注销?

我在树莓派上运行 DietPi (Debian),我在树莓派上安装了一个用 LUKS 加密的外部驱动器。我使用 USB 驱动器在启动/登录时解密 LUKS 设备:

如此/etc/crypttab

<mapper name> UUID=<uuid of luks-part> /mnt/key-usb/my_keyfile

/etc/cryptdisks这样:

CRYPTDISK_MOUNT='/mnt/key-usb'

最后是/etc/fstab这样的:

...
UUID=<mapper\decrypted device> /mnt/decrypted auto defaults,rw,noatime,nofail, x-systemd.automount 0 0
UUID=<uuid of key USB> /mnt/key-usb auto auto defaults,rw,noatime,nofail, x-systemd.automount,x-systemd.device-timeout=5 0 0
...

这会在启动时解锁/解密 LUKS 分区,我可以访问我的文件。但是,如果我删除安装的 USB,/mnt/key-usb我将无法再访问这些文件。有没有办法在用户注销或重新启动计算机之前在没有 USB 的情况下保持设备解锁?

我见过一些设置,其中添加了第四列,etc/crypttab例如keyscript=devpass|decrypt_keyctl,我尝试过,但它什么也没做。看来这个脚本应该位于,/lib/cryptdisks/scripts/但在我的机器上,这些似乎位于/lib/cryptsetup/scripts/.如何通过自定义脚本实现这一点(可以吗?)?

相关内容