0

I'm using overlayroot configured as overlayroot=tmpfs:swap=1,recurse=0 in my /etc/overlayroot.conf.

overlayroot is working as expected. I've managed to update grub by simply disabling overlayroot and then reenabling it as I wish (I'm setting up an image, therefore I'm making quite a few changes along the way)

The problem is, on reboot I get the grub menu appearing for 30s regardless of how I've set the grub config. Oh and I should mention, each time I've run update-grub and was not in read-only mode.

Here's my grub config. I also tried to no avail GRUB_DISABLE_OS_PROBER=true

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

# Disable OS Prober for selecting dual boot scenarios.
GRUB_DISABLE_OS_PROBER=true

I think what is happening is, overlayroot changes the mount points. So when overlayroot is disabled it boots without showing the grub menu, whereas with it enabled it sees more mount points and decides to load the menu.

I've also tried the accepted answer in this post: https://serverfault.com/questions/549166/how-to-update-grub-on-a-system-running-overlayroot however I still get the error '/usr/sbin/grub-probe: error: failed to get canonical path of `/dev/mmcblk0p2'.'

0

OK, solved, disable overlayroot & add the following:

/etc/default/grub

GRUB_RECORDFAIL_TIMEOUT=$GRUB_TIMEOUT

Then update grub

update-grub

Re-enable overlayroot & reboot

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.