答案1
不,它根本不起作用。
您应该将其发送到已安装的文件系统,所以/dev/[backup disk]
不是像/mnt/[backup disk]/
执行完之后那样mount /dev/[backup disk] /mnt/[backup disk]
此外,如果您有多个“真实”文件系统(ext4、btrfs、zfs...),您也会错过这些。如果你跑步mount | grep \/dev\/sd
,在大多数情况下你可以看到你拥有的所有东西。
(也有例外:当前未挂载的文件系统、不是 /dev/sd 的文件系统X设备, ...)
编辑:我没有回答第二个问题。这里有同样的问题,同样的修复也适用。
但是:如果目标文件系统不使用加密,所有内容都将被解密保存
答案2
实际上你可以用 来做到这一点rsync
。但为什么还要手动进行呢?
要制作操作系统的完整副本,最好的工具是Timeshift
(它由 Debian 及其后代提供,可能还有其他公司提供)。它将创建完整备份恢复所需的所有内容的完整副本。在幕后,它将Timeshift
使用rsync
,但它已经知道完整复制所需的操作系统的所有部分。
答案3
我认为你在问两个不同的问题。
rsync 会复制文件系统吗?是的,它会。它还可用于在文件系统之间进行转换(例如,您可以将 ext3 文件系统复制到 ext4 分区)。文件系统需要相互支持功能:将 ext4 复制到 fat 会丢失很多功能。您确实需要挂载文件系统;我假设你知道该怎么做。您通常还可以获取 Live CD 来安装文件系统,然后按 Control-Alt-T 打开命令提示符。
我对 LUKS 不熟悉;我希望如果您可以挂载文件系统以便可以读取文件,那么它将复制。
您原来的问题还询问了克隆。您使用 rsync 制作的副本几乎肯定不会启动。您还需要执行几个步骤。
如果分区已更改,则需要修改 /etc/fstab。如果您现有的系统使用 UUID 来标识分区,您将需要修改 fstab。如果需要,您可以将其改回旧的非 UUID 样式;这使得克隆更容易,但不建议这样做。
更新添加:最近的 debian 内核更改(2022 年中的某个时间)不再支持 fstab 中引导设备的非 UUID 指定。您必须提供 UUID 才能使分区可引导。
然后您需要添加启动代码。您将需要使用 chroot 来修改目标系统。最常见的是安装 grub2。我发现的最好的例子在这里:Ubuntu 社区有关 grub2 的帮助
由于链接会四处移动,我将无偿复制一些示例:
这是安装 grub 的一种方法
sudo mount /dev/sdXY /mnt # Example: sudo mount /dev/sda5 /mnt
sudo grub-install --boot-directory=/mnt/boot /dev/sdX # Example: sudo grub-install --boot-directory=/mnt/boot /dev/sda
并更新 grub 中的图像目录:
for i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt$i; done
sudo chroot /mnt
sudo update-grub
答案4
单独使用 rsync 是无法完成的。您应该首先对整个系统进行备份。我个人使用 rsync 包装器(蝴蝶备份) 去做这个。这是一个例子:
$ bb backup --computer mypc --destination /backup --data System --type Unix
然后你应该安装一台新机器并进行如下恢复:
$ bb restore --catalog /backup --last --computer mypc
通过这种方式,您可以将必要的文件(passwd 等)带到新系统,而无需触及特殊文件,例如/dev