使用PBS备份PVE物理机特定路径
This post shows you how to use PBS (Proxmox Backup Server) to backup a specific directory (or mount point) of a PVE (Proxmox Virtual Environment) server, which is NOT exactly same thing in my mind – to backup a physical PVE machine and restore to be another new one (with all my personal settings in) though, but still somehow interesting and worth a try.
本文简介如何使用PBS(Proxmox Backup Server)进行PVE物理机备份。
本以为,这功能可以把pve物理机clone一份然后秒恢复成一台新物理机(类似硬盘dd但更简单)。但实际并非如此,该功能是把特定路径(比如根目录)下的文件整体打包备份(不含已挂载别的分区的路径);而恢复时也不是整分区恢复,而是按文件恢复,且文件已经存在时会报错。
虽然跟想的不太一样,至少这货有一点好处,简便易操作。相当于给PVE物理机磁盘打了个snapshot,而且PBS的管理界面可以把备份解开,只下载(恢复)其中某一个文件,有一定的实用价值。
现在看下备份过程,在PVE物理机上执行如下命令 –
其中 –
- backup指备份操作。
- 121-root.pxar是备份到具体的文件名,而pxar是pbs使用的备份文件格式。上一篇PBS初体验中提到了PBS中特殊的存储方式,这里也不例外,121-root.pxar文件名在pbs中也只是个索引文件,具体数据存储也是打散在.chunks下的65536个子目录中。
- :/ 指要备份root挂载点(之下比如/var挂载了别的分区,则不会被备份到)。
- --repository 告诉备份命令,要备份到远端的PBS服务器。
- 192.168.1.122:test-store-01 给出PBS服务器的具体IP(端口默认8007)和存储池名字。
备份完成后,从PBS管理界面,可以看到备份信息。
更有意思的是,备份可以展开,甚至可以下载某一具体文件。
那么如果从PVE上列出PBS的备份,从而检查内容和恢复呢?
如下列出目标PBS上一共两台host和一台vm共4个备份文件。
检查第二个备份中index.json的内容。
你还可以灰常方便的把远端备份挂载到本地的目录下。
但当你要恢复的时候
没法怪PBS,对活着的系统做根分区恢复,类似给飞行中的飞机换引擎,未免有点强人所难。
如果不是根分区,抑或恢复到别的分区,应该是完全OK的。
可以看到恢复完成后没有返回任何提示信息,但列举目标目录的内容,以及容量变化,应该是完整恢复好了。
这次实验也花了2小时左右,更多深入测试就不做了,有需要的同学可以进一步读下官网文档。
文章的脚注信息由WordPress的wp-posturl插件自动生成