mv /mnt/tank/set/folder /mnt/tank/set/folder-backup # move this out of the way so the new dataset doesn't mount on top of it
zfs create tank/set/folder
rsync -aAX /mnt/tank/set/folder-backup/ /mnt/tank/set/folder # bring over all the old data including acls and attributes
没有内置或自动化的方式来创建新的 DataSet 并将现有数据迁移到其中。要完成它,您需要创建数据集并手动(例如 rsync)将数据添加到其中。
假设您有一个名为的数据集
tank\set
,其中有一个名为folder
. 您想将文件夹“提升”为名为的子数据集tank\set\folder
:然后检查数据看起来不错;拍摄父数据集的快照以防万一,并删除
folder-backup
目录。不支持
/etc
变成自己的 zfs 文件系统。原因是
/etc
在引导的早期阶段需要它,在 (Open)Solaris 开始挂载 zfs 文件系统之前,因此如果您更改它会是空的。我的猜测是您想拍摄 的快照
/etc
,但您可以只拍摄根文件系统的快照:您可能必须替换
opensolaris
为当前引导环境的名称(运行beadm list
找出哪个)