尝试制作我的全盘加密 Ubuntu OS 驱动器的幽灵映像。通常我已经使用 FSarchiver 多年了。很棒的工具。但最近发生了一些奇怪的事情。
我在 Ubuntu 20.04 系统上启用了全盘加密。我尝试使用其中的“savefs”方法创建一个 FSarchive 文件。通常,这会生成一个整洁的小型 .fsa 文件,大小约为 10 GB 或更小。这次……它只是继续复制数据。越来越多。当 fsarchive 进程创建一个 55 GB 的文件时,我终于停止了它。我的整个磁盘只使用了 22 GB,所以出了问题。
我尝试使用 SystemRescueCD 并从 Ubuntu 20.04 发行版启动。两者都导致大量文件被复制,我不知道为什么。我创建了一个带有全盘加密的 Kubuntu 20.04 虚拟机安装,然后在该映像上启动 SystemRescueCD 并测试了我恢复 fsarchive 的步骤。没问题。我不知道为什么这不起作用。
以下是我的步骤:
通过可启动 USB 启动 Linux 发行版。
查找当前启动的系统列出的我的加密安装磁盘设备。这通常是 /dev/sdb5
$ fdisk -l
- 打开加密驱动器。
$ cryptsetup luksOpen /dev/sdb5 MyEncrypted-partition
Enter passphrase for /dev/sdb5:
- 挂载打开的加密驱动器。
$ mkdir /media/MyEncrypted-partition
$ mount /dev/mapper/MyEncrypted-partition /media/MyEncrypted-partition/
有时我会遇到与 LVM2_membership 相关的错误,这是我解决该错误的方法。
错误:
mount: unknown filesystem type 'LVM2_member'
修理:
$ apt-get install lvm2
[或者当使用 Gentoo 时:它已经可用,只需加载内核模块]
$ /sbin/modprobe dm-mod
$ /sbin/lsmod | grep dm_crypt
dm_crypt 11331 1
然后我必须运行:
$ vgscan
Reading all physical volumes. This may take a while...
Found volume group "vgkubuntu using metadata type lvm2
然后:
$ vgchange -ay vgkubuntu
2 logical volume(s) in volume group "vgkubuntu" now active
现在检查系统看到的内容:
$ lvs
LV VG Attr LSize Origin Snap% Move Log Copy% Convert
root vgkubuntu -wi-a----- 460.57g
swap vgkubuntu -wi-a----- 15.89g
- 回到正题,现在将全盘加密的操作系统驱动器安装为只读。
$ mount -o ro /dev/mapper/vgkubuntu--root /media/MyEncrypted-partition/
- 检查一切是否完好...
$ ls /media/MyEncrypted-partition/
bin etc initrd.img.old lost+found opt sbin sys var
boot home lib media proc selinux tmp vmlinuz
dev initrd.img lib64 mnt root srv usr vmlinuz.old
- 创建硬盘的幽灵映像
$ fsarchiver -j4 savefs /media/other-drive/filename.fsa /dev/mapper/ubuntu--vg-root
我尝试使用以下命令将 fsarchiver 指向已安装的已打开加密的驱动器目录,但收到此错误消息:
$ fsarchiver -j4 savefs /media/other-drive/filename.fsa /media/MyEncrypted-partition/
oper_save.c#1200,oper_save(): /media/MyEncrypted-partition/ is not a valid block device
出于无奈,我尝试制作磁盘内容的 .tar 文件,但结果却与此相同,生成的内容比驱动器上当前使用的内容更大。我不知道我做错了什么。请帮忙。
答案1
经过大量分析,我相信我已经找出了问题所在。我想要为其创建备份存档的目标驱动器上的文件系统已彻底损坏。老实说,我感到震惊。所有超级块都已损坏。它们都无法工作。无法读取或安装任何文件。
这可能解释了我随机遇到的无数次系统崩溃,没有任何警告。(尽管我仍然怀疑我可能遇到了图形硬件问题,或者至少是 nvidia 驱动程序问题。)
最终,我完全格式化了驱动器并在其上重新安装了 Ubunutu 20.04。然后一切都运行得非常好。之后我将其加载到 Ubuntu Live 启动 USB 驱动器中,只需通过 dolphin 安装新创建的加密驱动器,然后将其从命令中重新安装为只读,然后执行 fsarchiver 备份。
$ fsarchiver -j4 savefs /media/other-drive/filename.fsa /dev/mapper/ubuntu--vg-root