summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzsdc <taras@vyos.io>2021-12-30 19:15:50 +0200
committerzsdc <taras@vyos.io>2021-12-30 19:15:50 +0200
commitcbc5a8ef2795326b561d599b76ee2052cbb31419 (patch)
tree3ee996464abf217036df230d03176a7cd64f62e9
parent3b99caf65d3392c88600066a93fc0b29b767c84c (diff)
downloadvyatta-op-cbc5a8ef2795326b561d599b76ee2052cbb31419.tar.gz
vyatta-op-cbc5a8ef2795326b561d599b76ee2052cbb31419.zip
images management: T4113: Improved GRUB config parsing
The commit fixes two problems with GRUB configuration items parser: * items with only one `console=ttyS0` were wrongly detected as those that have a `kvm` console type * items where the `boot=live`option is the latest one cannot be removed from a configuration during an image removal
-rwxr-xr-xscripts/vyatta-boot-image.pl4
1 files changed, 2 insertions, 2 deletions
diff --git a/scripts/vyatta-boot-image.pl b/scripts/vyatta-boot-image.pl
index 0ecb442..140b8e9 100755
--- a/scripts/vyatta-boot-image.pl
+++ b/scripts/vyatta-boot-image.pl
@@ -102,7 +102,7 @@ sub parseGrubCfg {
# old install
$ehash{'ver'} = $OLD_IMG_VER_STR;
}
- if (/console=tty0.*console=ttyS[0-9]/) {
+ if (/console=ttyS\d(?!.*console)/) {
$ehash{'term'} = 'serial';
} else {
$ehash{'term'} = 'kvm';
@@ -170,7 +170,7 @@ sub deleteGrubEntries {
@entry = ();
} else {
if (/^\s+linux/) {
- if (/^\s+linux \/boot\/([^\/ ]+)\/.* boot=live /) {
+ if (/^\s+linux \/boot\/([^\/ ]+)\/.* boot=live/) {
# kernel line
$ver = $1;
} else {