mirror of
https://github.com/dracutdevs/dracut.git
synced 2024-10-27 00:55:34 +03:00
[PATCH 04/50] Modify root cmdline parsing to use a case statement.
This code takes less space and is easier to read at a glance.
This commit is contained in:
parent
9f99d479b3
commit
f9a0b9f868
21
init
21
init
@ -59,19 +59,16 @@ NEWROOT="/sysroot"
|
||||
# it'd be nice if we had a udev rule that just did all of the bits for
|
||||
# figuring out what the specified root is and linking it /dev/root
|
||||
root=$(getarg 'root=*'); root=${root#root=}
|
||||
|
||||
echo -n "Going to mount rootfs ($root)"
|
||||
if [ -z "$root" ]; then
|
||||
echo "Warning: no root specified"
|
||||
root="/dev/sda1"
|
||||
elif [ "${root#LABEL=}" != $root ]; then
|
||||
# FIXME: may need to do more escaping here
|
||||
l=${root#LABEL=}
|
||||
label=${l//\//\\x2f}
|
||||
root="/dev/disk/by-label/${label}"
|
||||
elif [ "${root#UUID=}" != $root ]; then
|
||||
root="/dev/disk/by-uuid/${root#UUID=}"
|
||||
fi
|
||||
case $root in
|
||||
LABEL=*) root=${root#LABEL=}
|
||||
root=${root//\//\\x2f}
|
||||
root="/dev/disk/by-label/${root}" ;;
|
||||
UUID=*) root="/dev/disk/by-uuid/${root#UUID=}" ;;
|
||||
'') echo "Warning: no root specified"
|
||||
root="/dev/sda1" ;;
|
||||
esac
|
||||
|
||||
# should we have a timeout?
|
||||
tries=0
|
||||
while [ ! -e $root ]; do
|
||||
|
Loading…
Reference in New Issue
Block a user