• Grub2-dependent distros


    Till July 2016 it was possible to directly boot any distro, not only Arch-based, by the Grub (aka Grub 1, aka Grub Legacy) boot loader. Independently from the boot loader used in the installation ISO. For quite a long time now it is Grub 2.

    Starting from July 2016 some - “bad” - distros gradually loose the ability to be booted by Grub 1 directly. They are installed in such a way that an attempt to boot them directly with Grub 1 returns Error 14: Filesystem compatibility error, cannot read whole file.

    It is still possible to boot them indirectly with Grub 1 - by installing Grub 2 in their / partition, and then by chainloading their Grub 2 from Grub 1. Exactly the same way as any Grub boots Windows. Though it looks very strange to boot Linux in a Windows way.

    Other - “good” - distros still survive. Even though they have Grub 2 as the default boot loader, once installed, they can be booted directly by Grub 1.

    Every time when some newly published release refuses to be booted by Grub 1 directly, I do a fresh native Arch installation. It doesn’t depend on any installer or specific boot loader. As expected, Grub 1 launches all Arch instances directly and without a problem.

    I’m posting this because starting from 2016.09.03 release Antergos makes part of the 1st, “bad” distros category. 2016.09.25 release imposes the use of Grub 2 as well.

    Remaining strictly in Arch world, looking at well-known and active distros, and considering only the most recent releases, these are “bad” distros which accept only Grub 2 by default now:

    These are “good” distros which continue to accept either Grub 1 or Grub 2:

    For me, it is a very bad tendency, when a distro begins to depend on a specific boot loader. I’m very, very concerned about it. And I don’t want to boot Linux as if it were Windows. For these two reasons I tend to avoid using such distros.

    A native Arch Linux installation with added [antergos] repo is almost undistinguishable from Antergos. I do not use and have no plans to use Grub 2. If popular distros will force to use it, I’ll turn back to vanilla Arch + [antergos] repo combo.

    Just personal thoughts. Sorry for the time, lost for reading.

    Regards

  • It may seem a little radical, but i think it’s very important what you just wrote. GNU/Linux is freedom and it include options to choose between a system, resources etc.
    Congratulations.

    Antergos (default OS) - WIN10 (abandoned)
    I3wm - Mate desktop
    AMD - A4 7300 Radeon graphics
    16 GB ram
    HD 1 TB
    Linux newbie since 06/2016

  • @just bear with me, please, so I can understand your issue.

    We’ve never offered Grub1 in Cnchi. It’s always Grub2 (or systemd-boot if uefi is detected).

    What is that prevents you from installing Grub1? I’m not aware of any change in the installer that would make you not be able to install Grub2 and then Grub1. If I recall correctly, you even have the option of not installing a bootloader at all.

    Am I missing something?

  • @karasu said in Grub2-dependent distros:


    Am I missing something?

    No, nothing more than is already described in the OP.

    It’s a subject difficult to understand and to explain. Honestly, I don’t understand the issue completely myself. And I’m very far from blaming any specific distro or installer. I just wasn’t able anymore to keep the concerns for myself only, and wanted to share the worries with the community.

    Simple facts are:

    • some distros, if installed without Grub2, cannot be booted, in no way, by Grub1. I call them “bad”.

    • they may be booted by Grub, from MBR, only when:

      • Grub2 is installed in their / partition
      • that Grub2 is chainloaded by “master” Grub1 (like any Grub can boot any other OS, including Windows)
    • Antergos 2016.09.03 and 2016.09.25 releases make part of the above group now

    • other distros, including older Antergos releases, have no problem to be booted from the “master” Grub1, whether or not Grub2 is installed for them. Usually I never install Grub2. These distros I call “good”.

    An example.

    I boot Antergos from “master” Grub1 direclty, with this entry in menu.lst. The root of this Antergos instance resides on sdb disk, in the sdb15 partition. This is an old Antergos installation, installed without Grub2 and before 2016.09.03, so it can be booted by Grub1:

    #----------------------------------------------------------------------
    title  antergos 2016.09.25 mate-test-top (sdb15)
    kernel (hd1,14)/boot/vmlinuz-linux showopts root=/dev/sdb15 rw resume=/dev/sda3 vga=895 quiet splash rcutree.rcu_idle_gp_delay=1
    initrd (hd1,14)/boot/initramfs-linux.img
    

    If I install Antergos 2016.09.03 or 2016.09.26 without Grub2 now, and try to boot it with the above commands, Grub 1 fails and returns:

    Error 14: Filesystem compatibility error, cannot read whole File
    

    If I still want to boot Antergos 2016.09.03/25 system, I have to:

    • install Grub2 with it, in the / partition
    • chainload it from Grub1, like Windows or any other OS, with:
      #----------------------------------------------------------------------
      title  antergos 2016.09.25 mate-test-top (sdb15)
      rootnoverify (hd1,14)
      chainloader  (hd1,14)+1
      

    It works, I can set menu delay in Grub2 to 0 sec, so it might seem like the system was booted by Grub1. So why don’t I use Grub2?

    Grub2 updates are reasonably fast only on computers with 1 or 2 OSes. Maybe 3, max 4. On computers with higher number of independent OSes Grub2 - more specifically, the os-prober script - turns out to be a disaster.

    Any Grub2 update, which triggers os-prober execution, takes 4 hours to complete on a computer with 10 independent OSes. Obviously, this update takes 4 hours to finish within a single OS only.

    At home I have 3 computers. Two of them have from 10 to 13 OSes. There are from 16 to 26 OSes on the third one. Counting the computers I must follow (relatives and friends), their number grows up to 10.

    How much time it would take to update Grub2 in all OSes on all computers? Let’s simplify by saying that there are not more than 10 OSes on each computer:

    10 computers x 10 OSes x 4 hours = 400 hours

    More than two weeks. For pure os-prober execution. While runs, it consumes all CPU and RAM resources - the system is unusable.

    When I move, add, delete an OS it takes less tham 10 sec to adjust the corresponding Grub1 menu.lst entry by hand.

    Initially I thought that Grub2-dependency was caused by the installer. Calamares distros were the first that started to behave in this way. While Cnchi was continuing to install nicely.

    Then even Cnchi has started to install only Grub2-dependent Antergos. On the other hand, Calamares has started to install bootloader-independent OSes.

    I thought it was related to kernel. First Grub2-dependent distros have 4.7.x. But I was wrong - currently I run two years old Antergos installations with 4.7.5.

    Repeat, I do not know, what this behaviour depends on.

    For me this is not a problem at all. There’s always vanilla Arch, free of these… issues. I’m fine with it. Moreover, most probably I’m the last Grub1 user on Earth, and the problem is not interesting for anyone. That’s fine too.

    Sorry for a long and tedious post. It was not my intention to open any discussion.

    Regards

grub2-dependent1 distros1 Posts 4Views 596
Log in to reply