Page 1 of 4

[Solved] Help with Grub Customizer not Saving Configurations Correctly

Posted: Thu Oct 11, 2018 3:33 pm
by rej
Hi-

MX17.1 Grub is suddenly saving very differently from my configuration entries and in multiple copies.

Have tested this on three completely different model Lenovos (two x64 and one x86) with several different MX snapshots on USBs.

I have reinstalled Grub and tried Boot repair, with the same outcome.

After attempting to remove the extra entries, they triple.

Every time the config is saved, more additional duplicate entries appear when Grub Customizer is reopened.

After trying "revert" to start over on one device, and saving configuration, so many entries were listed in random order, that it was very difficult to find any of them. Had to delete all partitions except for the Win 8.1, add one MX and only antiX partitions thereafter.

A notification box appears after it is saved, indicating it is not up to date, no matter how many times it is saved.

If antiX is installed on several partitions, Grub Customizer saves normal entries and in the order selected. Only with more than one MX installation on the same device, are multiple duplicate partitions appearing and incorrectly ordered.

Various MX and antiX desktop environments are on separate partitions so that they do not conflict with each other. Some of my installations are up to 8 partitions on one hard drive - all MX and antiX (aside from Win 8.1).

Devices that have multiple MX installations that are unchanged and have not had any more added in the past 2 weeks are ordered correctly, no multiples. Normal boot menu.

This boot menu becomes difficult to find my systems - is there a way to fix this?

The problem started very recently. Could it be from an update? Kernel?

I can provide more screenshots of the Grub Customizer saves and my config input, also inxi -F all devices. It is very difficult to sort out when looking at them.

My configuration entries are, in order:

MX [sda 3]
antiX [sda5]
antiX [sda6]
MX [sda7]
Windows 8.1 [sda 1]

Screenshot included is how Grub saves it. It is actually more than 6 full screenshots to include all the extra entries Grub throws in. I have them to post if needed.

Any help would be appreciated.

Thank you.

Re: Help with Grub Customizer not Saving Configurations Correctly

Posted: Thu Oct 11, 2018 4:19 pm
by fehlix
rej wrote: Thu Oct 11, 2018 3:33 pm MX17.1 Grub is suddenly saving very differently from my configuration entries and in multiple copies.
The "controling" grub, i.e. the one you are booting from,
is collection all menuentries from the other grub-menu entries,
which contain also booting into other OS's installed.
To tidy up this mess, here what I would do with multi-installed grub:
Within all other Linux's Grub's (not within the controlling grub) setup grub such
that is not scanning for other OS's by adding / modifying this line
whitin /etc/default/grub

Code: Select all

GRUB_DISABLE_OS_PROBER=true
within that Linux. And after done that, do rerun grub-menu generation

Code: Select all

sudo update-grub
within that other OS's.
Do this for all Linux's , except the one which has the controling grub.
After having done this, boot into the Linux with the controlling grub
and do re-run grub-menu generation

Code: Select all

sudo update-grub
Having this done grub-menu will not have multiple "identical" entries for other linux installations anymore.
:puppy:
EDIT: some wording :footinmouth:

Re: Help with Grub Customizer not Saving Configurations Correctly

Posted: Fri Oct 12, 2018 5:15 am
by male
@fehlix
I had already got myself a beer and popcorn yesterday, curious to see what the advocates of the customizer will recommend to the TE... ;)
As I see, nobody has reported

My solution for this chaos of the customizer is to uninstall this crap.

Then I recommend for the Linuxe involved (not the main distribution with the bootloader in the MBR of sda)

Code: Select all

chmod -x 30_os-prober
This is tested, has worked for years and can withstand any update. :happy:

Re: Help with Grub Customizer not Saving Configurations Correctly

Posted: Fri Oct 12, 2018 5:30 am
by fehlix
male wrote: Fri Oct 12, 2018 5:15 am

Code: Select all

chmod -x 30_os-prober
Good you mentioned this. :number1:
Yes, revoking execution permission on 30_os-prober with

Code: Select all

sudo chmod -x /etc/grub.d/30_os-prober
is the other alternative, which was the only one before they introduced GRUB_DISABLE_OS_PROBER within /etc/default/grub.

Re: Help with Grub Customizer not Saving Configurations Correctly

Posted: Sat Oct 13, 2018 4:06 pm
by rej
Thank you both-

fehlix-

[Lenovo T420]
Each MX and antiX installation on disk - sda5, 6 & 7 [not MX sda3 with the bootloader]:

Edited /etc/default/grub -
GRUB_DISABLE_OS_PROBER=true [from false]
and
Terminal sudo update-grub - sda5, 6 & 7 [generates a list...]

MX where bootloader is installed:
Terminal - sudo update-grub [again, generates a list...]

Grub Customizer - saved my usual order configuration.

Result: Re-open Grub Customizer - over 100 entries with sda7 with Win8 & sda6 in the middle of the chaos.
Reinstalled grub -same
Reverted - no sda6 or Win8 appearing in the list.
General - "look for other operating systems" was unchecked at this point (not normal), checked that, ran it and had success. It saved my boot order. Will make no further changes on this device until what caused it to save normally is determined.
------------
[Lenovo T60 x86 & T60p x64]

Not successful.
Same procedure with no change.
Tried again and again same results.
------------
Tried "sudo chmod -x /etc/grub.d/30_os-prober" on each extra MX & antiX - sda5, 6 & 7 [not bootloader installation] - same long list, disordered on boot.
Is there a way to reverse the code, should the installation be migrated [via snapshot] to another device as the partition with active bootloader?
Reinstalled Grub Customizer after that.
______________________

Male-

Uninstalled Grub Customizer [Synaptic] on MX - sda3 with bootloader.
--
antiX (sda5) - ran:

