Mailinglist Archive: opensuse-features (253 mails)

< Previous Next >
[openFATE 308497] Update to GRUB v2
Feature changed by: Jedi Beeftrix (Jedibeeftrix)
Feature #308497, revision 91
Title: Update to GRUB v2

openSUSE-11.3: Rejected by Thomas Schmidt (digitaltomm)
reject reason: 11.3 is already released
Priority
Requester: Important

openSUSE-11.4: Rejected by Mindaugas Baranauskas (embar-)
reject reason: I see, that with openSUSE 11.4rc2 was installed legacy
GRUB (0.9x), not GRUB2 (I tested with KDE LiveCD). So I change from
"Done" to "Rejected"
Priority
Requester: Important

openSUSE Distribution: Evaluation by engineering manager
Priority
Requester: Important

Info Provider: Jakub Rusinek (liviopl)
Requested by: Jeff Mahoney (jeff_mahoney)
Partner organization: openSUSE.org

Description:
Every single bug or feature that anyone has developed for GRUB 0.97 has
been rejected by the upstream project in favor of using GRUB 2. There
has been resisitence in the distribution community to switching boot
loaders, but this stalemate isn't going to go away. The code itself
isn't well written or well maintained. Adding a new feature involves
jumping through a lot of hoops that may or may not work even if you
manage to work around all the runtime limitations. For example, a fs
implementation has a static buffer it can use for memory management.
It's only 32k. For complex file systems, or even a simple journaled
file system, we run into problems (like the reiserfs taking forever to
load bug) because we don't have enough memory to do block mapping for
the journal so it needs to scan it for every metadata read. (Yeah,
really.)
GRUB v2 has a cleaner design, is modular, and it has support for
multiple architectures including i386, x86-64, and powerpc. Support for
ia64 is said to be forthcoming. EFI support is already there. More
importantly, it supports far more file systems and has native MD RAID
and LVM support. Adding support for a new file system is much easier,
cleaner, and has fewer limitations than with GRUB 0.97.
Current status:
* grub2 is available as package in openSUSE 11.4 and newer. It can be
used and tested.
* TODO: perl-bootloader does not know about grub2 and thus after each
kernel update a manual run of "grub2-mkconfig -o /boot/grub2/grub.cfg"
is needed
* TODO: yast2 does not know to setup grub2 as bootloader
* TODO: Enhance grub2 package to make bootloader look nice (currently
it's text only)
* TODO: Is the above really all? If not add more ;)
Once all the above TODOs are done, we can make grub2 the default,
volunteers for each step are welcome.

Relations:
- Support different linux installations in grub (feature/id: 311035)
- switch to a UEFI-ready bootloader by default (feature/id: 311043)

Business case (Partner benefit):
openSUSE.org:
* Supportability - upstream bug fixes and development community
* Features - better fs support, native RAID and LVM support
* Features - boot from iso files


Discussion:
#1: Robert Davies (robopensuse) (2009-12-12 14:11:06)
The main issue with GRUB2 (trying it out with Kubuntu-9.10) seems that
the simple text config file "/boot/grub/menu.list" is replaced by
scripts in /etc/grub.d, so GRUB menu configuration is less obvious and
more auto-magical.  Changing order of entries, and customising the menu
becomes indirect, though it would appear possible to "simply" use the
40_custom script and disable the other scripts, which handle entries
for updated kernels.  Altering kernel options is done in similar way to
/etc/sysconfig files which allow setting of variables.
YaST Bootloader module would need reworking to be focussed on option
tweaks and listing installed kernels, and other OS's found.

#2: Michael Löffler (michl19) (2010-02-10 18:30:51)
Would we have a maintainer for GRUB2?

#3: Jakub Rusinek (liviopl) (2010-02-10 19:22:36)
Better appearance, localization... It's worth it.

#6: Stephan Kulow (coolo) (2010-03-03 12:54:43) (reply to #3)
are you willing to (co-)maintain it?

