Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

version 18 too much detail #169

Open
jeffm999 opened this issue Jul 13, 2022 · 4 comments
Open

version 18 too much detail #169

jeffm999 opened this issue Jul 13, 2022 · 4 comments

Comments

@jeffm999
Copy link

I run efibootmgr version 17 at bash command line and it prints a simple list of boot options , eg.
> efibootmgr
BootCurrent: 0000
Timeout: 1
BootOrder: 0000,0001,000B,0006,0004,000C
Boot0000* GRUB
Boot0001* Windows
Boot0004 Hard
Boot0006 Windows
Boot000B Hard
Boot000C CD/DVD

now version 18 prints a very detailed list :
> efibootmgr
BootCurrent: 0000
Timeout: 1 seconds
BootOrder: 0000,0001,000B,0006,0004,000C
Boot0000* GRUB HD(1,GPT,d7f326dc-72f8-45a5-a3b1-9717fb74fa28,0x800,0x32000)/File(\EFI\GRUB\GRUBX64.EFI)
Boot0001* Windows Boot Manager HD(1,GPT,d7f326dc-72f8-45a5-a3b1-9717fb74fa28,0x800,0x32000)/File(\EFI\ARCHLINUX\GRUBX64.EFI)57494e444f5753000100000088000000780000004200430044004f0042004a004500430054003d007b00390064006500610038003600320063002d0035006300640064002d0034006500370030002d0061006300630031002d006600330032006200330034003400640034003700390035007d0000004d000100000010000000040000007fff0400
Boot0004 Hard Drive VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)0000474f
Boot0006 Windows Boot Manager HD(1,GPT,d7f326dc-72f8-45a5-a3b1-9717fb74fa28,0x800,0x32000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)0000424f
Boot000B Hard Drive BBS(HD,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0200)0000474f00004e4fe5000000010000009d00530041004d00530055004e00470020004d005a0056004c004200350031003200480042004a0051002d003000300030004c0032000000050109000200000000010416008b12e85cec2cf040837280640e3dc85802007fff040002010c00d041030a0000000001010600000301010600000003171000010000000025388a91b419007fff040001044a00ef47642dc93ba041ac194d51d01b4ce6530041004d00530055004e00470020004d005a0056004c004200350031003200480042004a0051002d003000300030004c00320000007fff04000000424f00004e4fc9000000010000008f00530061006d00730075006e0067002000530053004400200039003800300020003100540042000000050109000200000000010416008b12e85cec2cf040837280640e3dc85802007fff040002010c00d041030a0000000001010600001c0101060000000317100001000000002538d811b4007c7fff040001043c00ef47642dc93ba041ac194d51d01b4ce6530061006d00730075006e00670020005300530044002000390038003000200031005400420000007fff04000000424f00004e4fbd00000001000000850053005400340030003000300044004d003000300030002d003100460032003100360038000000050109000200000000010416008b12e85cec2cf040837280640e3dc85802007fff040002010c00d041030a0000000001010600021f03120a000000ffff00007fff040001043e00ef47642dc93ba041ac194d51d01b4ce6200020002000200020002000200020002000200020002000330053003000300038004c003500340000007fff04000000424f00004e4fbf00000001000000850054004f005300480049004200410020004d004700300034004100430041003400300030004e000000050109000200000000010416008b12e85cec2cf040837280640e3dc85802007fff040002010c00d041030a0000000001010600021f03120a000200ffff00007fff040001043e00ef47642dc93ba041ac194d51d01b4ce620002000200020002000200020002000360036003900490033004b005a0043005600460043004c0000007fff04000000424f00004e4fbd00000001000000850053005400340030003000300044004d003000300030002d003100460032003100360038000000050109000200000000010416008b12e85cec2cf040837280640e3dc85802007fff040002010c00d041030a0000000001010600021f03120a000300ffff00007fff040001043e00ef47642dc93ba041ac194d51d01b4ce62000200020002000200020002000200020002000200020003300530030003000480038003700460000007fff04000000424f
Boot000C CD/DVD Drive BBS(CDROM,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0300)0000474f00004e4fbd000000010000008500410053005500530020002000200020004400520057002d003200340042003500530054000000050109000300000000010416008b12e85cec2cf040837280640e3dc85803007fff040002010c00d041030a0000000001010600041103120a000300ffff00007fff040001043e00ef47642dc93ba041ac194d51d01b4ce635004300300044004c0043003000300030003400340030002000200020002000200020002000200000007fff04000000424f

I think it would be good if v18 default was same as v17 ?

-u option trims output down a bit, maybe add a -s option for 'simple' output, or just revert default to same as v17

rgds

@gentoo-root
Copy link

Commit 8ec3e9d changed the output format intentionally. This change broke my script that parsed the output to find existing entries by name. @vathpela, could you revert this change?

  1. Scripts that parse the output broke, because the format changed.
  2. There is not even an option to go back to the old format.
  3. The new format can't be reliably parsed. Even though the device path comes after a tab character, it's not guaranteed to be printed, so the script can't just throw away everything after the last tab. If the entry name contains a tab, and efidp_format_device_path fails, the parser will misinterpret part of the name as the device path.

@mrsteve0924
Copy link

I'm just noticing this behavior as well with version 18. I hope they go back to the format from version 17.

@jeffm999
Copy link
Author

Just for anyone who is looking for a workaround since it looks like v18 will not be updated, you can use awk in an alias , or script to replicate the v17 printout :

