summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHarald Hoyer <harald@redhat.com>2013-06-20 15:46:37 +0200
committerHarald Hoyer <harald@redhat.com>2013-06-20 15:47:19 +0200
commit6c10d3997019c4f09dad5650209b49c5ccd11551 (patch)
tree713f5b3fad2d0b7725dc42ecba54fecbe785b9d8
parentb3629c7da0b4a406ecc2182fcd766581778173ae (diff)
kernel-install: filter out "initrd=" from /proc/cmdline
-rw-r--r--src/kernel-install/90-loaderentry.install11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/kernel-install/90-loaderentry.install b/src/kernel-install/90-loaderentry.install
index 55b4d24672..6fbb14908a 100644
--- a/src/kernel-install/90-loaderentry.install
+++ b/src/kernel-install/90-loaderentry.install
@@ -38,15 +38,22 @@ if ! [[ $PRETTY_NAME ]]; then
PRETTY_NAME="Linux $KERNEL_VERSION"
fi
+declare -a BOOT_OPTIONS
+
if [[ -f /etc/kernel/cmdline ]]; then
readarray -t BOOT_OPTIONS < /etc/kernel/cmdline
fi
if ! [[ ${BOOT_OPTIONS[*]} ]]; then
- readarray -t BOOT_OPTIONS < /proc/cmdline
+ readarray -t line < /proc/cmdline
+ for i in ${line[*]}; do
+ if [[ "${i#initrd=*}" == "$i" ]]; then
+ BOOT_OPTIONS[${#BOOT_OPTIONS[@]}]="$i"
+ fi
+ done
fi
-if ! [[ $BOOT_OPTIONS ]]; then
+if ! [[ ${BOOT_OPTIONS[*]} ]]; then
echo "Could not determine the kernel command line parameters." >&2
echo "Please specify the kernel command line in /etc/kernel/cmdline!" >&2
exit 1