#7: Jakub Rusinek (liviopl) (2010-03-03 13:54:08) (reply to #6)
What do you mean exactly? That I could be in charge of packaging it?
This is something I could do. Then it's easy to try using SUSE Studio
:) .

#8: Andreas Jaeger (a_jaeger) (2010-03-03 14:05:44) (reply to #7)
I think Stephan points to
http://lists.opensuse.org/opensuse-factory/2010-02/msg00186.html

#9: Jakub Rusinek (liviopl) (2010-03-03 14:08:55) (reply to #8)
So I have to test on my LiveDVD and if I have time, I will.

#12: coly li (colyli) (2010-05-11 06:53:24) (reply to #6)
I'd like to maintain or comaintain this package. I mean packaging and
bug fixes, or new feature. In GSoC 2008, I have a little experience in
GRUB 0.97. For GRUBv2, it's new code, anyway I still can show my love
to her :-)

#10: Robert H. Williams (robhwill) (2010-04-24 08:12:58)
Hooray!!  grub 0.97.......bye-bye!!! I look forward to this; I'm
willing to type/format/post
all documentation for grub2 for openSuSE.  (Not a coder, but I'd like
to help!)
Take care.  Have A Healthy, Prosperous Day!  --- rob

#11: Bayard Coolidge (n1ho) (2010-05-08 02:05:04)
I would love to see it made available as long as it can boot existing
systems on other drives; I installed Ubuntu to a 1TB USB drive, and it
works fine under Ubuntu, but it won't boot Windows XP or openSUSE 11.2
that are already installed on the internal hard drives.

#13: hernan thiers (faco84) (2010-06-01 15:37:30)
I have seen a lot of people saying how difficult is to manage the boot
loader with grub2 with those scripts and config files. Some Ubuntu
10.04 guys are missing grub 0.97.
Anyway maybe it is still very new and people have to learn again this
new tool. If the new features worths.

#21: Nelson Marques (ketheriel) (2010-11-17 18:06:58) (reply to #13)
Grub2 syntax is pretty much the same as bind, I don't find it
difficult, in fact I find Grub2 far more flexible. But that's just me.
The only drawback that I see if most likely YaST integration, that
aside, there's no real reason for not using Grub2.

#14: Mario Guzman (mgbz) (2010-08-03 00:23:56)
GRUB2 FEATURES (beyond grub legacy). I don't bother with the /etc
baloney. I have grub2 in it's own partition and edit the grub.cfg file
and never have a problem.
I don't use grub at all, only grub2. Would love to see the ancient grub
replaced in OpenSuse.
Check the problems it has solved for me, and there is much more.
No need for separate /boot partition.
Allows /boot to be in "/"
Allows /boot to be in XFS or other non grub legacy filesystem
Allows /boot to be in LVM managed space
ADVANTAGES------------------------------------------------:
Partitioning is far simpler
If only using one /boot then no longer worry about filling up due to
larger kernels etc.
If using only one /boot then no longer an issue with multiple linuxes
using the same /boot and getting needed kernels deleted due to yast
maintenance of one partition.
No need for multiple /boot partitions when multiple linuxes of the same
version are on the machine. For instance a main and
emergency/maintenance partitiion both using the same kernel. If one is
updated the other stops working.
Each linux can have customized /boot without worry of affecting other
linux partitions.
LVM can be used for all partitions. This allows resizing of paritions
at any time. Far more flexibility
Makes backups simpler since "/" contains /boot.
Consider my scenario and see how GRUB2 saves the day-------:
Disk 1    /boot (for 1 linux in case needed during install)
    /grub2
LVM    Opensuse 11.2 primary
"    Opensuse 11.3 emergency/maintenance
"    Opensuse 11.3 for testing
"    common data
"    swap
DISK2    /grub2            In case of any disk1 partition failure I can
boot here. 
LVM    Opensuse 11.1 BU    I handle emergencies so the system must be
reliable (I do also have a BU machine)
"    Opensuse 11.2 BU
"    Testsys
"    swap

