将 iocage 及其所有监狱从一个 ZFS 池移动到另一个池的过程是什么?
我已经尝试过这篇文章的过程:https ://www.ixsystems.com/community/threads/how-to-move-jails-between-pools.72593/post-502840
即iocage export
每个监狱,激活新池,然后iocage import
。那不成功:
$ iocage start syncthing
No default gateway found for ipv6.
* Starting syncthing
+ Started OK
+ Using devfs_ruleset: 6
+ Configuring VNET FAILED
jexec: execvp: ifconfig: No such file or directory
jexec: execvp: ifconfig: No such file or directory
Stopped syncthing due to VNET failure
FreeNAS 11.3
要将 iocage 从 移动
/mnt/OLD/iocage
到/mnt/NEW/iocage
:出口监狱
这将创建一个日期
.zip
的监狱/mnt/OLD/iocage/images
。设置新池
使用 FreeNAS jails GUI 或
iocage activate /mnt/NEW
在新池上激活 iocage。确保新激活具有监狱使用的 iocage 版本。用于iocage fetch
安装它们。查看每个监狱fstab
以查看它期望的版本。导入监狱
将导出的 jail .zip 复制到 iocage 查找它们的位置:
进口:
请注意,它是监狱名称,而不是 zip 的文件名。
修复挂载点和 fstab
监狱中的任何挂载点,尤其是 iocage 提供的挂载点,都将指向
/mnt/OLD
并导致监狱无法以问题中的 VNET 错误启动。这些必须手动修复。根据需要编辑
/mnt/NEW/iocage/jails/JAILNAME/fstab
和替换/mnt/OLD
with/mnt/NEW
的实例。:%s/OLD/NEW/g
因为vi 中的简单监狱可以解决问题。例如,Syncthing 插件创建的前三行
fstab
如下所示:每个都
/mnt/OLD
需要替换为/mnt/NEW
.完毕