Re: [arch-general] [arch-dev-public] grub with ext4 support
Am Mon, 29 Dec 2008 00:30:33 +0100 schrieb "Ronald van Haren" <pressh@gmail.com>:
I will check into the grub2 issue in that case.
I've played around last days with grub2 (Version from extra and svn) for putting it as the ISO bootloader and with ext4 FS. - I could made a test ISO (archiso based, 2.6.28) with grub2. This boots fine in virtual machines (like virtualbox or qemu). But on real machines the cdrom (biosdisk module) wasn't found. I never see cd0 on real hardware, only the harddisks (looked with ls when ls-module is aktivated). I tried question on #grub in IRC, but no answer. (With the ata module the cdrom could be handselected with low speed, but this is not practicable...) - grub2 and ext4. Grub2 boots fine on ext4 partitions (i have a ext4 /boot partition on VM). But i have problems to (re)install grub2 when the partition **is** ext4. I tested: /boot is ext3, install grub2, boot is fine. Also re-installing grub2 works. Convert /boot to ext4 (with extent), grub2 boots fine. If trying to reinstall grub2 then (grub-install --debug /dev/sda) it rewrites the core.img file in /boot/grub. And then the core.img file could not be parsed: error cannot read core.img correctly. Maybe a result of using ext4 extends. During grub-install much files from /usr/lib/grub(?) get copied to /boot/grub again, and the core.img file is there also build correctly (thats part of grub-setup). But then i could not be read (maybe grub2 does this "reading/parsing" in a unusual way which leads to problems on ext4... This i get both with the version from extra and from svn. If this problem is not only based on my mistake or on my enviroment, then we would have a problem during install to install grub2 on a ext4 prepared partition - and later if grub2 must be reinstalled. From my experience with grub/grub2 and ext4 i would assume (also as part of the installer): If one would use ext4 for Root-Partition then /boot should be still ext2/3. Ok, this is one FS module more if ext4 is preferred, but it's save.
Ronald
Gerhard
Gerhard Brauer schrieb:
- I could made a test ISO (archiso based, 2.6.28) with grub2. This boots fine in virtual machines (like virtualbox or qemu). But on real machines the cdrom (biosdisk module) wasn't found. I never see cd0 on real hardware, only the harddisks (looked with ls when ls-module is aktivated). I tried question on #grub in IRC, but no answer. (With the ata module the cdrom could be handselected with low speed, but this is not practicable...)
This is interesting: On many BIOSes, grub 0.x is unable to find the CD drive and thus many people want us to use isolinux. From what you write here, it seems that you can access the CD drive through another than the BIOS boot device method. It doesn't matter that access is slow, it only matters that we are able to load the kernel and initramfs on a greater number of machines. IMO, this is worth looking into.
Am Mon, 29 Dec 2008 17:17:35 +0100 schrieb Thomas Bächler <thomas@archlinux.org>:
This is interesting: On many BIOSes, grub 0.x is unable to find the CD drive and thus many people want us to use isolinux.
Personally i prefer isolinux as a "better" solution for ISO bootloader, but grub's advantage is the grub shell...
From what you write here, it seems that you can access the CD drive through another than the BIOS boot device method. It doesn't matter that access is slow, it only matters that we are able to load the kernel and initramfs on a greater number of machines. IMO, this is worth looking into.
You get these ata0, ata0,1, ata1 devices when adding the ata module to grub2 image. But the problem is: No one could say on which bus the users cdrom is (ata1, ata3,...). So the boot ends always in a grub2 shell instead showing the menu. User then must set it per Hand, like: set root=ata1 linux /boot/vmlinuz26 initrd /boot/kernel26.img boot And I've tested this ata method only on VMs. I'm not sure if on real machines the cdrom is realy detected as ata device (it wasn't detected as normal device cd0, cd1 on real hardware if using the biosdisk module). And i realy don't know why, on virtualbox,qemu it work's. If one would test - the way to make a grub2 bootloader image for mkisofs is: grub-makeimage -o mycore.img list_of_modules cat /boot/grub/cdboot.img mycore.img > myboot.img myboot.img could now used as mkisofs parameter (-b) like we does it with grub-legacy in mkarchiso. Grub2 modular design (and the available modules) have a great potential IMHO (not only that one could make it terrible blinking and colored, splash shit). But there is a lack on documentation IMHO.... Gerhard
participants (2)
-
Gerhard Brauer
-
Thomas Bächler