summaryrefslogtreecommitdiffstats
path: root/server/build_core2
diff options
context:
space:
mode:
authorMichael Neves2012-11-07 17:34:14 +0100
committerMichael Neves2012-11-07 17:34:14 +0100
commit01bbb3fa34e750a9cac6bd22386533c1083d4dc8 (patch)
tree610c9ea579003ba861d34386d8a166af8f634452 /server/build_core2
parentbuild_core2 (diff)
downloadtm-scripts-01bbb3fa34e750a9cac6bd22386533c1083d4dc8.tar.gz
tm-scripts-01bbb3fa34e750a9cac6bd22386533c1083d4dc8.tar.xz
tm-scripts-01bbb3fa34e750a9cac6bd22386533c1083d4dc8.zip
build_core2
Diffstat (limited to 'server/build_core2')
-rwxr-xr-xserver/build_core268
1 files changed, 68 insertions, 0 deletions
diff --git a/server/build_core2 b/server/build_core2
new file mode 100755
index 00000000..5bbc74dc
--- /dev/null
+++ b/server/build_core2
@@ -0,0 +1,68 @@
+#!/bin/bash
+# Copyright (c) 2012 - OpenSLX GmbH
+#
+# This program is free software distributed under the GPL version 2.
+# See http://openslx.org/COPYING
+#
+# If you have any feedback please consult http://openslx.org/feedback and
+# send your feedback to feedback@openslx.org
+#
+# General information about OpenSLX can be found at http://openslx.org
+#
+# Server side script to generate stage3.1,2 initial ramfses for OpenSLX Linux
+# stateless clients
+#############################################################################
+
+# first parameter is a hash pointing to the target directory
+# /srv/openslx/build
+
+# in the future the prefix should be set via slxsettings ...
+
+ROOT_DIR=$(dirname $(readlink -f $0))
+SELF=$(readlink -f $0)
+
+if [ "x$(whoami)" != "xroot" ]; then
+ echo "ERROR: You need to have root rights to install packages."
+ exit 1
+fi
+
+# add openslx distro (in)dependent data to the initramfs target
+DISTRONAME=ubuntu
+DISTROVER=12.04
+
+STAGE31_DIR=${ROOT_DIR}/stage3.1
+STAGE32_DIR=${ROOT_DIR}/../remote/stage3.2
+
+# produce stage3.1
+#mkdir -p ${STAGE31_DIR}
+
+# create the base directory structure for stage3.1
+#mkdir -p ${STAGE31_DIR}/{bin,dev,proc,run,lib,etc,mnt,sys}
+#cp -a /dev/{console,kmsg,mem,null,tty,tty0,tty1,tty9,urandom,zero} \
+# ${STAGE31_DIR}/dev
+
+#Copy Busybox to Stage3.1
+#[ ! -e ${STAGE32_DIR/openslx/bin/busybox} ] && echo "Busybox not found under stage3.2/openslx. Please run setup_tools first." && return
+
+#cp ${STAGE32_DIR}/openslx/bin/busybox ${STAGE31_DIR}/bin
+
+# link the required busybox applets for stage3.1
+#for app in insmod modprobe mount mkdir umount sh switch_root ; do
+# ln -s /bin/busybox ${IRTARGET}/stage3.1/bin/${app}
+#done
+
+# copy stage3.1 base from data directory
+[ ! -d ${ROOT_DIR}/../data/stage3.1 ] && echo "No stage3.1 directory found." && exit 1
+cp -a ${ROOT_DIR}/../data/stage3.1 ${ROOT_DIR}
+
+# finalize the initramfs target
+which mksquashfs 2>&1>/dev/null || echo "Please install SquashFS utilities"
+
+[ ! -d ${STAGE32_DIR} ] && echo "No stage3.2 directory found. Please run setup_tools first." && exit 1
+
+[ -e ${STAGE32_DIR}/mnt/openslx.sqfs ] && rm ${STAGE32_DIR}/mnt/openslx.sqfs
+
+mksquashfs ${STAGE32_DIR} ${STAGE31_DIR}/mnt/openslx.sqfs -comp xz -b 1M -no-progress -no-recovery 2>/dev/null
+
+cd ${STAGE31_DIR}
+find . | cpio --format="newc" --create | gzip -9 > ${ROOT_DIR}/initramfs