Top

在jail中安装debian

iocage官方不建议用于生产用途。

创建一个空jail

# iocage create -e -n debjail exec_start="/bin/true" exec_stop="/bin/true"

在宿主机上安装debootstrap

# pkg install debootstrap
此pkg已经没有人维护了。
它的配置文件为/usr/local/sbin/debootstrap。
其中有DEF_MIRROR和DEF_HTTPS_MIRROR两个参数,用来指定下载debian的服务器,可以更改为如下样式:
#DEF_MIRROR="http://deb.debian.org/debian"
DEF_MIRROR="http://mirrors.ustc.edu.cn/debian"
#DEF_HTTPS_MIRROR="https://deb.debian.org/debian"
DEF_HTTPS_MIRROR="https://mirrors.ustc.edu.cn/debian"
/usr/local/share/debootstrap/scripts目录里面应该是debootstrap支持的系统,比如kali、ubuntu。
但这些配置文件是按系统昵称命名的,比如debian11的bullseye、ubuntu20.04的focal(没有更新的21、22版)。

启用linux(4)

# sysrc linux_enable="YES" 
# sysrc linux_mounts_enable="NO" 
# service linux start

获取空jail的挂载点,将/root/附加到它,然后运行debootstrap(8)

# iocage get mountpoint debjail
# debootstrap bullseye /zroot/iocage/jails/debjail/root/

修改配置文件

fstab

使用iocage fstab -e [UUID | NAME]编辑debjail的fstab文件,将以下行添加进去:
devfs    /zroot/iocage/jails/debjail/root/dev         devfs     rw          0 0
tmpfs    /zroot/iocage/jails/debjail/root/dev/shm     tmpfs     rw,size=1g,mode=1777 0 0
fdescfs  /zroot/iocage/jails/debjail/root/dev/fd      fdescfs   rw,linrdlnk 0 0
linproc  /zroot/iocage/jails/debjail/root/proc        linprocfs rw          0 0
linsys   /zroot/iocage/jails/debjail/root/sys         linsysfs  rw          0 0
也可以使用vi命令直接修改/zroot/iocage/jails/debjail/fstab文件,加入以上行。

config.json

添加IP设置:
"ip4_addr": "re0|192.168.5.141/20",

启动jail,并进入

# iocage start debjail
# iocage console debjail
debjail默认使用/usr/local/sbin/debootstrap中设置的源作为自己的源。
debian起来了,但是没有图形界面的linux,不知道能拿来干什么。也许可以在里面搞个docker玩玩?