kernel: reorganize 2.6.38 patches, clean up block2mtd patches
[openwrt.git] / package / block-mount / files / fstab.init
index fdcd4f5..aba50ba 100644 (file)
@@ -8,7 +8,30 @@
 
 START=20
 
-. /lib/functions/mount.sh
+EXTRA_COMMANDS="overlay_enable whole_root_enable"
+EXTRA_HELP="        overlay_enable    Reenable overlay rootfs. (After you fix it).
+        whole_root_enable Reenable whole-disk rootfs.  (After you fix it)."
+
+rootfs_enable() {
+       local extroot_type="$1"
+               
+       if [ ! -d /tmp/${extroot_type}-disabled ]; then
+               echo "No disabled ${extroot_type} present (/tmp/${extroot_type}-disabled).  Can't renable."
+               exit 1
+       fi
+       
+       rm -f /tmp/${extroot_type}-disabled/.extroot.md5sum
+       rm -f /tmp/${extroot_type}-disabled/etc/extroot.md5sum
+       echo "Please reboot router to complete re-enabling external rootfs."
+}
+
+overlay_enable() {
+       rootfs_enable overlay
+}
+
+whole_root_enable() {
+       rootfs_enable whole_root
+}
 
 do_mount() {
        local cfg="$1"
@@ -39,6 +62,8 @@ do_swapoff() {
 }
 
 start() {
+       . /lib/functions/mount.sh
+
        config_load fstab
        mkdir -p /var/lock
        lock -w /var/lock/fstab.lck && {
@@ -50,12 +75,16 @@ start() {
        }
        config_foreach do_swapon swap
        config_foreach do_mount mount
+       config_foreach do_swapon swap  # do swap a second time so that swap on filesystems is enabled
 }
 
 stop() {
+       . /lib/functions/mount.sh
+
        config_load fstab
        config_foreach do_unmount mount
        config_foreach do_swapoff swap
        swapoff -a
 }
 
+
This page took 0.023268 seconds and 4 git commands to generate.