他提供了比 chroot 還要更強大的功能
可以把一台 FreeBSD 裝在裏面
========================================
建一台 jail 很簡單只要幾個步驟
http://www.freebsd.org/doc/handbook/jails-build.html
# setenv D /usr/jail/jailname
# mkdir -p $D
# cd /usr/src
# make buildworld # 要很久,請用 screen 掛著
# umount -f /tmp # 這邊因為 tmp 是不能 exec 的,所以要先 unmount 掉
# make installworld DESTDIR=$D
# make distribution DESTDIR=$D
# mount -t devfs devfs $D/dev
改 rc.conf
#vim /etc/rc.conf
jail_enable="YES"
jail_list="jailname"
jail_jailname_rootdir="/usr/jail/jailname"
jail_jailname_hostname=".xxxxxxxxxxxxxxxxxxxxxxxxx"
jail_jailname_ip="10.0.0.14"
jail_jailname_devfs_enable="YES"
jail_jailname_devfs_ruleset="devfsrules_jail"
把 ports 系統搬過去
# cp -r /usr/ports /usr/jail/jailname/usr/ports
開機
# /etc/rc.d/jail start jailname
關機
# /etc/rc.d/jail stop jailname
現在有幾個 jail
#jls
JID IP Address Hostname Path
3 10.0.0.14 ********** /usr/jail/jailname
#jexec N /bin/tcsh # N 是第幾個 jail ID
先裝好 portmaster 和基本 tools
記得 jail 的網卡要在外面 rc.conf 裏面設 alias 像這樣
ifconfig_em1_alias0="inet 10.0.0.14 netmask 255.255.255.0"
jail 裏面的 /etc/resolv.conf 也要一下,不然 DNS 找不到
search example.org
nameserver 140.113.1.1
要 ping 測試的話要在外面改 sysctl
# sysctl security.jail.allow_raw_sockets=1
在 jail 裏面要出來的話就 Ctrl - D 就好了
No comments:
Post a Comment