block-mount,block-extroot: Modify mount.sh so that block-extroot mounts target /overl...
authorDaniel Dickinson <crazycshore@gmail.com>
Mon, 28 Feb 2011 01:46:24 +0000 (01:46 +0000)
committerDaniel Dickinson <crazycshore@gmail.com>
Mon, 28 Feb 2011 01:46:24 +0000 (01:46 +0000)
SVN-Revision: 25786

package/block-mount/files/mount.sh

index 583e1a5cab6a6f9339c2abacf2eb14c5686c5be2..ade39ad87f7cc910bb32df03567041439ac0c383 100644 (file)
@@ -31,16 +31,23 @@ config_mount_by_section() {
                
                found_device="$(libmount_find_device_by_id "$uuid" "$label" "$device" "$cfgdevice")"
                if [ -n "$found_device" ]; then
-                       if [ -z "$find_rootfs" ] || [ "$find_rootfs" -eq 0 ] || [ "$is_rootfs" -eq 1 ]; then
+                       if [ -z "$find_rootfs" ] || [ "$find_rootfs" -eq 0 ] || ( [ "$is_rootfs" -eq 1 ] || [ "$target" = "/" ] || [ "$target" = "/overlay" ] ); then
                                [ "$enabled_fsck" -eq 1 ] && {
                                        grep -q "$found_device" /proc/swaps || grep -q "$found_device" /proc/mounts || {
                                                libmount_fsck "$found_device" "$fstype" "$enabled_fsck"
                                        }
                                }                                                               
        
-                               [ "$is_rootfs" -eq 1 ] && [ "$find_rootfs" -eq 1 ] && {
+                               if [ "$find_rootfs" -eq 1 ]; then
+                                   if [ "$is_rootfs" -eq 1 ]; then
                                        target=/overlay
-                               }
+                                   fi
+                               else
+                                   if [ "$is_rootfs" -eq 1 ] || [ "$target" = "/overlay" ]; then
+                                       target=/tmp/overlay-disabled
+                                   fi
+                               fi
+                               
                                config_create_mount_fstab_entry "$found_device" "$target" "$fstype" "$options" "$enabled" 
                                grep -q "$found_device" /proc/swaps || grep -q "$found_device" /proc/mounts || {
                                        [ "$enabled" -eq 1 ] && mkdir -p "$target" && mount "$target" 2>&1 | tee /proc/self/fd/2 | logger -t 'fstab'
@@ -48,8 +55,10 @@ config_mount_by_section() {
                                
                        fi
                fi
-               [ "$is_rootfs" -eq 1 ] && [ "$find_rootfs" -eq 1 ] && {
+               [ "$find_rootfs" -eq 1 ] && {
+                   [ "$target" = "/overlay" ] && {
                        rootfs_found=1
+                   }
                }
                return 0        
        }