# --- SDE-COPYRIGHT-NOTE-BEGIN ---
|
|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
|
|
#
|
|
# Filename: target/sheba/pkg_vserver.conf
|
|
# Copyright (C) 2004 - 2006 Alejandro Mery
|
|
#
|
|
# More information can be found in the files COPYING and README.
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; version 2 of the License. A copy of the
|
|
# GNU General Public License can be found in the file COPYING.
|
|
# --- SDE-COPYRIGHT-NOTE-END ---
|
|
|
|
sheba_activate_vserver() {
|
|
local runitdir=$root/etc/runit
|
|
local initddir=$root/etc/init.d
|
|
local defaults=$root/$sysconfdir/vservers/.defaults
|
|
|
|
cat <<-EOT > $initddir/vserver
|
|
#!/bin/sh
|
|
|
|
case "\$1" in
|
|
start) mkdir -p /var/run/vservers{,.rev}
|
|
mkdir -p /var/run/vshelper
|
|
sysctl kernel.vshelper=$libdir/util-vserver/vshelper
|
|
;;
|
|
esac
|
|
EOT
|
|
chmod +x $initddir/vserver
|
|
|
|
mkdir -p $defaults/scripts
|
|
cat <<-EOT > $defaults/scripts/pre-start
|
|
#!/bin/sh
|
|
|
|
# interesting nodes from the host
|
|
#
|
|
for x in console full log null ptmx random tty urandom zero; do
|
|
cp -a /dev/$x dev/
|
|
done
|
|
|
|
# some friendly symlinks
|
|
#
|
|
ln -s /proc/self/fd dev/fd
|
|
ln -s fd/0 dev/stdin
|
|
ln -s fd/1 dev/stdout
|
|
ln -s fd/2 dev/stderr
|
|
|
|
# and a place to mount devpts
|
|
#
|
|
mkdir dev/pts
|
|
EOT
|
|
|
|
cat <<-EOT > $defaults/scripts/post-start
|
|
#!/bin/sh
|
|
|
|
# mount devpts after /dev was populated
|
|
#
|
|
mount -t devpts -o gid=5,mode=620 none dev/pts
|
|
EOT
|
|
|
|
chmod +x $defaults/scripts/{pre,post}-start
|
|
|
|
ln -snfv ${initddir#$root}/vserver $runitdir/1.d/20vserver
|
|
ln -snfv ${initddir#$root}/vprocunhide $runitdir/1.d/26vprocunhide
|
|
ln -snfv ${initddir#$root}/vservers-default $runitdir/1.d/98vservers-default
|
|
}
|
|
|
|
. $confdir/$pkg.conf
|
|
|
|
hook_add postmake 5 'sheba_activate_vserver'
|
|
|
|
var_append patchfile ' ' $base/target/$target/patches/$pkg.patch
|