我有一个我们将很快关闭的 VPS,所以我想创建一个完整的备份。我在考虑 rsync,因为如果我 google linux 和备份的话,我经常被 rsync 击中,那为什么不呢。:) 然而,踢球者来了。
我要在其中备份 VPS 的备份机器无法从 Internet 访问。所以我不能只使用几乎每个人都建议通过 SSH 连接到 VPS、sudo rsync 几乎所有内容并将备份服务器作为输出标记。我想运行一个类似于 dd 的 bash 命令,所以如果我在远程服务器上运行 rsync,我可以将我的本地文件夹标记为输出。另外我不得不提一下,root ssh 登录是不允许的,所以我只能作为一个可以真正变成 sudo 的用户 SSH 进入 VPS,但默认情况下它只是一个普通用户。
我想出了以下 rsync 命令:
sudo rsync -aAXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /* /backup/machine/folder
我希望以某种方式使用它,就像我用于克隆的 dd 命令一样,但相反:
dd if=/dev/sda bs=4096 | pv | ssh root@<<TargetServer-IP>> ”dd of=/dev/sda bs=4096”
我喜欢在这里发布问题,因为其中大约 50% 是我自己回答的。我通常需要几个小时来决定将问题上传到这里,然后在静音几个小时后,我得到了答案。:) 这是命令:
如果您想执行 OFC,请从命令中排除 --dry-run。此外,您必须将您的 SSH 公钥添加到 /root/.ssh/authorized_keys 文件才能使这项工作。