# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+## HACK: this script is full of races...
+
vdir=$1/vdir
. "$2"
ln -s "$1" "$2"
}
+## Usage: subst <file> <regexp>
+function subst
+{
+ sed -e "$2" "$1" | $_CHROOT_CAT "$1".tmp
+ cmp -s "$1".tmp "$1" || cat "$1".tmp | $_CHROOT_CAT "$1"
+ rm -f "$1".tmp
+}
+
pushd "$vdir"/etc/init.d &>/dev/null ||
pushd "$vdir"/etc/rc.d/init.d &>/dev/null || exit 1
functions|halt|killall|single) ;;
syslog) ;;
*)
- $_VSERVER "$1" chkconfig "$i" off
+ $_VSERVER ----insecure "$1" chkconfig "$i" off
;;
esac
done
relink /bin/true new-kernel-pkg
popd >/dev/null
+pushd "$vdir"/usr/bin &>/dev/null
+ relink /bin/true rhgb-client
+popd >/dev/null
+
pushd "$vdir"/etc &>/dev/null
+ # TODO: remove race/symlink-attack
echo 'NETWORKING=yes' >>sysconfig/network
popd >/dev/null
+
+pushd "$vdir" &>/dev/null
+ : | $_CHROOT_CAT /etc/sysctl.conf
+ echo "none / none defaults" | $_CHROOT_CAT /etc/fstab
+ cat "$__DISTRIBDIR"/redhat/rc.sysinit | $_CHROOT_CAT /etc/rc.d/rc.sysinit.vserver
+ # TODO: remove race/symlink-attack
+ chmod +x etc/rc.d/rc.sysinit.vserver
+ subst etc/inittab 's!^\([^#].*:respawn:.* tty\)!#\1!;
+ s!si::sysinit:/etc/rc.d/rc.sysinit!si::sysinit:/etc/rc.d/rc.sysinit.vserver!'
+popd >/dev/null