merged git:quickfix
authorMichael Gebetsroither <michael.geb@gmx.at>
Sat, 6 Oct 2007 12:35:33 +0000 (14:35 +0200)
committerMichael Gebetsroither <michael.geb@gmx.at>
Sat, 6 Oct 2007 12:35:33 +0000 (14:35 +0200)
default_config
grml-terminalserver-config
templates/grub-pxelinux_config

index 8d417a9..a780804 100644 (file)
@@ -8,7 +8,11 @@ MODULES_PATH_="/lib/modules"
 
 KERNEL_VERSION_=`uname -r`
 
-MOUNT_POINT_="/cdrom"
+if [ -e '/live/cow' ]; then
+  MOUNT_POINT_="/live/image"
+else
+  MOUNT_POINT_="/cdrom"
+fi
 
 DATA_PATH_="$MOUNT_POINT_/boot/isolinux"
 
index 557c602..630296f 100755 (executable)
@@ -122,15 +122,34 @@ function actionAutoconf
 
 
 # INITRD {{{
-
 function actionMkInitrd
 {
   echo -n "Creating initrd $PATH_/minirt26.gz: "
   isExistent "$PATH_/minirt26.gz" && echo && echo "$PATH_/minirt26.gz exists already, skipping initrd creation" && return 0
-  mkInitrd
+  if [ -e '/live/cow' ]; then
+    mkInitrdNew
+  else
+    mkInitrd
+  fi
   echo done
 }
 
+function mkInitrdNew
+{
+  set -e
+  local cfg_="/etc/initramfs-tools/initramfs.conf"
+  local tmp_="`mktemp -t terminalserver__initramfsbk.XXXXXX`"
+  cp $cfg_ $tmp_
+  sed -i 's/^MODULES=.*/MODULES=netboot/' $cfg_
+  update-initramfs -u -t
+  mv $tmp_ $cfg_
+
+  local initrd_="/boot/initrd.img-$KERNEL_VERSION_"
+  mv $initrd_ $PATH_/minirt26.gz
+  mv ${initrd_}.bak $initrd_
+  set +e
+}
+
 function mkInitrd
 {
   TMP_DIR_=`mktemp -td terminalserver_initrd.XXXXXX`
index 249fbbf..fb35176 100644 (file)
 
 
 # default boot arguments used for both grub and pxelinux
-default_boot_args_="ramdisk_size=24000 root=/dev/ram0 rw \
+if [ -e '/live/cow' ]; then
+    default_boot_args_="root=/dev/nfs rw nfsroot=$IP_:$MOUNT_POINT_ \
+boot=live lang=us nomce quiet apm=power-off"
+else
+    default_boot_args_="ramdisk_size=24000 root=/dev/ram0 rw \
 init=/etc/init nfsdir=$IP_:$MOUNT_POINT_ nodhcp noprompt noeject \
 apm=power-off nomce lang=us"
+fi
 
 # special boot arguments required by grub
 grub_def_boot_args_="/linux26 $default_boot_args_"