Ubuntu 12.04 „Precise Pangolin“
Ubuntu 11.10 „Oneiric Ocelot“
Ubuntu 10.04 „Lucid Lynx“
Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.
Erweiterungen hinsichtlich GRUB 2-Funktionalität sind vom Konzept her nicht vorgesehen. Eine Wubi-Installation soll in der Regel so benutzt werden, wie diese sich nach der Installation darstellt.
Eine Erweiterung der Wubi-Installation um die nachfolgend beschriebenen GRUB 2-Funktionen ist möglich, sollte aber mit Bedacht vorgenommen werden.
Die Datei wubildr muss auf der selben Windows-Partition (C:\ , D:\ usw.) abgelegt sein, auf der sich auch das Verzeichnis ubuntu der Wubi-Installation befindet.
Um zusätzliche Funktionen von GRUB 2 auch unter einer Wubi-Installation nutzen zu können, ist ausgehend vom Desktop des "Ubuntu" der Verzeichnisbaum wie folgt zu ergänzen:
/host
ergänze um: /boot/grub
durch Eingabe in ein Terminal [1] (kein "sudo" erforderlich) von:
cd /host mkdir -p boot/grub/
Diese Ergänzung kann alternativ auch unter Windows erfolgen. Es wird empfohlen, dieses Verzeichnis unter Windows über die Eigenschaften auf "versteckt" zu setzen.
Nachfolgende Erweiterungen wurden ausgetestet und sind mit einfachen Mitteln zu realisieren.
Will man im Grubmenü die GRUB_2-Funktion GRUB_SAVEDEFAULT benutzen, um den zuletzt aufgerufenen Menüeintrag erneut ohne Eingriff zu starten, so müssen die Variablen in der /etc/default/grub entsprechend angepasst werden.
Variablen in der /etc/default/grub | |
Variable | Wert / Einstellung |
GRUB_DEFAULT= | saved |
GRUB_SAVEDEFAULT= | true |
Es muss die Datei /boot/grub/grubenv in das Verzeichnis /host/boot/grub verschoben und über einen symbolischen Link wieder eingebunden werden. Dies erreicht [3] man mittels
sudo ln -s /host/boot/grub/grubenv
Man erstellt die beiden folgenden Skripte und legt diese im Verzeichnis /etc/grub.d ab. Die UUID der Windows-Partition ist in beiden Skripten den Gegebenheiten anzupassen!
Bezeichnung des Skriptes: 01_save_env
1 2 3 4 5 6 7 8 9 10 11 12 13 | #! /bin/sh -e echo "Eintrag zum Speichern von grubenv hinzugefügt" >&2 cat << EOF function savedefault { if [ -f /boot/grub/grubenv ]; then if [ "\${saved_entry}" != "\${chosen}" ]; then echo "Eintrag \${chosen} wird gespeichert"; set saved_entry="\${chosen}"; search --no-floppy --fs-uuid --set=root 47AB1C9051B1D12C; save_env -f /boot/grub/grubenv 'saved_entry'; fi; fi; } EOF |
Durch die Anordnung dieses Skriptes hinter dem internen Skript 00_header wird die dortige Subroutine durch die später eingebrachte Subroutine "function savedefault" vom Interpreter gelesen und ausgewertet.
Bezeichnung des Skriptes: 01_load_env
1 2 3 4 5 6 7 8 9 10 | #! /bin/sh -e echo "Eintrag zum Laden von grubenv hinzugefügt" >&2 cat << EOF search --no-floppy --fs-uuid --set=root 47AB1C9051B1D12C; if [ -f /boot/grub/grubenv ]; then set have_grubenv=true; load_env -f /boot/grub/grubenv; set default="\${saved_entry}"; fi; EOF |
Nach dem Einbringen obiger Skripte in das Verzeichnis /etc/grub.d macht man diese in einem Terminal [1][3] ausführbar mit:
sudo chmod +x /etc/grub.d/01_save_env sudo chmod +x /etc/grub.d/01_load_env
und bindet diese Skripte im Terminal [1][3] mit:
sudo update-grub
in die Datei /boot/grub/grub.cfg ein.
Damit wird der Menüeintrag gesetzt, der beim letzten Starten benutzt wurde. Es stehen außerdem die Terminalbefehle [2] zum automatischen Start bereit:
Obige Maßnahmen werden in der Regel durch ein Update nicht überschrieben.
Die Darstellung eines Hintergrundbildes im Wubi-Grubmenü im Anschluss an die Auswahl von Ubuntu im Windows Bootmanager ist möglich. Zusätzlich zu den Maßnahmen wie unter Grub 2 mit Hintergrundbild beschrieben, muss die Datei grub-mkimage für Lucid um die nachfolgend gelisteten Module jeweils passend zur Bilddatei ergänzt werden:
Ergänzung in der Datei grub-mkimage | |
Bildtypus | erforderliches Modul |
Hintergrund.bmp | bitmap |
bitmap_scale | |
Hintergrund.jpg | jpeg |
Hintergrund.png | png |
Hintergrund.tga | tga |
Die jeweils eingesetzten Module müssen zusätzlich aus dem Verzeichnis /usr/lib/grub/i386 in das Verzeichnis /boot/grub kopiert werden. Das Vorhandensein wird intern bei einem sudo update-grub
abgefragt.
Man kann Maßnahmen ergreifen, die das einfache Ändern von systemeigenen Einstellungen, z.B. wie es das Auswählen des Recovery Modus ermöglicht, zumindest zu erschweren. Um die Absicherung wie unter Grub-Menü absichern auch unter Wubi nutzen zu können, muss die Datei grub-mkimage für Lucid um die die beiden Module
pbkdf2
password_pbkdf2
ergänzt werden. Dann bringt man im Verzeichnis /etc/grub.d folgendes Skript mit der Bezeichnung 01_pbkdf2 ein (UUID der Windows-Partition anpassen):
1 2 3 4 5 6 7 8 9 10 | #! /bin/sh -e echo "Passwortschutz für Grub-Menue eingefügt" >&2 cat << EOF search --no-floppy --fs-uuid --set=root 47AB1C9051B1D12C loopback loop0 /ubuntu/disks/root.disk set root=(loop0) if [ -f /boot/pbkdf2.lst ]; then source /boot/pbkdf2.lst fi EOF |
Nachdem man das Skript im Terminal [1][3] mit
sudo chmod +x /etc/grub.d/01_pbkdf2
ausführbar gemacht hat, kann man es mit
sudo update-grub
in die Datei /boot/grub/grub.cfg einbinden. Die Datei mit den Passwortdaten kopiert man in das "Ubuntu" Verzeichnis /boot.
Es ist jedes andere, auch versteckte Verzeichnis nutzbar. Es muss dann nur der Pfad im obigen Skript angepasst werden. Es sollte aber, aus Gründen der Sicherheit, auf jeden Fall innerhalb der Wubi-Installation abgelegt werden
Die folgend beschriebenen Änderungen werden bei einem Update des Paketes lupin-support überschrieben und müssen dann erneut eingebracht werden.
Um den Befehlsumfang der Datei wubildr anzupassen, muss die Datei /usr/share/lupin-support/grub-mkimage fürLucid mit einem Editor [2] mit Root-Rechten [3] bearbeitet werden:
cd /usr/share/lupin-support sudo dpkg-reconfigure lupin-support sudo update-initramfs -u -k all sudo cp -f grub-mkimage grub-mkimage-bak sudo nano grub-mkimage
Im angezeigten Text des Editors [2] sucht man (am Ende dieser Datei) den Text aus Zeile 1:
1 2 3 | # Watch the modules order! modules=" \ ...Modul-Liste ..." |
und trägt am Ende der Liste, vor dem abschließenden " die erforderlichen Module ein, wie diese in den obigen Beschreibungen gelistet wurden. Die Module sind jeweils getrennt durch ein Leerzeichen einzubringen. Mit dem folgenden Befehl wird die Datei wubildr neu geschrieben.
sudo ./grub-mkimage
Wubi Übersichtsartikel
Wubi/Konfiguration - Erweiterte Einstellungen unter Ubuntu und andere Hinweise
Wubi/Problembehebung Hinweise zum "Testen" und "Reparieren" von Wubi
Wubi/Migration Wie man sein Wubi auf eine eigene Partition verschiebt
Wubi Guide Der Wubi-Artikel im Ubuntu-WIKI
Wer hat Angst vorm Pinguin? - Artikel über Wubi aus LinuxUser 01/2008
Starten.mit-Linux.de - Deutsche Wubi-Installer-Seite