alias ebm='awk -F"HD|BBS|Ven" "{print $1}" <(efibootmgr -u)'

Depending on your system, it might be necessary to add other awk -F delimiters.

rgds

@petr-janda
Copy link

Hi, it actually prevents installation on certain hardware
https://bugzilla.redhat.com/show_bug.cgi?id=2148480

dvzrv added a commit to dvzrv/rauc that referenced this issue Jul 27, 2023
Since efibootmgr 18, the default output of `efibootmgr` is now more
verbose [1], which breaks the assumptions made by RAUC in regards to
parsing the output. This issue is also affecting others [2].

Fix the parsing logic by unconditionally splitting on a tab in the
detected name part of the boot entry, so that the unused data part can
be discarded.
Emit a debug message for each found boot entry, as this helps in
detecting issues in the future.

[1] rhboot/efibootmgr@8ec3e9d
[2] rhboot/efibootmgr#169

Signed-off-by: David Runge <dave@sleepmap.de>
dvzrv added a commit to dvzrv/rauc that referenced this issue Jul 28, 2023
Since efibootmgr 18, the default output of `efibootmgr` is now more
verbose [1], which breaks the assumptions made by RAUC in regards to
parsing the output. This issue is also affecting others [2].

Fix the parsing logic by unconditionally splitting on a tab in the
detected name part of the boot entry, so that the unused data part can
be discarded.
Emit a debug message for each found boot entry, as this helps in
detecting issues in the future.

[1] rhboot/efibootmgr@8ec3e9d
[2] rhboot/efibootmgr#169

Signed-off-by: David Runge <dave@sleepmap.de>
dvzrv added a commit to dvzrv/rauc that referenced this issue Jul 28, 2023
Since efibootmgr 18, the default output of `efibootmgr` is now more
verbose [1], which breaks the assumptions made by RAUC in regards to
parsing the output. This issue is also affecting others [2].

Fix the parsing logic by unconditionally splitting on a tab in the
detected name part of the boot entry, so that the unused data part can
be discarded.
Emit a debug message for each found boot entry, as this helps in
detecting issues in the future.

[1] rhboot/efibootmgr@8ec3e9d
[2] rhboot/efibootmgr#169

Signed-off-by: David Runge <dave@sleepmap.de>
dvzrv added a commit to dvzrv/rauc that referenced this issue Jul 28, 2023
Since efibootmgr 18, the default output of `efibootmgr` is now more
verbose [1], which breaks the assumptions made by RAUC in regards to
parsing the output. This issue is also affecting others [2].

Fix the parsing logic by unconditionally removing anything after a tab
in the detected name part of the boot entry, so that the unused data
part is discarded.
Emit a debug message for each found boot entry, as this helps in
detecting issues in the future.

[1] rhboot/efibootmgr@8ec3e9d
[2] rhboot/efibootmgr#169

Signed-off-by: David Runge <dave@sleepmap.de>
jluebbe pushed a commit to dvzrv/rauc that referenced this issue Jul 31, 2023
Since efibootmgr 18, the default output of `efibootmgr` is now more
verbose [1], which breaks the assumptions made by RAUC in regards to
parsing the output. This issue is also affecting others [2].

Fix the parsing logic by unconditionally removing anything after a tab
in the detected name part of the boot entry, so that the unused data
part is discarded.
Emit a debug message for each found boot entry, as this helps in
detecting issues in the future.

[1] rhboot/efibootmgr@8ec3e9d
[2] rhboot/efibootmgr#169

Signed-off-by: David Runge <dave@sleepmap.de>
dvzrv added a commit to dvzrv/rauc that referenced this issue Aug 1, 2023
Since efibootmgr 18, the default output of `efibootmgr` is now more
verbose [1], which breaks the assumptions made by RAUC in regards to
parsing the output. This issue is also affecting others [2].

Fix the parsing logic by unconditionally removing anything after a tab
in the detected name part of the boot entry, so that the unused data
part is discarded.
Emit a debug message for each found boot entry, as this helps in
detecting issues in the future.

[1] rhboot/efibootmgr@8ec3e9d
[2] rhboot/efibootmgr#169

Signed-off-by: David Runge <dave@sleepmap.de>
dvzrv added a commit to dvzrv/rauc that referenced this issue Aug 1, 2023
Since efibootmgr 18, the default output of `efibootmgr` is now more
verbose [1], which breaks the assumptions made by RAUC in regards to
parsing the output. This issue is also affecting others [2].

Fix the parsing logic by unconditionally removing anything after a tab
in the detected name part of the boot entry, so that the unused data
part is discarded.
Emit a debug message for each found boot entry, as this helps in
detecting issues in the future.

[1] rhboot/efibootmgr@8ec3e9d
[2] rhboot/efibootmgr#169

Signed-off-by: David Runge <dave@sleepmap.de>
dvzrv added a commit to dvzrv/rauc that referenced this issue Aug 1, 2023
Since efibootmgr 18, the default output of `efibootmgr` is now more
verbose [1], which breaks the assumptions made by RAUC in regards to
parsing the output. This issue is also affecting others [2].

Fix the parsing logic by unconditionally removing anything after a tab
in the detected name part of the boot entry, so that the unused data
part is discarded.
Emit a debug message for each found boot entry, as this helps in
detecting issues in the future.

[1] rhboot/efibootmgr@8ec3e9d
[2] rhboot/efibootmgr#169

Signed-off-by: David Runge <dave@sleepmap.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants