I am trying to make my own Multiboot-USB-stick with a custom GRUB2 config. I basically followed instructions from https://wiki.archlinux.org/index.php/Multiboot_USB_drive to install GRUB2 on an USB stick in EFI mode:
- Format stick, having one EFI partition (100MB) and a EXT4 partition
- mount partitions to some location
- Executing
grub-install --target=x86_64-efi --recheck --removable --efi-directory=/EFI_MOUNTPOINT --boot-directory=/DATA_MOUNTPOINT/boot
So I have an EFI-partition including a grub.cfg thats like
search.fs_uuid <uuid> root hdX,gptY
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg
and a boot-partition with just one folder /boot/grub containing
- fonts (folder)
- locale (folder)
- x86_64-efi (folder)
- grubenv (file)
This is working as far as I can write my own grub.cfg into /boot/grub, containing some menuentrys, and I can boot from that entries. But I cant load any modules. If I enter command-line, e.g. typing
insmod ntfs
does absolutely nothing. There is no sort of error message or something, the module just doesnt get loaded (checked with lsmod). I also tried absolute addressing like
insmod (hdX,gptY)/boot/grub/x86_64-efi/ntfs.mod
with the same result. The path is correct because for example I can cat the .mod-file to standard output.
What I actually can do is to remove modules. E.g.
rmmod btrfs
rmmod btrfs
results in error message just at the second line, so module btrfs gets removed, which is confirmed by lsmod output. But typing (when btrfs already is removed)
insmod btrfs (or absolute addressing like above)
rmmod btrfs
results in an error message at line 2, so the first line obviously had no effect.
Do you have any idea whats going wrong? I even tried to copy the mod-folder to the EFI-partition, but that didnt do the trick...
Thanks in advance