Terminal-
rj@antix17.1rj:~
$ su
Password:
root@antix17:/home/rj# chmod -x 30_os-prober
chmod: cannot access '30_os-prober': No such file or directory
root@antix17:/home/rj#

Without Grub Customizer, how to configure boot order after this code is run?

--------------

Hope this isn't too many (confusing) details.

Thanks again, I appreciate the assistance from both of you.

Re: Help with Grub Customizer not Saving Configurations Correctly

Posted: Sat Oct 13, 2018 6:01 pm
by caprea
Maybe I'm wrong, but wouldnt it be the easiest for the OP , if there is only one hard drive,
to boot into one of the antix partitions and do a

sudo grub-install /dev/sda

sudo update-grub

and let the antix-partition take control over grub and never,never touch grub-customizer again ?

Re: Help with Grub Customizer not Saving Configurations Correctly

Posted: Sat Oct 13, 2018 6:54 pm
by fehlix
rej wrote: Sat Oct 13, 2018 4:06 pm [Lenovo T420]
Each MX and antiX installation on disk - sda5, 6 & 7 [not MX sda3 with the bootloader]:

Edited /etc/default/grub -
GRUB_DISABLE_OS_PROBER=true [from false]
and
Terminal sudo update-grub - sda5, 6 & 7 [generates a list...]
Well the "[generates a list...]" is the part you have not shown :frown:
Something wrong. Better show what you have: E.g. on sda5, ...

Code: Select all

grep GRUB_DISABLE_OS_PROBER /etc/default/grub
ls -al /etc/grub.d/*
and the output of

Code: Select all

sudo update-grub

Re: Help with Grub Customizer not Saving Configurations Correctly

Posted: Sat Oct 13, 2018 6:59 pm
by fehlix
caprea wrote: Sat Oct 13, 2018 6:01 pm Maybe I'm wrong, but wouldnt it be the easiest for the OP , if there is only one hard drive,
to boot into one of the antix partitions and do a

sudo grub-install /dev/sda

sudo update-grub

and let the antix-partition take control over grub and never,never touch grub-customizer again ?
Yes, in multiboot you do it this way ( in BIOS boots).
And I think this is the sda3, which "has" the controling grub.
But grub is so smart to collect from all other "installed" grub's the menuenties from within their respective grub.cfg's (menus),
even if those grub.cfg-menus are not active or in use.
:alien:

Re: Help with Grub Customizer not Saving Configurations Correctly

Posted: Sat Oct 13, 2018 8:08 pm
by fehlix
fehlix wrote: Sat Oct 13, 2018 6:54 pm
rej wrote: Sat Oct 13, 2018 4:06 pm [Lenovo T420]
Each MX and antiX installation on disk - sda5, 6 & 7 [not MX sda3 with the bootloader]:

Edited /etc/default/grub -
GRUB_DISABLE_OS_PROBER=true [from false]
and
Terminal sudo update-grub - sda5, 6 & 7 [generates a list...]
Well the "[generates a list...]" is the part you have not shown :frown:
Something wrong. Better show what you have: E.g. on sda5, ...

Code: Select all

grep GRUB_DISABLE_OS_PROBER /etc/default/grub
ls -al /etc/grub.d/*
and the output of

Code: Select all

sudo update-grub
In addtion to the above do also show for at least one of the "non-controling" grubs:

Code: Select all

grep '\b(menuentry|submenu)' /boot/grub/grub.cfg 
( within code-tags [code][/code] ).

Re: Help with Grub Customizer not Saving Configurations Correctly

Posted: Sun Oct 14, 2018 4:47 am
by male
rej wrote:
Male-

Uninstalled Grub Customizer [Synaptic] on MX - sda3 with bootloader.
--
antiX (sda5) - ran:

Terminal-
rj@antix17.1rj:~
$ su
Password:
root@antix17:/home/rj# chmod -x 30_os-prober
chmod: cannot access '30_os-prober': No such file or directory
root@antix17:/home/rj#

Without Grub Customizer, how to configure boot order after this code is run?
The

Code: Select all

chmod -x 30_os-prober
of course you can't run it in your $HOME. To do this, you need to go to the directory as root, or, as @fehlix writes, prepend the entire path to it

Code: Select all

chmod -x /etc/grub.d/30_os-prober
Fundamentaly !
There are different methods of solving this problem in multiboot systems. The user
(She) must choose ONE :exclamation:

My solution requires that:
-Grub-Customizer is NOT used in principle
-the grub of the Linux'e involved was installed in the partition master boot record (PBM), so / , and
-as above the os-prober was deprived of the right of execution.

The debian-typical problem that kernel updates of these Linux'e in the menu
of the main bootloader -"above"- (because I forgot update-grub ;) ), I solve this problem by editing the 40_custom (once)
For instance:

Code: Select all

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
menuentry 'Chainload Paint It Black - lxde (2016.1) (auf /dev/sda10)' {
	set root='hd0,msdos10'
	configfile /boot/grub/grub.cfg
}
menuentry 'Chainload 2017.1.0 patience (kde) (auf /dev/sda11)' {
	set root='hd0,msdos11'
	configfile /boot/grub/grub.cfg
}	
menuentry 'Chainload ROSA (lxqt) (auf /dev/sda7)' {
	set root='hd0,msdos7'
	configfile /boot/grub2/grub.cfg
}
menuentry 'Chainload antiX17 (auf /dev/sdb1)' {
	set root='hd1,msdos1'
	configfile /boot/grub/grub.cfg
}


This selection of the menu guarantees me, always (even with forgotten update-grub in the main boot loader), that this updated kernel will be started. ;)

So if you left out the grub in the Linux'es, you'll have to install it later, or, you can't use my method.