[opensuse] grub2 won't show me the menu..
Hi list, (I'm running TW, but I assume the issue is more general) After some issues with the latest update, I wanted to boot the previous kernel to see if that helps. /etc/default/grub is set to GRUB_DEFAULT=saved GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=0 As there is only on main OS on anyhow. OK, so press SHIFT during boot and ..... nothing, it just boots the default entry without even showing the menu. Also tried 't' (which is sometimes requested to press, too). No luck either, so I eventually gave up. So I changed the two timeout values to 2, and ran the grub2-mkconfig program. It still doesn't show the menu and just boots the default entry! I start getting quite pissed, TBH. OK, change the default boot entry or use grub2-once. But to what!? There are 31 possible commands listed if you type grub2-<TAB><TAB> NONE of them seems to be useful to provide the boot numbers from the menu. Nor does the manpage of programs that need this number as input give you a clue where to get the right number from. Why is SHIFT not working? Why does it ignore TIMEOUT settings? Why are manpages close to useless? What kind of **** is this? (Sorry for bad words, it's the weakest I could find) OK, somewhat cooled down, I'll try googling a bit more. But if someone already knows (some of) the answers.... -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org
Op dinsdag 13 februari 2018 15:15:05 CET schreef Peter Suetterlin:
Hi list,
(I'm running TW, but I assume the issue is more general)
After some issues with the latest update, I wanted to boot the previous kernel to see if that helps.
/etc/default/grub is set to GRUB_DEFAULT=saved GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=0
As there is only on main OS on anyhow.
OK, so press SHIFT during boot and ..... nothing, it just boots the default entry without even showing the menu. Also tried 't' (which is sometimes requested to press, too). No luck either, so I eventually gave up. So I changed the two timeout values to 2, and ran the grub2-mkconfig program.
It still doesn't show the menu and just boots the default entry!
I start getting quite pissed, TBH. OK, change the default boot entry or use grub2-once. But to what!?
There are 31 possible commands listed if you type grub2-<TAB><TAB>
NONE of them seems to be useful to provide the boot numbers from the menu. Nor does the manpage of programs that need this number as input give you a clue where to get the right number from.
Why is SHIFT not working? Why does it ignore TIMEOUT settings? Why are manpages close to useless?
What kind of **** is this?
(Sorry for bad words, it's the weakest I could find)
OK, somewhat cooled down, I'll try googling a bit more. But if someone already knows (some of) the answers....
What happens if you use YaST's bootloader module ? -- Gertjan Lettink, a.k.a. Knurpht openSUSE Board Member openSUSE Forums Team Linux user #548252 -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org
Knurpht - Gertjan Lettink load wrote:
Op dinsdag 13 februari 2018 15:15:05 CET schreef Peter Suetterlin:
OK, somewhat cooled down, I'll try googling a bit more. But if someone already knows (some of) the answers....
What happens if you use YaST's bootloader module ?
Uh, I'm a YaST-legasthenic, sort of. I hardly use it for this kind of things.. Yes, it has at least a drop-down list for the default. It also claims the timeout of 2s (which seems to be ignored). I found mention of os-prober overwriting timeouts - will have to look into this. And I found I can also get to the grub menu with ESC. (I also found that quite some people seem to have problems with shift not working. If that always works, why isn't that the solution communicated as default? Yes, I know you/OS are not grub2 maintainers (or are you?)) Thanks! -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org
13.02.2018 17:15, Peter Suetterlin пишет:
Hi list,
(I'm running TW, but I assume the issue is more general)
After some issues with the latest update, I wanted to boot the previous kernel to see if that helps.
/etc/default/grub is set to GRUB_DEFAULT=saved GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=0
As there is only on main OS on anyhow.
OK, so press SHIFT during boot and ..... nothing, it just boots the default entry without even showing the menu. Also tried 't' (which is sometimes requested to press, too). No luck either, so I eventually gave up. So I changed the two timeout values to 2, and ran the grub2-mkconfig program.
I suppose you know that grub2-mkconfig by itself just prints output to standard output.
It still doesn't show the menu and just boots the default entry!
I start getting quite pissed, TBH. OK, change the default boot entry or use grub2-once. But to what!?
There are 31 possible commands listed if you type grub2-<TAB><TAB>
NONE of them seems to be useful to provide the boot numbers from the menu. Nor does the manpage of programs that need this number as input give you a clue where to get the right number from.
You should not be using numbers anyway - grub2 configuration is dynamic and numbers may change at runtime (or should I call it boot time?). You should be using menu entry ID.
Why is SHIFT not working?
SHIFT is Ubuntu (or may be Debian in general) specific. There is no special SHIFT handling upstream and never was in openSUSE, and it works in legacy BIOS only anyway.
Why does it ignore TIMEOUT settings?
Show output of grub2-editenv - list pay attention to spaces.
Why are manpages close to useless?
Because nobody undertook efforts to write useful man pages? -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org
Andrei Borzenkov wrote:
13.02.2018 17:15, Peter Suetterlin пишет:
OK, so press SHIFT during boot and ..... nothing, it just boots the default entry without even showing the menu. Also tried 't' (which is sometimes requested to press, too). No luck either, so I eventually gave up. So I changed the two timeout values to 2, and ran the grub2-mkconfig program.
I suppose you know that grub2-mkconfig by itself just prints output to standard output.
Yes, sure. just too lazy to type (4-finger-typist...)
You should not be using numbers anyway - grub2 configuration is dynamic and numbers may change at runtime (or should I call it boot time?). You should be using menu entry ID.
Noted. But is there a utility to determine those? I don't care *what* the number is, but I need to know which to use ;^>
Why is SHIFT not working?
SHIFT is Ubuntu (or may be Debian in general) specific. There is no special SHIFT handling upstream and never was in openSUSE, and it works in legacy BIOS only anyway.
OK, so this is indeed new to me (doesn't say much, I know). Well appreciated.
Why does it ignore TIMEOUT settings?
Show output of
grub2-editenv - list
pay attention to spaces.
Yes, had looked at that already lux:~ # grub2-editenv - list env_block=512+1 saved_entry=openSUSE Tumbleweed Not much, is it? I think it's related to os-prober (see other reply in the thread), but didn't yet find time to look at it, due to that nvidia problem.
Why are manpages close to useless?
Because nobody undertook efforts to write useful man pages?
Jah well. In that case it's probably because GNU prefers info over man, so they are minimalistic. But e.g. 'man grub2-emu' doesn't even give an idea what it is good for.... The info files are quite good, I agree, but reading them in the console of a not-properly-booting system is not really fun. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Tuesday, 2018-02-13 at 18:43 -0000, Peter Suetterlin wrote:
Andrei Borzenkov wrote:
13.02.2018 17:15, Peter Suetterlin пишет:
...
You should not be using numbers anyway - grub2 configuration is dynamic and numbers may change at runtime (or should I call it boot time?). You should be using menu entry ID.
Noted. But is there a utility to determine those? I don't care *what* the number is, but I need to know which to use ;^>
Search for "menuentry_id_option" in the file /boot/grub2/grub.cfg, it is a long string imposible to memorize and almost impossible to type. Each "menuentry" gets a different and unique ID.
Why are manpages close to useless?
Because nobody undertook efforts to write useful man pages?
IMHO because they are not written by documentation writers, but by programmers. On the other hand, the doc writers may not know all the programs do, so the devs do have to write them... Maybe they should write the draft, them a doc writer polish it up. Then the problem becomes: do we have volunteer doc writers?
Jah well. In that case it's probably because GNU prefers info over man, so they are minimalistic. But e.g. 'man grub2-emu' doesn't even give an idea what it is good for.... The info files are quite good, I agree, but reading them in the console of a not-properly-booting system is not really fun.
Try "pinfo" instead of "info" - if it is installed. The interface is easier. - -- Cheers, Carlos E. R. (from openSUSE 42.3 x86_64 "Malachite" at Telcontar) -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEARECAAYFAlqDOBEACgkQtTMYHG2NR9WPkgCghgwqbpGcLV9fwaXJdXywq9d9 qZ8An08WdoKGPmMTaeDUy+aHIcNNK4db =J2aR -----END PGP SIGNATURE-----
13.02.2018 22:10, Carlos E. R. пишет:
Why are manpages close to useless?
Because nobody undertook efforts to write useful man pages?
IMHO because they are not written by documentation writers, but by programmers.
Manual pages for GRUB are not written - they are auto-generated from command help text.
13.02.2018 21:43, Peter Suetterlin пишет:
Why does it ignore TIMEOUT settings?
Show output of
grub2-editenv - list
pay attention to spaces.
Yes, had looked at that already
lux:~ # grub2-editenv - list env_block=512+1 saved_entry=openSUSE Tumbleweed
Just to make sure - could you verify this "shadow" env_block: hexdump -C -s 262144 -l 1024 /dev/sdX where /dev/sdX is partition where /boot/grub2 is located?
Not much, is it? I think it's related to os-prober (see other reply in the thread)
I do not see how it can be related to os-prober but if you make available your grub.cfg we can check what it does. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org
Andrei Borzenkov wrote:
13.02.2018 21:43, Peter Suetterlin пишет:
lux:~ # grub2-editenv - list env_block=512+1 saved_entry=openSUSE Tumbleweed
Just to make sure - could you verify this "shadow" env_block:
hexdump -C -s 262144 -l 1024 /dev/sdX
(assuming -l was intended as --length = -n ) lux:~ # hexdump -C -s 262144 -n 1024 /dev/nvme0n1p2 00040000 23 20 47 52 55 42 20 45 6e 76 69 72 6f 6e 6d 65 |# GRUB Environme| 00040010 6e 74 20 42 6c 6f 63 6b 0a 23 23 23 23 23 23 23 |nt Block.#######| 00040020 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 |################| * 00040200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00040400
Not much, is it? I think it's related to os-prober (see other reply in the thread)
I do not see how it can be related to os-prober but if you make available your grub.cfg we can check what it does.
ISTR someone mentioning if only one entry is found the timeout is set to 0. Thought this refered to os-prober, but probably not: lux:~ # grep -v ^# /etc/default/grub GRUB_DISTRIBUTOR= GRUB_DEFAULT=saved GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=0 GRUB_CMDLINE_LINUX_DEFAULT="nomodeset splash=silent quiet showopts" GRUB_CMDLINE_LINUX="" GRUB_TERMINAL="gfxterm" GRUB_GFXMODE="auto" GRUB_BACKGROUND=/boot/grub2/themes/openSUSE/background.png GRUB_THEME=/boot/grub2/themes/openSUSE/theme.txt SUSE_BTRFS_SNAPSHOT_BOOTING="true" GRUB_DISABLE_OS_PROBER="true" GRUB_ENABLE_CRYPTODISK="n" Seems it's disabled anyhow. (Yes, I had set the timeouts back to zero in the meantime) I had a closer look: If I (only) set GRUB_TIMEOUT to a non-zero value, but leave GRUB_HIDDEN_TIMEOUT at zero, things are fine. If I set both to 2, it waits 2s w/o menu, then immediately boots default entry. And this seems to be intended behavior, as I should have noticed already earlier, because grub2-mkconfig complains Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported. (unfortunately not standing out nicely like here, so I overlooked it...) Thanks for your interest/support :) -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org
participants (4)
-
Andrei Borzenkov
-
Carlos E. R.
-
Knurpht - Gertjan Lettink load
-
Peter Suetterlin