jail revision 113711
1#!/bin/sh 2# 3# $FreeBSD: head/etc/rc.d/jail 113711 2003-04-19 07:50:32Z mtm $ 4# 5 6# PROVIDE: jail 7# REQUIRE: LOGIN 8# KEYWORD: FreeBSD 9 10. /etc/rc.subr 11 12name="jail" 13rcvar=`set_rcvar` 14start_cmd="jail_start" 15stop_cmd="jail_stop" 16 17jail_start() 18{ 19 echo -n 'Configuring jails:' 20 echo -n ' set_hostname_allowed=' 21 if checkyesno jail_set_hostname_allow ; then 22 echo -n 'YES' 23 ${SYSCTL_W} 1>/dev/null security.jail.set_hostname_allowed=1 24 else 25 echo -n 'NO' 26 ${SYSCTL_W} 1>/dev/null security.jail.set_hostname_allowed=0 27 fi 28 29 echo -n ' unixiproute_only=' 30 if checkyesno jail_socket_unixiproute_only ; then 31 echo -n 'YES' 32 ${SYSCTL_W} 1>/dev/null security.jail.socket_unixiproute_only=1 33 else 34 echo -n 'NO' 35 ${SYSCTL_W} 1>/dev/null security.jail.socket_unixiproute_only=0 36 fi 37 38 echo -n ' sysvipc_allow=' 39 if checkyesno jail_sysvipc_allow ; then 40 echo -n 'YES' 41 ${SYSCTL_W} 1>/dev/null security.jail.sysvipc_allowed=1 42 else 43 echo -n 'NO' 44 ${SYSCTL_W} 1>/dev/null security.jail.sysvipc_allowed=0 45 fi 46 echo '.' 47 48 echo 'Starting Jails.' 49 for _jail in ${jail_list} 50 do 51 eval jail_rootdir=\"\$jail_${_jail}_rootdir\" 52 eval jail_hostname=\"\$jail_${_jail}_hostname\" 53 eval jail_ip=\"\$jail_${_jail}_ip\" 54 eval jail_exec=\"\$jail_${_jail}_exec\" 55 [ -z ${jail_exec} ] && jail_exec="/bin/sh /etc/rc" 56 57 jail ${jail_rootdir} ${jail_hostname} ${jail_ip} ${jail_exec} 58 done 59} 60 61jail_stop() 62{ 63 kill -TERM $(ps aux | awk '$8 ~ /.*J/ {print $2};') 64} 65 66 67load_rc_config $name 68run_rc_command "$1" 69