# Installation, Bootkonfiguration mit Grub2 und EFI

## Cobi

Hi Leute,

Ich bin ganz neu bei Gentoo und gerade am verzweifeln.

Ich bin noch bei der Installation genauer der Bootkonfiguration.

Und es scheint im ganzen Netz keine brauchbare deutschsprachige Anleitung für eine Grub2/EFI Einrichtung zu geben.

Gefunden habe ich nur:

https://wiki.gentoo.org/wiki/GRUB2_Quick_Start#Manual_Configuration

http://wiki.gentoo.org/wiki/GRUB2

was bei mir beides nicht funktioniert, bzw. vielleicht komme ich auch nur nicht mit dem Englisch zu wenig klar um es hin zu bekommen.

Gestartet werden soll per EFI mit Grub2

hdd0 ist eine SSD mit den Partitionen EFI-Boot, Root und Swap.

Auf EFI Partition liegt auch schon ein Eintrag für eine andere Linux Distro.

/boot liegt auf der Rootpartition.

hdd1 ist eine HDD mit /home und der bereits vorhandenen anderen Linux Distro, von welcher aus ich auch die bisherige Installation vorgenommen habe.

Im Wesentlichen hat diese Anleitung soweit, mit mehr oder weniger Warnmeldungen funktioniert:

https://wiki.gentoo.org/wiki/GRUB2_Quick_Start#Manual_Configuration

die EFI Partition ist gemountet gem. /etc/fstab.

```
#/dev/sda3

UUID=4831f130-d154-4f66-8a7b-12d4fe8c322a   /         ext4   noatime      0 1

#/dev/sda1              

UUID=4DE6-2E98                                  /boot/efi               vfat    defaults        0 1

#/dev/sda2

UUID=95932bf7-61a0-4f67-9bb8-2cb64d0697f5   none         swap   sw      0 0

/dev/cdrom               /mnt/cdrom      auto   noauto,ro   0 0

#/dev/fd0               /mnt/floppy      auto   noauto      0 0

#/dev/sdb2

UUID=7dcd9573-0f3d-43b9-8c82-5212e230c2ce   /home         ext4   defaults   1 2

#/dev/sdb1

UUID=2B81BF51207BA1F0   /mnt/ntfs   ntfs-3g   user,noauto,users,gid=users,fmask=133,dmask=022,locale=de_DE.UTF8   0 0

#/dev/sdb3

UUID=0e8a89eb-0191-432c-9d52-9009aa8683df   /mnt/Ubuntu      ext4   user,noauto,rw   0 0   

LABEL=efi-boot /boot/efi vfat defaults 0 2
```

In der /etc/portage/make.conf habe ich eingefügt:

```
GRUB_PLATFORMS="efi-64"
```

Weiter nach Plan:

```
# grub2-install --target=x86_64-efi

Installing for x86_64-efi platform.

device node not found

....

device node not found

Fatal: Couldn't open either sysfs or procfs directories for accessing EFI variables.

Try 'modprobe efivars' as root.

Fatal: Couldn't open either sysfs or procfs directories for accessing EFI variables.

Try 'modprobe efivars' as root.

installation beendet. Keine Fehler aufgetreten.

```

Sieht nicht ganz sauber aus, hat aber scheinbar funktioniert.

Also weiter...

```
# grub2-mkconfig -o /boot/grub/grub.cfg

Generating grub configuration file ...

device node not found

....

device node not found

Linux-Abbild gefunden: /boot/kernel-3.14.14-gentoo

device node not found

....

device node not found

erledigt
```

Sieht auch komisch aus, aber es wurde ja ein Kernel gefunden und einer sollte auch reichen, bzw. würde mich wundern, wenn die sich heimlich vermehrt hätten.

In der /boot/grub/grub.cfg findet sich ein Eintrag:

```
...

menuentry 'Gentoo GNU/Linux' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-4831f130-d154-4f66-8a7b-12d4fe8c322a' {

   load_video

   insmod gzio

   insmod part_gpt [/quote]

   insmod ext2

   set root='hd0,gpt3'

   if [ x$feature_platform_search_hint = xy ]; then

     search --no-floppy --fs-uuid --set=root  4831f130-d154-4f66-8a7b-12d4fe8c322a

   else

     search --no-floppy --fs-uuid --set=root 4831f130-d154-4f66-8a7b-12d4fe8c322a

   fi

   echo   'Linux 3.14.14-gentoo wird geladen …'

   linux   /boot/kernel-3.14.14-gentoo root=/dev/sda3 ro init=/usr/lib/systemd/systemd quiet

}

...
```

Und in der /etc/default/grub unter anderem die Zeilen:

```
GRUB_CMDLINE_LINUX="init=/usr/lib/systemd/systemd"

GRUB_CMDLINE_LINUX_DEFAULT="quiet"
```

Wenn ich nun davon ausgehe, daß die Grub2 Einrichtung OK war, kommt jetzt noch die Einrichtung des EFI-Eintrags.

Weiter mit:

http://wiki.gentoo.org/wiki/GRUB2#UEFI.2FGPT

Und hier klappt gar nichts mehr richtig.

```
# grub2-install --target=x86_64-efi
```

hatte ja scheinbar funktioniert (siehe oben), denn trotz Fehlermeldungen stand da "Installation beendet. Keine Fehler aufgetreten" ???

Mache ich einfach weiter, sieht das in etwa so aus:

```
# grub2-mkimage -p /grub2 -o /boot/efi/GRUB2/grub.efi -O x86_64-efi ext2 fat lvm part_msdos part_gpt search_fs_uuid normal

grub2-mkimage: Fehler: »/boot/efi/GRUB2/grub.efi« kann nicht geöffnet werden: Datei oder Verzeichnis nicht gefunden.

# cp -a /usr/lib/grub/x86_64-efi/* /boot/efi/GRUB2/

cp: das angegebene Ziel „/boot/efi/GRUB2/“ ist kein Verzeichnis

# cp /boot/efi/GRUB2/grub.efi /boot/EFI/BOOT/BOOTX64.EFI

cp: der Aufruf von stat für „/boot/efi/GRUB2/grub.efi“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
```

```
# efibootmgr --create --gpt --disk /dev/sda --part 1 --write-signature --label "GRUB2" --loader "\\EFI\\GRUB2\\grub.efi"

Fatal: Couldn't open either sysfs or procfs directories for accessing EFI variables.

Try 'modprobe efivars' as root.
```

efibootmgr ist installiert und ein "modprobe efivars" erzeugt auch keine Fehlermeldung

Keine Ahnung, ab wo das ganze schief gelaufen ist.

Hat jemand eine Idee, woran es liegen könnte?

----------

## schmidicom

Mit GRUB2 zwei kenne ich mich zwar nicht aus, da ich damit schon vor langem aufgehört habe, aber dafür mit efibootmgr.

Um mit efibootmgr im Bootmenu des (U)EFI einen Eintrag erstellen zu können muss das Modul efivars vor dem Aufruf von efibootmgr geladen werden.

https://forums.gentoo.org/viewtopic-t-993756.html

----------

## Cobi

Hallo zuammen,

Ich bin noch kein Stück weiter gekommen. Obwohl ich nun schon alle bei mir befindlichen Bootmedien ausprobiert habe.

Egal ob Ubuntu, OpenSUSE, Knoppix, RescueCD usw., nicht in einer einzigen Live-Umgebung gelingt es mir das Modul efivars zu laden. Die Beiden erst genannten Live-CDs waren übrigens auch die einzigen, die ich vom BIOs aus per EFI starten konnte.

Aber Fehlanzeige, kein Modul namens efivars verfügbar.

Ich war schon so weit gegangen, Ubuntu auf einer anderen Partition zu installieren (Zweitsystem kann ja nichts schaden), und mir dort in den Kernel alles hinein zu kompilieren, was sich irgendwie auch nur nach EFI angehört hat. Leider auch hier keinen Erfolg.

Falls jemand weiß, wo ich ein Live-System her bekomme, das dieses ominöse Modul "efivars" enthält, wäre ich dankbar.

Und weiß jemand, wie ich an einen der Entwickler komme, welche die Gentoo-Installations-CD Images erstellen?

Dann würde ich dort darum bitten, das Modul doch künftig mit ein zu bauen.

Auch wenn man kein UEFI verdongletes System will, ist doch EFI eigentlich eine gute Idee, sobald man mehr als 1 OS installieren will.

So, aber jetzt gehts erst mal ins Wochenende.

Cu Cobi

----------

## schmidicom

Also das klingt jetzt für mich eher so als ob dein Computer kein echtes [U]EFI kann, denn wenn ein Linux ordentlich im EFI-Modus gestartet wird lässt sich auch das Modul efivars laden. Ich vermute eher das du einen Computer mit einem normalen BIOS hast welches lediglich einen EFI kompatiblen boot unterstützt jedoch ohne den ganzen Rest der eben dazu gehört.

Vor längerem hatte ich auch mal einen solchen Computer (genau genommen war es ein Mainboard von Gigabyte) in den Fingern welcher zwar in der Lage war EFI bootmedien als solche zu erkennen jedoch keinen echten EFI-Modus zur Verfügung stellte.

----------

