我可以使用fsarchiver备份LUKS加密分区吗?

我可以使用fsarchiver备份LUKS加密分区吗?

安装 Elementary OS 时,我选择的尺寸太小,/boot并且在更新时它不断地困扰着我。

驱动器的其余部分是单个 LUKS 加密根分区:

lsblk --fs
NAME            FSTYPE      LABEL  UUID                                   FSAVAIL FSUSE% MOUNTPOINT
...
nvme0n1                                                                                  
├─nvme0n1p1     vfat               F37A-4778                               224.3M    15% /boot/efi
├─nvme0n1p2     ext4               f68b8c29-141b-4bec-8812-c5203be4f684     41.7M    83% /boot
└─nvme0n1p3     crypto_LUKS        715ee16e-ba60-487a-8944-23b3b561b2bb                  
  └─cryptdata   LVM2_member        UFo5le-jPA4-5k4d-fpV3-7eGx-fTGR-6mU5Bo                
    ├─data-root ext4               cd4a0015-3306-4c64-988c-83235baca874    581.3G    31% /
    └─data-swap swap               65e49edd-8a15-4d30-b966-4df0bcdce12f                  [SWAP]

我不能简单地缩小加密分区来恢复空间,/boot所以我想使用 进行备份fsarchiver,重新安装,然后重新应用备份。我认为这是将数据重新装入较小分区的唯一方法。

我找到了这个答案:https://unix.stackexchange.com/a/101925但我不知道如何使用它。 AFAIU,我不必执行第一步,因为我想归档我当前正在使用的nvme0n1p3已打开的分区。所以我已经将其插入外部驱动器并尝试:

sudo fsarchiver savefs `date +%Y_%m_%d`_root.fsa /dev/nvme0n1p3 -v -j11

但我得到了:

filesys.c#140,devcmp(): Warning: [/dev/fuse] is not a block device
oper_save.c#1037,filesystem_mount_partition(): cannot mount partition [/dev/nvme0n1p3]: filesystem may not be supported by either fsarchiver or the kernel.
removed 2022_04_23_root.fsa

我应该以某种方式打开分区吗cryptsetup?是因为我没有使用LiveCD吗?

答案1

从手册页fsarchiver

fsarchiver [ 选项 ] savefs 存档设备 ...

savefs 将设备文件系统保存到存档。

所以设备参数应该是对文件系统的引用。您的参数/dev/nvme0n1p3是一个设备,但它不包含文件系统。这就是您收到错误消息的原因:

oper_save.c#1037,filesystem_mount_partition():无法挂载分区 [/dev/nvme0n1p3]:fsarchiver 或内核可能不支持文件系统。

/dev/nvme0n1p3包含 LUKS 加密数据,其中(解密后)包含 LVM 数据。您的实际 ext4 文件系统位于逻辑卷中data-root,该卷在输出中列出lsblkfsarchiver应该能够通过该逻辑卷访问文件系统。所以正确的设备的参数fsarchiver可能是/dev/mapper/data-root

我不知道这是否适用于正在运行的系统。创建完整文件系统的备份,这是我更喜欢在未安装或只读安装的文件系统上执行的操作(使用 LiveCD 和cryptsetup)。

答案2

我应该以某种方式打开分区吗cryptsetup

从你的lsblk输出来看,你似乎已经打开了它。

您不能/dev/nvme0n1p3直接保存,因为它是 LUKS 加密分区,而不是文件系统。当您使用 LVM 时,文件系统位于/dev/cryptdata/data-root.

相关内容