#15: Will Bickerstaff (wdbstaff) (2010-08-03 07:54:08)
Grub2 is not particularly difficult to config, sure its more involved
than 0.97, but then it is far more capable, if this is the only real
concern, why not re-package/implement something like startup manager
which handles the most common changes. Over at developerWorks theres a
great article on Grub2:
http://www.ibm.com/developerworks/linux/library/l-grub2/?ca=drs-

#16: a23 d56 (a23d56) (2010-08-31 17:35:05)
grub2 fails on my server config. don't force me to use grub2. let
users who want grub2, choose it during install.

#17: Markus K (kamikazow) (2010-10-28 02:38:44)
Is GRUBv2 out of beta, yet? If no: Keep the buggy bleeding edge stuff
to Fedora and Ubuntu

#19: Nelson Marques (ketheriel) (2010-11-17 18:04:46) (reply to #17)
There are tons of precedents (beta)? No? I can remember of nouveau for
example.
And Fedora most times ships with stabilized versions, not exactly the
buggy the buggy stuff. Can't speak for Ubuntu.

#20: Nelson Marques (ketheriel) (2010-11-17 18:04:46) (reply to #17)
There are tons of precedents (beta)? No? I can remember of nouveau for
example.
And Fedora most times ships with stabilized versions, not exactly the
buggy the buggy stuff. Can't speak for Ubuntu.

#18: Glenn Doig (doiggl) (2010-10-29 06:10:12)
grub2 is packaged at

https://build.opensuse.org/package/show?package=grub2&project=openSUSE%3AFactory

(https://build.opensuse.org/package/show?package=grub2&project=openSUSE%3AFactory)


#22: Andreas Jaeger (a_jaeger) (2010-11-29 11:24:03)
We've added grub2 as an alternative, missing is integration into perl-
bootloader and yast.

#23: Martin Seidler (pistazienfresser) (2010-12-31 20:28:25) (reply to
#22)
So in what extend is this feature "Done"? 1) Is it also planned to choose
GRUB2 while installation (and maybe to drop LILO as an active
alternative there)? If I have not missed anything I was not able to do
this with 11.4 Milestone 4. I think it is inconvenient that you are
able to see and boot any Microsoft system after 11.3's installation but
not an other / most of the other usual Linux based systems if you
install openSUSE after them. See also for that: - Andrea Müller: * Die
Neuerungen von OpenSuse 11.3 (heise open, 2010/07/15)
http://www.heise.de/open/artikel/Die-Neuerungen-von-OpenSuse-11-3-1038912.html
(de) * What's new in openSUSE 11.3 (The H open, 2010/07/20)
http://www.h-online.com/open/features/What-s-new-in-openSUSE-11-3-1039789.html
(en) - Michael Kofler: Linux 2011 (Addison-Wesley) Page 1089 (de)
2) And to what extend is the integration of LVM and RAID supported
(including documented) if I use openSUSE 11.4? (compare Kofler, p. 52,
to the status on the end of 2010 with GRUB 0.97 versus GRUB 2 for this
see:
http://www.addison-wesley.de/media_remote/katalog/bsp/9783827330253bsp.pdf
, de)

#27: Martin Seidler (pistazienfresser) (2011-02-08 10:07:48) (reply to
#23)
See also: openFATE #311035 Support different linux installations in grub
https://features.opensuse.org/311035

#24: Markus K (kamikazow) (2011-01-02 03:59:35)
Grub 2.0 is still not even released.

