我自己的博客最早可以追溯到21年,那个时候还是用的宝塔+WP,但是刚接触觉得不太好用。后来换成了群晖本地docker+Halo,安全运行了2年之后,数据在一次升级中丢失了,当时有Halo博客后台中的备份数据,但是只要点击恢复博客系统就会卡死,50篇博客就这么丢失了。不过正好也想清理一下以前写的过时了的文章,就慢慢重新开始写,结果在昨天突然又发现Halo访问不了Mysql数据库,重新构建也不行,这次丢失了17篇博客,有些博客还是写了很久的,耗费很多精力。忍不了了,这次必须好好备份。

和我默念三遍:记得备份,记得备份,记得备份!!!

1. 群晖设置

如果各位使用的虚拟机时ESXI,那么群晖备份虚拟机是非常方便的,直接可以使用自带的套件。但是后来我更换了PVE,因为PVE备份的方式我不太喜欢,虚拟机内容其实也不太重要,多为实验性的。这次由于把博客搬到了PVE中,不得不这么做了。

  • 首先保证文件共享服务开启:

  • 新建一个共享文件夹用于保存虚拟机数据

  • 编辑该文件夹,添加好权限,ip地址根据你的网段来填写。

2. PVE设置备份

  • PVE挂载磁盘

在PVE控制台点击数据中心然后点击存储,点击上面的添加选择NFS,填写NAS IP

内容可以把所有选项都选上。

点击Export就可以显示刚刚创建的共享文件夹:

  • 添加备份计划

点击左侧存储下面的备份,创建备份任务:

在保留中可以选择保留的备份版本数量,可以选择保留所有备份,自己定期删就行,点击创建。

3. PVE恢复备份内容

备份后假设虚拟机被销毁了,可以在磁盘中看到备份的内容:

选中后,点击还原即可恢复成一摸一样的虚拟机。

备注:

在PVE后台挂载磁盘只是临时挂载,PVE重启后失效。

编辑 /etc/fstab 文件: 要使NFS磁盘在重启后自动挂载,你需要手动编辑 /etc/fstab 文件。添加一行包含磁盘的挂载信息。

例如,假设你的服务器地址是 192.168.1.100,共享路径是 /shared_data,挂载目录固定为 /mnt/pve/backup,那么你可以在 /etc/fstab 中添加如下内容:

192.168.1.100:/shared_data /mnt/nfs nfs defaults 0 0

保存后重启也会自动挂载。