diff --git a/grubby-bls b/grubby-bls index 0306490..5b428a0 100755 --- a/grubby-bls +++ b/grubby-bls @@ -495,16 +495,20 @@ update_bls_fragment() { if [[ $param = "ALL" && $bootloader = grub2 ]] && [[ -n $remove_args || -n $add_args ]]; then local old_args="" - if [[ -z $no_etc_update ]]; then + if [[ -z $no_etc_update ]] && [[ -e ${grub_etc_default} ]]; then old_args="$(source ${grub_etc_default}; echo ${GRUB_CMDLINE_LINUX})" - opts="$(update_args "${old_args}" "${remove_args}" "${add_args}")" - opts=$(echo $opts | sed -e 's/\//\\\//g') - sed -i -e "s/^GRUB_CMDLINE_LINUX.*/GRUB_CMDLINE_LINUX=\\\"${opts}\\\"/" "${grub_etc_default}" + if [[ -n $old_args ]]; then + opts="$(update_args "${old_args}" "${remove_args}" "${add_args}")" + opts="$(echo "$opts" | sed -e 's/\//\\\//g')" + sed -i -e "s/^GRUB_CMDLINE_LINUX.*/GRUB_CMDLINE_LINUX=\\\"${opts}\\\"/" "${grub_etc_default}" + fi fi old_args="$(grub2-editenv "${env}" list | grep kernelopts | sed -e "s/kernelopts=//")" - opts="$(update_args "${old_args}" "${remove_args}" "${add_args}")" - grub2-editenv "${env}" set kernelopts="${opts}" + if [[ -n $old_args ]]; then + opts="$(update_args "${old_args}" "${remove_args}" "${add_args}")" + grub2-editenv "${env}" set kernelopts="${opts}" + fi elif [[ $bootloader = grub2 ]]; then opts="$(grub2-editenv "${env}" list | grep kernelopts | sed -e "s/kernelopts=//")" fi