同様の質問が存在しますが、mv
この場合は純粋な「移動」ではなく「コピーしてから削除」として機能するため、解決策(を使用)はひどいです。
そこで、私はプールを作成しました:
zpool create tank /dev/loop0
そこにある別のストレージからデータを直接rsyncして、データがにあるようにしました/tank
。
zfs list
NAME USED AVAIL REFER MOUNTPOINT
tank 591G 2.10T 591G /tank
今では、/tank
ファイルシステムに直接ではなく、子ファイルシステムにデータを置く必要があることに気づきました。
では、プール内の子になるように、既存のルートファイルシステムを移動または名前変更するにはどうすればよいでしょうか。
単純な名前変更は機能しません:
zfs rename tank tank/mydata
cannot rename to 'tank/mydata': datasets must be within same pool
(ところで、実際にプールが1つしかないのに、データセットが同じプール内にないというメッセージが表示されるのはなぜですか。)
すべてのデータのコピー(mv
またはデータセット全体を別のデバイスに送信して戻す)を伴う解決策があることは知っていますが、シンプルでエレガントな方法はありませんか?
この段階ではスナップショットは気にしないことに注意してください(まだ気にする必要はありません)。