如何在不影响当前数据的情况下访问 ZFS 快照的内容?

如何在不影响当前数据的情况下访问 ZFS 快照的内容?

我有一个每小时拍摄一次快照的 ZFS 数据集。昨天,对一些需要恢复的文件进行了更改;但是,数据集正在进行更改,不应恢复。

我有哪些选项可以访问快照而不干扰其数据的当前副本?我可以将快照以只读模式挂载到新的挂载点吗?

答案1

我已经有一段时间没有玩过 zfs 了,但是您应该能够使用它来查找可用的快照并访问zfs 挂载点下zfs list -t snapshot特殊目录下的文件。.zfs

[~]# zfs list -t snapshot
NAME                       USED  AVAIL  REFER  MOUNTPOINT
mypool                    1.49G   527M   528M  /mnt/zfspool
mypool@snap1                28K      -   993M  -
mypool@snap2                28K      -   993M  -
mypool@snap3                28K      -   993M  -

[~]# cd /mnt/zfspool/.zfs/snapshot/snap1
[snap1]# ls

我记得,快照已经是只读的,因此尝试更改快照目录中的数据应该会失败。如果实际文件系统中的数据发生变化,快照应该会增长,因为它会复制更改前的数据以保持快照的一致性。

您需要将zfs clone快照移动到新位置,以便对快照进行编辑(此时,它不再是快照)。

正如我所说,已经有一段时间了,所以先测试一下……

參考文獻:http://www.googlux.com/zfs-snapshot.html

相关内容