Установлена FreeBSD 9.0-STABLE. Создал в ней клетку "lab" по хэндбуку. В rc.conf следующие опции:
Код: Выделить всё
cat /etc/rc.conf |grep -i jail
#JAIL
jail_enable="YES"
jail_list="lab"
jail_lab_rootdir="/usr/jail/lab"
jail_lab_hostname="lab.dev"
jail_lab_ip="192.168.1.150"
jail_lab_devfs_enable="YES"
jail_lab_devfs_rules="jail"
jail_lab_procfs_enable="YES"
jail_lab_mount_enable="YES"
jail_lab_flags="-l -U root"
Код: Выделить всё
cat /etc/fstab.lab
/var/run/www/ /usr/jail/lab/var/run/www nullfs rw 0 0
/usr/local/www/project.dev /usr/jail/lab/usr/local/www/project.dev nullfs rw 0 0
Код: Выделить всё
cat /usr/jail/lab/usr/local/etc/rc.d/project
#!/bin/sh
#
# PROVIDE: project
# REQUIRE: DAEMON
# BEFORE:
# KEYWORD: shutdown
#
# Add the following line to /etc/rc.conf to enable project:
#
# project_enable="YES"
. "/etc/rc.subr"
USER="www"
name=project
start_cmd="${name}_start"
stop_cmd="${name}_stop"
socket="/var/run/www/${name}.sock"
pidfile="/var/run/www/${name}.pid"
procname="/usr/local/bin/python"
command="/usr/local/www/project.dev/mysite/manage.py"
rcvar=`set_rcvar`
load_rc_config $name
project_start()
{
/bin/echo -n "Starting ${name}"
sudo -u ${USER} ${procname} ${command} runfcgi maxchildren=10 socket=${socket} pidfile=${pidfile} timeout=300 umask=0002
/bin/echo "."
}
project_stop()
{
/bin/echo -n "Stoping ${name}"
sudo -u ${USER} kill $(cat ${pidfile})
/bin/echo "."
}
run_rc_command "$1"
Код: Выделить всё
cat /usr/jail/lab/etc/rc.conf
sshd_enable="YES"
project_enable="YES"
rc_debug="YES"
rc_info="YES"
sendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
Код: Выделить всё
[root@lab ~]# /usr/local/etc/rc.d/project start
/usr/local/etc/rc.d/project: DEBUG: checkyesno: project_enable is set to YES.
/usr/local/etc/rc.d/project: DEBUG: run_rc_command: doit: project_start
Starting project.
[root@lab ~]# /usr/local/etc/rc.d/project stop
/usr/local/etc/rc.d/project: DEBUG: run_rc_command: doit: project_stop
Stoping project.
В логе /usr/jail/var/log/messages вот что:
Код: Выделить всё
Aug 23 19:34:28 lab user: /etc/rc: DEBUG: checkyesno: project_enable is set to YES.
Aug 23 19:34:28 lab user: /etc/rc: DEBUG: run_rc_command: doit: project_start
Почему?