Merging casper 1.196.
[live-boot-grml.git] / debian / live-initramfs.init
index 2082a2b..618607c 100644 (file)
@@ -3,10 +3,11 @@
 ### BEGIN INIT INFO
 # Provides:            live-initramfs
 # Required-Start:      $syslog
-# Required-Stop:       $syslog
+# Required-Stop:
 # Should-Start:                $local_fs
-# Should-Stop:         $local_fs
-# Default-Start:       1 2 3 4 5
+# Should-Stop:         halt reboot
+# X-Stop-After:                umountroot
+# Default-Start:
 # Default-Stop:                0 6
 # Short-Description:   live-initramfs init script
 # Description:         Resyncs snapshots, evantually caches files in order to
@@ -85,7 +86,8 @@ device_is_USB_flash_drive()
        [ "$(expr substr ${DEVICE} 1 2)" != "sd" ] && return 1
 
        # check that the device is an USB device
-       if readlink /sys/block/${DEVICE}/device | grep -q usb
+       if readlink /sys/block/${DEVICE} | grep -q usb ||
+          readlink /sys/block/${DEVICE}/device | grep -q usb # linux < 2.6.29
        then
                return 0
        fi
@@ -106,8 +108,6 @@ do_stop ()
                then
                        ${DO_SNAPSHOT} --resync-string="${HOMESNAP}"
                fi
-       else
-               return 0
        fi
 
        # check for netboot
@@ -157,12 +157,13 @@ do_stop ()
                                eject -p -m /live/image >/dev/null 2>&1
                        fi
 
-                       [ "$prompt" ] || return 0
                fi
 
+               [ "$prompt" ] || return 0
+
                stty sane < /dev/console
 
-               echo -n -e "\n\n${MESSAGE} and press ENTER to continue:" > /dev/console
+               printf "\n\n${MESSAGE} and press ENTER to continue:" > /dev/console
 
                if [ -x /sbin/usplash_write ]
                then
@@ -176,11 +177,11 @@ do_stop ()
 }
 
 case "${1}" in
-       start|restart|reload|force-reload|status)
+       restart|reload|force-reload|status)
                [ "${VERBOSE}" != no ] && log_end_msg 0
                ;;
 
-       stop)
+       start|stop)
                log_begin_msg "${NAME} is resyncing snapshots and caching reboot files..."
                do_stop
 
@@ -193,6 +194,8 @@ case "${1}" in
                                [ "${VERBOSE}" != no ] && log_end_msg 1
                                ;;
                esac
+
+               mount -o remount,ro /live/cow
                ;;
 
        *)