我已经加密了 luks 分区。密钥文件位于 USB 闪存驱动器上。我还创建了该闪存驱动器的副本到另一个闪存驱动器。我如何添加指向/etc/fstab
同一目标目录的两个挂载点。Booth 闪存驱动器与服务器不同时连接。我只想设置系统,以便在 USB 闪存发生故障时可以更换它,并且系统可以正常启动。
/etc/crypttab
包含
cryptolvm /dev/disk/by-uuid/a172345c-c0bd-1234-abcd-3febeeef9730 /media/sdb1/keyfile luks
/etc/fstab
(USB 部分)
#kingston 16GB
UUID=622548b9-2223-4444-1234-5f61228bfa1c /media/sdb1 ext3 ro,nosuid,nodev,nofail,x-gvfs-show 0 0
# Adata 16GB
UUID=7342c8a5-4321-1111-1234-34742b566af1 /media/sdb1 ext3 ro,nosuid,nodev,nofail,x-gvfs-show 0 0
此时服务器启动时显示错误:
1) systemd-fstab-generator: failed to create mount unit file /run/systemd/generator/media-sdb1.mount, as it already exists. Duplicate entry in /etc/fstab?
2) dependency failed for /media/sdb1
答案1
尝试UUID
在同一文件夹上安装不同设备时,不适用将其用作安装源。通常也不应该发生这种情况,因为它可能导致不必要的系统行为并因此systemd
失败。
就您而言,这没问题,因为您一次只插入一个 USB 驱动器。要解决此问题,您可以使用例如LABEL=usbkey
中的选项来挂载特定文件夹中/etc/fstab
具有标签的任何文件系统。usbkey
在您的情况下,删除这些UUID
条目并用下面的一个条目替换它们。
LABEL=usbkey /media/sdb1 ext3 ro,nosuid,nodev,nofail,x-gvfs-show 0 0
其次,您需要确保您的文件系统具有正确的标签设置。在每个 USB 上,您必须运行以下命令,前提是这/dev/sdb
是您的 USB 驱动器,并且/dev/sdb1
是包含您要挂载的文件系统的分区。
tune2fs -L usbkey /dev/sdb1