Proxmox Backup Server 重新安装后恢复数据盘

本段记录不这几 ZFS 和阵列方面配置，如果如果涉及到需要先恢复 ZFS 或阵列方面的配置

记录信息

datastore 配置

在恢复前 你需要记录原来 PBS的一些基本配置

Copy
root@pbs:/etc/proxmox-backup# cat datastore.cfg
datastore: storage-3TiB
gc-schedule sat *-1..7 02:00
path /mnt/datastore/storage-3TiB

当然 这个配置如果没有记录，那么你可以参考这个格式 来新建

systemd 动态挂载

Proxmox 惯用 systemd 动态挂载方式

/etc/fstab 和systemd 的 .mount 文件是两种不同的磁盘挂载方式。它们都可以在系统启动时自动挂载磁盘，但是有一些关键的区别：

配置方式：/etc/fstab 是一个简单的文本文件，其中每一行代表一个挂载点。每一行都包含了设备路径、挂载点、文件系统类型、挂载选项等信息。而 systemd 的 .mount 文件则使用了 INI 格式，可以包含更详细的配置信息，例如依赖关系、超时设置等。

错误处理：如果 /etc/fstab 中的一个挂载点出现问题（例如设备不存在或者文件系统错误），系统可能会在启动时卡住，直到手动解决问题。而 systemd 则会尝试继续启动其他服务，即使某个 .mount 文件出现问题。

动态挂载：systemd 支持 “按需挂载”（mount on demand），即只有当访问挂载点时才会实际挂载磁盘。这在某些情况下可以提高系统启动速度。

依赖管理：systemd 的 .mount 文件可以包含依赖关系，例如在挂载一个磁盘之前先启动一个服务。/etc/fstab 不支持这种功能。

总的来说，/etc/fstab 是一个传统的、简单的挂载配置方式，而 systemd 提供了更多的灵活性和控制。然而，这也意味着 systemd 的配置可能更复杂，而且需要更深入的理解

Copy
root@pbs:/etc/systemd/system# ls
chronyd.service multi-user.target.wants sockets.target.wants zed.service
getty.target.wants network-online.target.wants sshd.service zfs-import.target.wants
iscsi.service remote-fs.target.wants sysinit.target.wants zfs.target.wants
'mnt-datastore-storage\x2d3TiB.mount' smartd.service timers.target.wants zfs-volumes.target.wants

在这里看到了 Proxmox 的数据盘动态挂载方式位于 /etc/systemd/system/'mnt-datastore-storage\mnt-datastore-storage\x2d3TiB.mount'

查看并记录配置

Copy
root@pbs:/etc/systemd/system# cat 'mnt-datastore-storage\x2d3TiB.mount'
[Install]
WantedBy=multi-user.target

[Unit]
Description=Mount datatstore 'storage-3TiB' under '/mnt/datastore/storage-3TiB'

[Mount]
Options=defaults
Type=ext4
What=/dev/disk/by-uuid/78064deb-ac70-4a06-bc92-180503ef2d8c
Where=/mnt/datastore/storage-3TiB

恢复配置

可以参考 PVE 恢复数据盘

在确保 PBS 数据盘没有损毁的情况下，您应按照上面的原记录来恢复配置，首先创建动态动态信息，注意磁盘 UUID 在新系统可能会有所不同

Copy
# 首先查下磁盘所在位置
fdisk -l

# 然后找到对应的UUID
lsblk -fs

记录下来，并修改或创建上面 /etc/systemd/system/'mnt-datastore-storage\x2d3TiB.mount' 记得坚持 UUID 信息

然后执行

Copy
# 重载配置
systemctl daemon-reload

# 立即挂载
systemctl start 'mnt-datastore-storage\x2d3TiB.mount'

# 挂载无问题后 开启自启动
systemctl enable 'mnt-datastore-storage\x2d3TiB.mount'

# 查看所有挂载
systemctl list-unit-files -t mount

检查一下/etc/mtab

Copy
cat /etc/mtab

...
/dev/sdb1 /mnt/datastore/storage-3TiB ext4 rw,relatime 0 0
...

已经生效
最后 为 WEBGUI 来创建显示

Copy
nano /etc/proxmox-backup/datastore.cfg

datastore: storage-3TiB
gc-schedule sat *-1..7 02:00
path /mnt/datastore/storage-3TiB

刷新页面，到这里所有配置几乎与原系统一样恢复出来了，但还需要在 WebGUI 重新配置备份处理计划。