zfs promote コマンドを使えば、アクティブな ZFS ファイルシステムをそのファイルシステムのクローンで置き換えることができます。この機能を使ってファイルシステムの複製と置換を実行でき、「作成元」のファイルシステムが、指定されたファイルシステムのクローンになります。さらに、この機能を使えば、クローンの作成元となるファイルシステムを破棄することもできます。クローンの移行促進を行わない限り、アクティブクローンの元のファイルシステムを破棄することはできません。クローンの破棄に関する詳細については、「ZFS クローンを破棄する」を参照してください。
次の例では、tank/test/productA ファイルシステムがクローンされたあと、クローンファイルシステム tank/test/productAbeta が元の tank/test/productA ファイルシステムになっています。
# zfs create tank/test # zfs create tank/test/productA # zfs snapshot tank/test/productA@today # zfs clone tank/test/productA@today tank/test/productAbeta # zfs list -r tank/test NAME USED AVAIL REFER MOUNTPOINT tank/test 104M 66.2G 23K /tank/test tank/test/productA 104M 66.2G 104M /tank/test/productA tank/test/productA@today 0 - 104M - tank/test/productAbeta 0 66.2G 104M /tank/test/productAbeta # zfs promote tank/test/productAbeta # zfs list -r tank/test NAME USED AVAIL REFER MOUNTPOINT tank/test 104M 66.2G 24K /tank/test tank/test/productA 0 66.2G 104M /tank/test/productA tank/test/productAbeta 104M 66.2G 104M /tank/test/productAbeta tank/test/productAbeta@today 0 - 104M - |
この zfs list の出力では、元の productA ファイルシステムのディスク領域計上情報が、productAbeta ファイルシステムのものに置き換わっています。
ファイルシステムの名前を変更することで、クローンの置換処理を完了することができます。次に例を示します。
# zfs rename tank/test/productA tank/test/productAlegacy # zfs rename tank/test/productAbeta tank/test/productA # zfs list -r tank/test |
また、旧バージョンのファイルシステムを削除することもできます。次に例を示します。
# zfs destroy tank/test/productAlegacy |