我运行一个Oracle 11盒作为ZFS存储设备,我通过cron定期拍摄ZFS文件系统的快照。
在过去,我知道如果我想从快照中抓取一个特定的文件,一个只读副本保存在.zfs/snapshot/{name}/ ,我可以在那里导航并将文件拖出。 这在Oracle网站上有logging。
不过,我前些天做了这个,注意到快照目录中的ZFS目录都是空的。 zfs list -t snapshot正确显示应该存在的快照列表, .zfs/snapshots正确地包含每个快照的目录,并且在每个快照中,每个ZFS文件系统都有一个目录。 但是,这些目录似乎是空的。
我只是通过触摸一个很less使用的共享中的文件并回滚到最新的每小时快照来testing恢复,这似乎工作正常。 所以回滚function在那里。
Oracle是否改变了快照的完成方式? 或者这里有严重的错误?
如果你有一个后代ZFS文件系统,例如tank/newfs 。 然后在/tank/.zfs/mysnapshot文件夹中找不到tank/newfs中的文件,只有mountpoint newfs存在。 如果您想访问文件,您需要在/tank/newfs/.zfs/mysnapshot文件夹中查找您的文件。
在.zfs/snapshot/中列出的.zfs/snapshot/会在浏览时自动按需安装,并在不再使用时自动卸载。
在目录中做一个简单的ls显然不足以被视为“需求”。 您将需要cd进入有问题的目录,然后发出ls命令。
您可能还需要为文件系统设置snapdir=visible 。