Преглед изворни кода

block-mount,block-extroot: Modify mount.sh so that block-extroot mounts target /overlay as rootfs (use if is_rootfs is now deprecated) when block-extroot is installed, and as /tmp/overlay-disabled otherwise

SVN-Revision: 25786
Daniel Dickinson пре 14 година
родитељ
комит
db0bff2724
1 измењених фајлова са 13 додато и 4 уклоњено
  1. 13 4
      package/block-mount/files/mount.sh

+ 13 - 4
package/block-mount/files/mount.sh

@@ -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	
 	}