@ -1,77 +1,20 @@ |
|||||
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
||||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
||||
# |
|
||||
|
# |
||||
# Filename: target/sheba/pkg_util-vserver.conf |
# Filename: target/sheba/pkg_util-vserver.conf |
||||
# Copyright (C) 2007 The OpenSDE Project |
|
||||
|
# Copyright (C) 2007 - 2008 The OpenSDE Project |
||||
# Copyright (C) 2004 - 2006 Alejandro Mery |
# Copyright (C) 2004 - 2006 Alejandro Mery |
||||
# |
|
||||
|
# |
||||
# More information can be found in the files COPYING and README. |
# More information can be found in the files COPYING and README. |
||||
# |
|
||||
|
# |
||||
# This program is free software; you can redistribute it and/or modify |
# 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 |
# 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 |
# the Free Software Foundation; version 2 of the License. A copy of the |
||||
# GNU General Public License can be found in the file COPYING. |
# GNU General Public License can be found in the file COPYING. |
||||
# --- SDE-COPYRIGHT-NOTE-END --- |
# --- 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 |
|
||||
|
|
||||
. $libdir/util-vserver/util-vserver-vars |
|
||||
|
|
||||
# mount devpts after /dev was populated |
|
||||
# |
|
||||
\$_SECURE_MOUNT -t devpts -o gid=5,mode=620,dev --chroot 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 |
|
||||
ln -snfv ${initddir#$root}/vservers-default $runitdir/3.d/02vservers-default |
|
||||
} |
|
||||
|
|
||||
. $confdir/$pkg.conf |
. $confdir/$pkg.conf |
||||
|
|
||||
hook_add postmake 5 'sheba_activate_vserver' |
|
||||
|
hook_add postmake 5 "overlay_apply '$base/target/$target/pkgs/$pkg'" |
||||
|
|
||||
var_append patchfiles ' ' $base/target/$target/patches/$pkg.patch |
var_append patchfiles ' ' $base/target/$target/patches/$pkg.patch |
@ -0,0 +1,29 @@ |
|||||
|
#!/bin/sh |
||||
|
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
||||
|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
||||
|
# |
||||
|
# Filename: target/sheba/pkgs/util-vserver/D%sysconfdir_vservers_.defaults_scripts_post-start.sh |
||||
|
# Copyright (C) 2008 The OpenSDE Project |
||||
|
# |
||||
|
# 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 --- |
||||
|
|
||||
|
. D_libdir/util-vserver/util-vserver-vars |
||||
|
|
||||
|
if grep -q '[ ]/dev[ ]' "$__CONFDIR/$2/fstab"; then |
||||
|
# guest has /dev as tmpfs |
||||
|
# |
||||
|
|
||||
|
# mount devpts after /dev was populated |
||||
|
# |
||||
|
$_SECURE_MOUNT -t devpts -o gid=5,mode=620,dev --chroot none /dev/pts |
||||
|
|
||||
|
# 144 is what qemu wants... I know it's wrong to hardcode this here, but |
||||
|
# I don't have the time for a better implementation (fstab) yet |
||||
|
$_SECURE_MOUNT -t tmpfs -o size=144m --chroot none /dev/shm |
||||
|
fi |
@ -0,0 +1,38 @@ |
|||||
|
#!/bin/sh |
||||
|
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
||||
|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
||||
|
# |
||||
|
# Filename: target/sheba/pkgs/util-vserver/D%sysconfdir_vservers_.defaults_scripts_pre-start.sh |
||||
|
# Copyright (C) 2008 The OpenSDE Project |
||||
|
# |
||||
|
# 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 --- |
||||
|
|
||||
|
. D_libdir/util-vserver/util-vserver-vars |
||||
|
|
||||
|
if grep -q '[ ]/dev[ ]' "$__CONFDIR/$2/fstab"; then |
||||
|
# guest has /dev as tmpfs |
||||
|
# |
||||
|
|
||||
|
install_nodes() |
||||
|
{ |
||||
|
local dir="$1" x= |
||||
|
|
||||
|
for x in $dir/*; do |
||||
|
y=dev/${x##*/} |
||||
|
|
||||
|
[ ! -e "$y" ] || rm -f "$y" |
||||
|
|
||||
|
cp -a "$x" "$y" |
||||
|
done |
||||
|
} |
||||
|
|
||||
|
for x in .defaults "$2"; do |
||||
|
[ ! -d "$__CONFDIR/$x/dev" ] || install_nodes "$__CONFDIR/$x/dev" |
||||
|
done |
||||
|
fi |
@ -0,0 +1,24 @@ |
|||||
|
#!/bin/sh |
||||
|
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
||||
|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
||||
|
# |
||||
|
# Filename: target/sheba/pkgs/util-vserver/etc_init.d_vserver.sh |
||||
|
# Copyright (C) 2008 The OpenSDE Project |
||||
|
# |
||||
|
# 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 --- |
||||
|
|
||||
|
case "$1" in |
||||
|
start) |
||||
|
# FIXME: var/run gets wiped out on each boot, the directories should be preserved |
||||
|
mkdir -p /var/run/vservers{,.rev} |
||||
|
mkdir -p /var/run/vshelper |
||||
|
|
||||
|
sysctl kernel.vshelper=D_libdir/util-vserver/vshelper |
||||
|
;; |
||||
|
esac |
@ -0,0 +1 @@ |
|||||
|
/etc/init.d/vserver |
@ -0,0 +1 @@ |
|||||
|
/etc/init.d/vprocunhide |
@ -0,0 +1 @@ |
|||||
|
/etc/init.d/vservers-default |
@ -0,0 +1 @@ |
|||||
|
/etc/init.d/vservers-default |