Installation von 32-Bit Ubuntu auf EFI-System
Achtung!
Die Verwendung dieses Howto geschieht auf eigene Gefahr. Bei Problemen mit der Anleitung melde dies bitte in der dazugehörigen Diskussion und wende dich zusätzlich an den Verfasser des Howtos.
Hinweis:
Diese Howto-Anleitung wurde zuletzt von Ulfzibis am 24.12.2017 unter Ubuntu 16.04 erfolgreich getestet.
Auf Systemen mit mäßigen Ressourcen kann es vorteilhaft sein, das leichtgewichtigere 32-Bit Ubuntu zu verwenden. Da dies auf 64-Bit-UEFI auf normalem Weg nicht möglich ist, wird hier eine Anleitung dafür gegeben. Diese wurde auf einem ASUS F200MA mit einem Ubuntu 16.04.1 32-Bit Installationsmedium (-i386.iso) auf einem MultiSystem-USB-Stick getestet, funktioniert aber sehr wahrscheinlich auch mit anderen Versionen. Sollte das Live-System nicht starten, kann das an secure boot liegen, das man im UEFI-BIOS-Setup temporär deaktivieren kann.
Hinweis:
Man kann sich die Durchführung dieser Anleitung erleichtern in dem man nach dem Start des Live-Systems den Firefox aufruft und diese Wiki-Seite öffnet. Dann kann man die einzelnen Befehle mittels Strg + C und ⇧ + Strg + V direkt ins Terminal kopieren.
Zunächst startet man den Rechner mit dem 32-Bit-Installationsmedium und wählt dann "Ubuntu ausprobieren" statt "... installieren". Dann öffnet man z.B. mit Strg + Alt + T ein Terminal und startet darin eine Installation ohne Bootmanager:
ubiquity -b
Nun installiert man Ubuntu wie gewöhnlich. Sobald dies abgeschlossen ist, wechselt man mittels "Ausprobieren fortsetzen" wieder ins Terminal des Live-Systems und bindet die nötigen Partitionen ein und wechselt in die Shell des Zielsystems:
sudo mount /dev/sdax /mnt # Ubuntu 32-Bit Zielpartition: sdax sudo mount /dev/sday /mnt/boot/efi # FAT-32 EFI-Partition: sday, meist sda1 for dir in /dev /dev/pts /proc /sys /run; do sudo mount --bind $dir /mnt/$dir; done sudo chroot /mnt /bin/bash
Nun ersetzt man grub-pc durch einen der EFI-Bootmanager nach Wahl:
auf secure boot-Möglichkeit verzichten
apt-get install grub-efi-amd64
(Auf einem 32-Bit UEFI-System kann man es alternativ mit grub-efi-ia32 versuchen.)
für secure boot vorbereiten (das geht auch, wenn das Installationsmedium nicht mit secure boot gestartet wurde)
dpkg --add-architecture amd64 apt-get update apt-get install grub-efi-amd64-signed
Optional mit Shim-Bootloader (Vorsicht: unterwandert das UEFI-Sicherheitskonzept):
apt-get install shim-signed
Nun muss GRUB 2 noch in die EFI-Partition installiert (erstaunlicherweise wird dabei auch der nötige Menü-Eintrag im NVRAM gesetzt obwohl man unter 32-Bit-Ubuntu wegen fehlendem efivarfs
-Treiber im Kernel mittels efibootmgr
nicht darauf zugreifen kann) und konfiguriert werden, und dann verläßt man die chroot-Umgebung wieder:
grub-install # Bei Fehler mit Option versuchen: --efi-directory /boot/efi update-grub exit
Nun kann der Rechner neu gestartet werden, und dann sollte automatisch das neu installierte Ubuntu 32-Bit in Erscheinung treten. Ist dies nicht der Fall, sollte man zunächst die UEFI-Boot-Reihenfolge überprüfen, und falls der signed-Bootloader installiert wurde, kann secure boot nun auch wieder aktiviert werden.
Nach erfolgreichem Start sollte man auch einmal überprüfen, ob für zukünftige Aktualisierungen von GRUB alles ordnungsgemäß konfiguriert ist:
sudo grub-install sudo update-grub
Hinweis:
Probleme¶
Nach obiger Vorgehensweise sind schon mal Probleme mit der automatischen Aktualisierung aufgetreten, deren Ursache nicht abschließend geklärt worden konnten.