假设我在其中有一个带有etc/的rpool作为常规目录,现在我想创建一个单独的zfs rpool /etc,这显然继承了我在原始/etc中拥有的所有数据。
这样做最恰当和最安全的方法是什么?
发布于 2009-07-18 13:05:47
不支持将/etc
转换为自己的zfs文件系统。
原因是,在启动的早期阶段,在(Open)Solaris开始挂载zfs文件系统之前,需要/etc
,所以如果您更改它,它将是空的。
我的猜测是,您想要获取/etc
的快照,但您可以只获取根文件系统的快照:
zfs snapshot rpool/ROOT/opensolaris
您可能必须用当前引导环境的名称替换opensolaris
(运行beadm list
以找出哪个)
发布于 2014-09-19 15:59:10
没有一种内置或自动化的方法来创建新的DataSet并将现有的数据迁移到它。要完成它,您需要创建数据集并手动(例如,rsync)将数据发送到它。
假设您有一个名为tank\set
的数据集,其中包含一个名为folder
的目录。要将文件夹“提升”为名为tank\set\folder
的子数据集:
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
然后检查数据看起来很好;为了以防万一,对父数据集进行快照,并删除folder-backup
目录。
https://serverfault.com/questions/39738
复制相似问题