Filesystems

如何找到 zfs 複製的父快照?

  • November 1, 2016

我複製了一個包含許多快照的 zfs 文件系統。我還有幾個文件系統的複制副本。

如何找到複製附加到哪個文件系統/快照?

(似乎應該在 docs/googlable 中,但我沒有找到任何東西)

有一個特殊的屬性叫做origin它保存你需要的東西。假設我們有一個 zpooltank和一個文件系統tank/f1,我們創建了一個快照和一個複製:

zfs snapshot tank/f1@s1
zfs clone tank/f1@s1 tank/f2

讓我們檢查一下該複製的來源:

zfs get origin tank/f2

輸出:

NAME     PROPERTY  VALUE       SOURCE
tank/f2  origin    tank/f1@s1  -

取決於您的 zfs 列表輸出…但您也可以查看以下輸出:查看在池上執行zpool history的命令序列和操作(*手動和自動)。*這可能有助於刷新你的記憶。clone如果輸出過多,則過濾命令。

[root@GreenLeaf ~]# zpool history
History for 'vol0':
2013-09-14.16:57:19 zpool create -o ashift=12 vol0 fioa
2013-09-14.16:57:26 zfs create vol0/ppro2
2013-09-14.16:57:32 zfs set recordsize=32K vol0/ppro2
2013-09-15.14:52:08 zfs create -s -V 750G vol0/pprovol
2013-09-15.14:55:23 zfs destroy vol0/pprovol
2013-09-15.14:58:06 zfs create -o volblocksize=64K -s -V 750G vol0/pprovol

History for 'vol1':
2012-12-31.16:13:01 zpool create -f vol1 /dev/sdb
2012-12-31.16:13:22 zfs create vol1/ppro
2012-12-31.16:13:47 zfs set atime=off vol1/ppro
2012-12-31.16:13:55 zfs set compress=on vol1/ppro
2012-12-31.16:15:05 zfs set mountpoint=/ppro vol1/ppro
2012-12-31.21:07:37 zfs create vol1/pproold
2012-12-31.21:08:17 zfs set compress=gzip-9 vol1/pproold
2012-12-31.21:08:53 zfs set mountpoint=/ppro/pproold vol1/pproold
2012-12-31.22:20:56 zfs create vol1/ppro1
2012-12-31.22:21:12 zfs set compress=gzip-9 vol1/ppro1
2012-12-31.22:21:32 zfs set mountpoint=/ppro/ppro1 vol1/ppro1
2013-01-01.11:15:07 zpool set autoexpand=on vol1

引用自:https://serverfault.com/questions/539210