以下は、ZFSボリュームとスナップショットのリストと、それぞれのオリジンとクローンです。
すべてのスナップショットを削除したいが、すべてのファイルシステムは保持したい。これどうやってするの?
私はzfs promote
、ファイルシステムの多くの異なる組み合わせについて、各ファイルシステムを削除することを試みることを試みました。これにより、スナップショットが「ライブ」になる場所が変わります。たとえば、zfs promote tank/containers/six
スナップショットをF
からtank/containers/three@F
に移動しますtank/containers/six@F
。ファイルシステムのライブデータは変更されていませんが(これは私が望んでいることです!)、スナップショットを削除することはできません(これは私が望んでいるものではありません)。
典型的なzfs destroy
試みでは、依存クローンがあり、そのうちのいくつか(スナップショット)は破棄したいが、他のもの(ファイルシステム)は破棄したくないことがわかりました。
例えば。
# zfs destroy tank/containers/six@A
cannot destroy 'tank/containers/six@A': snapshot has dependent clones
use '-R' to destroy the following datasets:
tank/containers/five
tank/containers/two@B
tank/containers/two
上記の例では、tank/containers/five
またはを破棄したくありませんtank/containers/two
が、zfs promote
5と2の場合、スナップショットを破棄することはできません。解決策はありますか?
# zfs list -t all -o name,origin,clones
NAME ORIGIN CLONES
tank - -
tank/containers - -
tank/containers/five tank/containers/two@B -
tank/containers/four tank/containers/six@C -
tank/containers/one - -
tank/containers/one@E - tank/containers/three
tank/containers/two tank/containers/six@A -
tank/containers/two@B - tank/containers/five
tank/containers/six tank/containers/three@F -
tank/containers/six@A - tank/containers/two
tank/containers/six@C - tank/containers/four
tank/containers/three tank/containers/one@E -
tank/containers/three@F - tank/containers/six