#25: Martin Seidler (pistazienfresser) (2011-01-19 11:43:11) (reply to
#24)
Nor is Grub 1.0 released (and probably will not ever be as GRUB legacy is
not longer been developed).
But what has this to do with a decision to use (or not to use) the
actually GRUB (GRUB also called GRUB2, GRUB version 2 or today: the
stable version GRUB 1.98 or the GRUB 1.99 Release Candidate 1 from
2011/01/16 see ftp://alpha.gnu.org/gnu/grub/) instead of the old and no
longer actively developed version of GRUB (GRUB legacy also called GRUB
0.97)?

#26: Rafael Belmonte (eaglescreen) (2011-02-04 23:34:09)
Hello, I have installed OpenSUSE 11.4 Milestone 6 from the DVD, and
grub 0.97 is which has been installed.

#28: Glenn Doig (doiggl) (2011-02-12 05:46:40)
Hello Just FYI A version grub-1.99~rc1.tar.gz was released [1] but
thats for the future. I could not compile it in obs see full log [2]
[1] -
http://www.gnu.org/software/grub/manual/html_node/Obtaining-and-Building-GRUB.html#Obtaining-and-Building-GRUB
- ftp://alpha.gnu.org/gnu/grub/
[2]https://build.opensuse.org/package/live_build_log?arch=x86_64&package=grub2&project=home%
3Adoiggl&repository=openSUSE_Factory
{part of the log} mv -f tests/lib/.deps-core/functional_test_module-
test.Tpo tests/lib/.deps-core/functional_test_module-test.Po gcc -Os -
Wall -W -Wshadow -Wpointer-arith -Wmissing-prototypes -Wundef  -Wstrict-
prototypes -g -falign-jumps=1 -falign-loops=1  -falign-functions=1 -mno-
mmx -mno-sse -mno-sse2 -mno-3dnow  -fno-dwarf2-cfi-asm -m32 -fno-stack-
protector -mno-stack-arg-probe  -Werror   -mrtd -mregparm=3       -
ffreestanding  -fmessage-length=0 -O2  -Wall -D_FORTIFY_SOURCE=2 -
fstack-protector -funwind-tables  -fasynchronous-unwind-tables -static -
m32 -Wl,--build-id=none    -nostdlib -Wl,-N,-r,-d   -o functional_test.
module  tests/lib/functional_test_module-functional_test.o 
tests/lib/functional_test_module-test.o    gcc -DHAVE_CONFIG_H -I. -
I..  -Wall -W -I../include -I../include   -DGRUB_MACHINE_PCBIOS=1 -
DGRUB_MACHINE=I386_PC -nostdinc -isystem  /usr/lib64/gcc/x86_64-suse-
linux/4.5/include  -DGRUB_FILE=\"tests/example_functional_test.c\" -I. -
I. -I.. -I..  -I../include -I../include     -Os -Wall -W -Wshadow -
Wpointer-arith  -Wmissing-prototypes -Wundef -Wstrict-prototypes -g -
falign-jumps=1  -falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse -
mno-sse2  -mno-3dnow -fno-dwarf2-cfi-asm -m32 -fno-stack-protector  -
mno-stack-arg-probe -Werror   -mrtd -mregparm=3       -ffreestanding  -
Wno-format  -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2  -fstack-
protector -funwind-tables -fasynchronous-unwind-tables -MT 
tests/example_functional_test_module-example_functional_test.o -MD -MP 
-MF  tests/.deps-core/example_functional_test_module-
example_functional_test.Tpo  -c -o tests/example_functional_test_module-
example_functional_test.o  `test -f 'tests/example_functional_test.c' 
|| echo  './'`tests/example_functional_test.c cc1: warnings being 
treated as errors tests/example_functional_test.c: In function 
'example_test': tests/example_functional_test.c:30:3: error: too many 
arguments for format tests/example_functional_test.c:31:3: error: too 
many arguments for format make[3]: *** 
[tests/example_functional_test_module-example_functional_test.o] Error 
1 make[3]: Leaving directory `/usr/src/packages/BUILD/grub-1.99rc1/grub-
core' make[2]: *** [all] Error 2 make[2]: Leaving directory 
`/usr/src/packages/BUILD/grub-1.99rc1/grub-core' make[1]: *** [all-
recursive] Error 1 make[1]: Leaving directory 
`/usr/src/packages/BUILD/grub-1.99rc1' make: *** [all] Error 2 error: 
Bad exit status from /var/tmp/rpm-tmp.Q1CvFh (%build)

#30: Jeff Mahoney (jeff_mahoney) (2011-02-23 17:24:14) (reply to #28)
This is not the place to post giant error logs. You should know that.

#29: matthias propst (l1zard) (2011-02-23 16:40:20)
Why we havve do make everthing what ubuntu is doing? i mean grub2
doesn't even provide features for most desktop users will ever need and
its more complecated to admister.
why not making our own improvements instead running after what ubuntu
is doing.

#31: Jeff Mahoney (jeff_mahoney) (2011-02-23 17:32:24) (reply to #29)
What features do you mean? Handwaving doesn't help anyone. I'll address
a few things: 1) I proposed the switch to GRUB v2 not because Ubuntu is
(I honestly don't follow Ubuntu development), but because it addresses
issues I've had with it for years. I will admit I'm not your average
desktop user, but I'm pretty sick of having 3 extra partitions just to
maintain two LVM-based openSUSE installs on the same desktop. (Two each
for /boot, and one for grub chainloader so the installs don't mess with
the other's /boot). It supports native RAID and LVM support as well as
more file systems. 2) The GRUB maintainers have already stated that
GRUB v1 is dead and refuse to continue to support it. Don't believe me?
Try submitting a patch to them. I have. Before you suggest that
openSUSE continue to support it, I suggest you figure out who is
actually going to do the work for it. If any of the the other reasons
aren't persuasive, this one had better be. 3) It offers a real
pluggable infrastructure with better memory management. Ever try adding
a file system to GRUBv1? It's a nightmare. The "memory management" is
hard coding addresses and then assigning variables as pointers into
offsets of those addresses. This makes bnc#538795 completely
unresolvable using GRUBv1.
4) I believe the "more complicated" configuration will actually be less
complicated in the end. AFAIK it allows for including files, etc, so
things like perl-Bootloader will be drastically simplified.

#32: Tim Edwards (tk83) (2011-03-22 12:43:04) (reply to #31)
Exactly, grub1 is buggy and unmaintained and does not support features
common on modern computers, such as the use of LVM partitions for
booting. It's got nothing to do with whether Ubuntu does it or not.

#35: Robert Davies (robopensuse) (2011-06-28 13:45:48) (reply to #29)
Desktop users will care about the points mentioned - "EFI support is
already there. More importantly, it supports far more file systems and
has native MD RAID and LVM support". Maintaining a seperate /boot with
files from multiple distro's using "exotic" filesystems becomes
unnecessary. Mobo's with UEFI are now common.
btrfs is one important filesystem, with it's copy on write & auto-
defragmentation features, that are hard to support with alternative
boot loaders.
Finally GRUB2 is not Ubuntu distro project, because they use something
does not mean Fedora & openSUSE should not also use it; suffering "Not
Invented Here" syndrome would hold openSUSE back.

#33: Felix Miata (mrmazda) (2011-04-25 12:47:11)
I've been subscribing to bug-grub and help-grub mailing lists for
several years. Grub2 remains usable only by Grub2 devs, a small handful
of others who know how to read source code, and monobooters. Others
familiar with Grub Legacy, multibooters mostly, who have had it foisted
on them via *buntu routinely make their systems unbootable to anything
but *buntu, if bootable at all. Grub2's documentation is virtually non-
existent, very unfriendly to multibooters. Grub2 is so different from
Grub Legacy it ought to have a different name. It's its own not-so-mini
operating system, dependent on the OS from which it was installed,
unlike Grub Legacy, which once copied to a partition on which
"installed", never need reference any other partition for setup and
configuration purposes. I like having a separate /boot partition, so
much so that for each system I create one that never actually gets
mounted as /boot, so that no installation or upgrade scripts will
corrupt it. I maintain its menu.lst manually, copying stanzas from menu.
lsts created by installers in /boot/grub directories on / partitions.
Now I can do that, as well as use configfile stanzas. Once an OS gets
Grub2 on its /, I will only be able to chainload to it, no more copy &
paste stanzas or use configfile.
I never much cared for the *buntu way of doing things. Grub2 makes me
like it even less. I'm glad openSUSE tends to lag behind *buntu and
Fedora WRT new technologies (e.g. 11.3's infant KMS), leaving others to
suffer from development bugs and paradigm shifts until their number is
greatly reduced. Let Grub2 get past v2.0, _and_ decently documented,
before being abandoned by openSUSE, please!

#37: hou ghi (houghi) (2011-07-03 08:27:19) (reply to #33)
I think that a lot of people here will be not your average user. Easy
use of menu.lst is very important to me and probably others as well. I
would even say that if it becomes very hard to edit/change with grub2,
it should be a no-no for openSUSE as one of their goals is to have easy
configuration.
So before this becomes default, a solution of easy of changing should
be found. Otherwise going back to lilo sounds like a better solution.

#34: Robert Xu (bravoall1552) (2011-04-25 19:12:29)
I noticed that openSUSE's grub Legacy implementation is limited
compared to Fedora's. For instance, Fedora already supports latest gcc
and x86_64 arch in their grub patch. Maybe openSUSE should take some of
these to remove already existing limitations?

#36: Robert Davies (robopensuse) (2011-06-28 13:55:04)
Perhaps it would be interesting to build Fedora flavour GRUB legacy and
see if it integrates cleanly. Fedora however, installed by default with
a seperate /boot partition and a large LVM partition; though they are
changing this now I have read.
Checking Fedora project, I find targetted for Fedora 16 -
http://fedoraproject.org/wiki/Features/Grub2
The writer seems to make very similar case, as made by Jeff Mahoney in
Fate here.

#38: Ralph Ulrich (ulenrich) (2011-07-17 12:54:01)
grub2 works for me on an efi mac mini using gpt-hybrid MBR with
openSUSE-12.1-factory. I didn't try grub2-efi yet.
Caveat: - There is yet a Perl:Bootloader script failing at every new
kernel upgrade. That Perl package I am not able to purge off my system
due to dependency issues.
It is not necessary at all to update grub, if you have a correctly
working /etc/grub.d/40Custom script using the boot/vmlinuz link.

#39: Leonard Soukup (zeterian) (2011-07-31 06:18:23)
Grub2 works fine for me with Sabayon. I have a tri-boot system with
opensuse and win7 on separate disks. Just updated to the new 3.0 kernel
in Tumbleweed, waiting for a grub2 update. Time to get it out there and
fix any remaining issues.

#40: Dinar Valeev (k0da) (2011-08-03 15:34:49)
Just enabled ppc for Factory
For me grub2 means common bootloader config for x86 and ppc (KIWI)

#41: Jeff Mahoney (jeff_mahoney) (2011-08-03 10:40:10)
This is set eval me, but I haven't had the time to work on it. If
someone can volunteer to do the integration and testing, I'll push to
'ready.' Until then, it's in a holding pattern.

#42: Andreas Jaeger (a_jaeger) (2011-08-03 16:44:13) (reply to #41)
It's actually in the state "Marketplace" which means anybody can grab
it. Sorry, we had to redefine this state somehow..

#43: Jedi Beeftrix (jedibeeftrix) (2011-09-16 00:06:07)
grub 2 confirmed as a no-go for 12.1:
http://www.h-online.com/open/features/Fresh-wind-for-openSUSE-1343874.html

#44: Anthonie Voerman (tvoerman) (2011-09-16 00:45:41)
Even though I am far less interested in Ubuntu than in openSUSE I
definitely keep it around in my multi-boot as it provides in a simple
way grub 2 as the bootloader (skipping the use of grub 0.97 from
openSUSE). One of the great features of grub 2 is using iso-files as a
boot target. Let's hope grub 2 makes it into 12.2 so Ubuntu will become
an option in stead of a prerequisite.

#45: Andreas Jaeger (a_jaeger) (2011-09-19 10:05:33) (reply to #44)
grub2 will be in 12.1 - just not be the default.

+ #46: Jedi Beeftrix (jedibeeftrix) (2011-09-19 14:57:28) (reply to #45)
+ will it just work (tm)? or will it come with stern warnings that users
+ shouldn't use it?
+ cheers for the update.




--
openSUSE Feature:
https://features.opensuse.org/308497

< Previous Next >
This Thread
References