aboutsummaryrefslogtreecommitdiff
path: root/trunk/templates/vserver/vserver.s/vserver.sh
diff options
context:
space:
mode:
authorrhatto <rhatto@04377dda-e619-0410-9926-eae83683ac58>2007-02-11 14:29:54 +0000
committerrhatto <rhatto@04377dda-e619-0410-9926-eae83683ac58>2007-02-11 14:29:54 +0000
commitf9a8dfcd51e481a49355d94a3e74f2762519378f (patch)
tree948f0382081bd2eb8b1b5458a9661b67a090e795 /trunk/templates/vserver/vserver.s/vserver.sh
parentfef31cbc9988ead081aaec587222b44ed524b6fd (diff)
downloadsimplepkg-f9a8dfcd51e481a49355d94a3e74f2762519378f.tar.gz
simplepkg-f9a8dfcd51e481a49355d94a3e74f2762519378f.tar.bz2
changed repository layout to trunk/, tags/ and branches/ scheme
git-svn-id: svn+slack://slack.fluxo.info/var/svn/simplepkg@181 04377dda-e619-0410-9926-eae83683ac58
Diffstat (limited to 'trunk/templates/vserver/vserver.s/vserver.sh')
-rw-r--r--trunk/templates/vserver/vserver.s/vserver.sh55
1 files changed, 55 insertions, 0 deletions
diff --git a/trunk/templates/vserver/vserver.s/vserver.sh b/trunk/templates/vserver/vserver.s/vserver.sh
new file mode 100644
index 0000000..e9d68a9
--- /dev/null
+++ b/trunk/templates/vserver/vserver.s/vserver.sh
@@ -0,0 +1,55 @@
+#!/bin/bash
+#
+# vserver template script
+#
+
+BASE="/etc/simplepkg/templates/vserver/vserver.s"
+DEVICES="$BASE/devices.tar.gz"
+GPGKEY="$BASE/GPG-KEY"
+
+if [ -z "$2" ]; then
+ echo "usage: `basename $0` <jail-root> <jail-name>"
+ exit 1
+elif [ ! -d "$1/$2" ]; then
+ echo "folder $1/$2 does not exist"
+ exit 1
+fi
+
+echo "creating /etc/vservers/$2..."
+mv $1/$2 $1/$2.old
+vserver $2 build -m skeleton --force &> /dev/null
+result="$?"
+rm -rf $1/$2 && mv $1/$2.old $1/$2
+
+if [ "$result" != "0" ]; then
+ mkdir -p /etc/vservers/$2/apps/init
+fi
+
+echo sysv > /etc/vservers/$2/apps/init/style
+echo 3 > /etc/vservers/$2/apps/init/runlevel.start
+echo 6 > /etc/vservers/$2/apps/init/runlevel.stop
+
+cp /etc/resolv.conf $1/$2/etc/
+cp /etc/localtime $1/$2/etc/
+echo /dev/hdv1 / ext2 defaults 1 1 > $1/$2/etc/fstab
+echo /dev/hdv1 / ext2 rw 0 0 > $1/$2/etc/mtab
+
+echo "creating devices and dependencies..."
+if [ -f "$DEVICES" ]; then
+ cd $1/$2/
+ tar zxvf $DEVICES
+ chroot $1/$2/ sbin/ldconfig
+else
+ echo error: device template $DEVICES not found
+fi
+
+if [ -f "$GPGKEY" ]; then
+ echo "importing slack gpg pubkey"
+ mkdir $1/$2/root/.gnupg
+ gpg --homedir $1/$2/root/.gnupg --import $GPGKEY
+fi
+
+# todo: add rebootmgr
+echo "done; now config your vserver at /etc/vservers/$2"
+echo "then, set all desired iptables rules and other stuff and then start $server vserver"
+echo "dont forget to change root's password with the command "vserver $2 exec passwd""