#!/bin/bash # /etc/rc.d/arch32 . /etc/rc.conf . /etc/rc.d/functions case $1 in start) stat_busy "Starting Arch32 chroot" dirs_forward=(/dev /dev/pts /tmp /home) [[ ! -f /opt/arch32/.arch32 ]] && mount LABEL="arch32" /opt/arch32 for d in "${dirs_forward[@]}"; do mount -o bind $d /opt/arch32$d done mount -t proc none /opt/arch32/proc mount -t sysfs none /opt/arch32/sys add_daemon arch32 stat_done ;; stop) stat_busy "Stopping Arch32 chroot" dirs_backwards=(/dev/pts /dev /tmp /home) for d in "${dirs_backwards[@]}"; do umount "/opt/arch32$d" done umount /opt/arch32/{proc,sys} [[ -f /opt/arch32/.arch32 ]] && umount /opt/arch32 rm_daemon arch32 stat_done ;; restart) $0 stop sleep 1 $0 start ;; *) echo "usage: $0 {start|stop|restart}" esac exit 0