15-initsetup: keep a backup of the original runlevel.conf file
authorMichael Prokop <mika@grml.org>
Sat, 21 Feb 2009 13:27:14 +0000 (14:27 +0100)
committerMichael Prokop <mika@grml.org>
Sat, 21 Feb 2009 13:27:14 +0000 (14:27 +0100)
debian/changelog
etc/grml/fai/config/scripts/GRMLBASE/15-initsetup

index a713b7b..b730e96 100644 (file)
@@ -28,8 +28,10 @@ grml-live (0.9.9) unstable; urgency=low
     /etc/bacula/bacula-fd.conf. [Testing: issue412]
   * Add "forensic" to the append line when using the forensic kerneloption
     so we can grep for it in any case.
+  * 15-initsetup: keep a backup of the original runlevel.conf file.
+    Thanks to Thomas Lehmann for the idea! [Closes: issue570]
 
- -- Michael Prokop <mika@grml.org>  Fri, 20 Feb 2009 18:18:36 +0100
+ -- Michael Prokop <mika@grml.org>  Sat, 21 Feb 2009 14:25:49 +0100
 
 grml-live (0.9.8) unstable; urgency=low
 
index 8ee397f..72bd771 100755 (executable)
@@ -9,6 +9,23 @@
 set -u
 set -e
 
+# keep a backup of the original runlevel.conf file for reference
+# but only save it as /etc/runlevel.conf.original if it's not the
+# according livecd version, this should prevent from overriding
+# /etc/runlevel.conf.original if re-running grml-live -b ...
+if ! cmp /etc/runlevel.conf /etc/runlevel.conf.livecd 1>/dev/null || \
+   ! cmp /etc/runlevel.conf /etc/runlevel.conf.livecd.small 1>/dev/null ; then
+
+   # make sure to store old backup files if they differ as well
+   if [ -r $target/etc/runlevel.conf.original ] ; then
+      if ! cmp $target/etc/runlevel.conf $target/etc/runlevel.conf.original 1>/dev/null ; then
+         cp $target/etc/runlevel.conf.original $target/etc/runlevel.conf.original."$(date +%Y%m%d_%k:%M:%S)"
+      fi
+   fi
+
+   cp $target/etc/runlevel.conf $target/etc/runlevel.conf.original
+fi
+
 # if we have a small ISO let's adjust runlevel.conf:
 if [ -n "$GRML_NAME" ] ; then
    if echo "$GRML_NAME" | grep -q small ; then