systemd 如何激活备用分区上的加密交换文件?

systemd 如何激活备用分区上的加密交换文件?

我有 2 个分区://data。我的交换文件在 处加密/data/swap

所以/etc/crypttab看起来像:

root_crypt UUID=6666 none luks
swap /data/swap /dev/urandom swap

看起来/etc/fstab像(简化的):

UUID=abcd1234 / ext4 defaults 0 1
UUID=5678aaaa /data ext4 defaults 0 2
/dev/mapper/swap swap swap defaults 0 2

systemd 如何处理这个问题?生成的 crypttab 单元必须在 fstab 之前运行才能/挂载,但 fstab 挂载必须在 crypttab 单元之前运行才能访问加密的交换文件。

相反,如果我希望自己的 systemd 单元找到并安装/data,然后打开交换,我会在哪个阶段执行此操作?

编辑:更好的是,我想编写自己的单元来检查交换文件是否存在,如果不存在,则创建它。执行此操作的脚本很容易,但我的规则是什么Before After WantsWantedBy这是在 cryptmount 之前,因为交换文件是加密的,但它是在 cryptmount 之后,因为/需要先安装。

它既在 fstab 之前,因为需要创建交换文件才能使用,又在 fstab 之后,因为交换文件位于必须挂载的文件系统上。

完全困惑了。

相关内容