Blob Blame History Raw
diff --git a/os-probes/mounted/common/90linux-distro b/os-probes/mounted/common/90linux-distro
index 9544531..bee48b3 100755
--- a/os-probes/mounted/common/90linux-distro
+++ b/os-probes/mounted/common/90linux-distro
@@ -17,7 +17,7 @@ type="$3"
 # symlinks we need to also check in $dir/usr/lib* for distributions that
 # moved /lib* to /usr and only left symlinks behind.
 # TODO: look for ld-linux.so on arches that have it
-if (ls "$dir"/lib*/ld*.so* || ls "$dir"/usr/lib*/ld*.so*) >/dev/null 2>/dev/null; then
+if [ -L "$dir"/lib ] || (ls "$dir"/lib*/ld*.so* || ls "$dir"/usr/lib*/ld*.so*) >/dev/null 2>/dev/null; then
 	if [ -e "$dir/etc/debian_version" ]; then
 		short="Debian"
 		long="$(printf "Debian GNU/Linux (%s)\n" "$(cat "$dir/etc/debian_version")")"
@@ -128,9 +128,13 @@ if (ls "$dir"/lib*/ld*.so* || ls "$dir"/usr/lib*/ld*.so*) >/dev/null 2>/dev/null
 	elif [ -e "$dir/etc/4MLinux-version" ]; then
 		short="4MLinux"
 		long="4MLinux $(head -1 "$dir/etc/4MLinux-version")"
-	else
+	elif (ls "$dir"/lib*/ld*.so*  && [ -d "$dir/boot" ] || ls "$dir"/usr/lib*/ld*.so*) >/dev/null 2>/dev/null; then
+		# Don't report 'Linux distribution' if only a /lib symlink is found or if this is
+		# a partition without /boot (should be /usr partition)
 		short="Linux"
 		long="unknown Linux distribution"
+	else
+		exit 1
 	fi
 	
         label="$(count_next_label "$short")"