Anleitung
Vom Download bis zur fertigen Installation, und was zu tun ist, wenn etwas nicht klappt.
Bevor Sie anfangen
Jeder 64-Bit-Rechner mit x86-Prozessor. Das Installationsprogramm verlangt mindestens 1,7 GB Arbeitsspeicher und 18 GB Platz auf der Festplatte; die Werte unten sind die, mit denen das System bequem läuft.
| Mindestens | Empfohlen | |
|---|---|---|
| Arbeitsspeicher | 2 GB | 4 GB |
| Festplatte | 18 GB | 30 GB |
| Prozessor | jeder 64-Bit-x86-Prozessor | zwei Kerne |
| Grafik | jede Grafikeinheit mit Framebuffer | jede GPU der letzten 15 Jahre |
UEFI und das alte BIOS beherrscht dasselbe Abbild. Secure Boot kann aktiv bleiben.
Herunterladen und prüfen
Das Abbild ist eine einzige Datei, moonlightos-26.04.5-bengunur-amd64.iso, und daneben liegt eine zweite Datei mit der SHA-256-Prüfsumme. Prüfen Sie die Summe, bevor Sie das Abbild schreiben: Ein unvollständiger Download ergibt einen USB-Stick, der startet und dann auf verwirrende Weise scheitert.
Unter Linux oder macOS, im Ordner mit dem Download:
sha256sum -c moonlightos-26.04.5-bengunur-amd64.iso.sha256
Unter Windows in der PowerShell; vergleichen Sie den ausgegebenen Hash mit dem in der .sha256-Datei:
Get-FileHash .\moonlightos-26.04.5-bengunur-amd64.iso -Algorithm SHA256
Get-Content .\moonlightos-26.04.5-bengunur-amd64.iso.sha256
Der erste Befehl gibt OK aus, der zweite einen Hash, der mit dem in der Datei übereinstimmen muss. Alles andere heißt, dass der Download beschädigt ist.
Abbild auf den USB-Stick schreiben
Das Abbild ist ein hybrides ISO, deshalb genügt eine einfache blockweise Kopie: Es braucht kein besonderes Werkzeug, und derselbe Stick startet auf UEFI- wie auf BIOS-Rechnern. Alles, was auf dem Stick liegt, wird gelöscht. Sie brauchen einen Stick mit mindestens 8 GB.
Unter Linux oder macOS zuerst den Gerätenamen herausfinden (lsblk unter Linux, diskutil list unter macOS), dann:
sudo dd if=moonlightos-26.04.5-bengunur-amd64.iso of=/dev/sdX bs=4M status=progress oflag=direct conv=fsync
sudo dd if=moonlightos-26.04.5-bengunur-amd64.iso of=/dev/rdiskN bs=4m # macOS
Prüfen Sie den Gerätenamen zweimal: dd schreibt auf genau das Gerät, das es bekommt.
Windows
Nehmen Sie Rufus im DD-Modus, balenaEtcher oder Ventoy. Fragt Rufus, ob im ISO- oder im DD-Modus geschrieben werden soll, wählen Sie DD.
Vom USB-Stick starten
Starten Sie den Rechner mit eingestecktem Stick und öffnen Sie das einmalige Startmenü (je nach Hersteller F12, F8, F2, Esc oder Entf), oder legen Sie das USB-Gerät in den Firmware-Einstellungen als erstes Startgerät fest. An Secure Boot muss nichts geändert werden.
Das Startmenü
- Try or Install MoonLightOS
Der normale Eintrag. Startet die Live-Sitzung mit der Startanimation.
- Try or Install MoonLightOS (safe graphics)
Dasselbe, nur mit abgeschaltetem Kernel-Mode-Setting. Nehmen Sie ihn, wenn der Bildschirm schwarz bleibt oder das Bild verzerrt ist.
- MoonLightOS in RAM (needs 6 GB+)
Kopiert das ganze System in den Arbeitsspeicher, danach können Sie den Stick abziehen.
- Check this medium for defects
Prüft jede Datei auf dem Stick gegen die Prüfsummen, die beim Bauen festgehalten wurden.
- Verbose boot (no splash, logs to serial)
Zeigt jede Meldung auf dem Bildschirm und auf der ersten seriellen Schnittstelle. Nur so lässt sich ein Start lesen, der scheitert, bevor die Anzeige bereitsteht.
- UEFI firmware settings
Startet neu in die Firmware-Einstellungen.
Die Live-Sitzung
Das Erste, was Sie sehen, ist der Assistent zur Einrichtung: Sprache des Systems wählen, Tastaturbelegung bestätigen (zum Ausprobieren ins Feld tippen), WLAN verbinden und dann entweder umsehen oder installieren. Alles, was dabei gesetzt wird, ist eine echte Systemeinstellung, und das Installationsprogramm verwendet dieselben Angaben.
Die Live-Sitzung ist das vollständige, unveränderte System: derselbe Desktop, dieselben Werkzeuge, dieselben Einstellungsseiten. Der Live-Benutzer heißt moonlight und hat kein Passwort. Nichts, was Sie hier tun, berührt die Festplatte, solange Sie das Installationsprogramm nicht starten.
Zum Installieren doppelklicken Sie auf dem Desktop auf „MoonLightOS installieren“, oder Sie öffnen die Einrichtung erneut und wählen „Installieren“.
Installation
Das Installationsprogramm ist Calamares. Sieben Seiten, dann wird auf die Festplatte kopiert.
- Willkommen
Die Sprache des Installationsprogramms und die Verweise auf diese Anleitung.
- Standort
Ihre Region und Zeitzone; Sprachregion und Zahlenformate ergeben sich daraus.
- Tastatur
Schon auf das eingestellt, was Sie im Assistenten gewählt haben. Zum Prüfen ins Feld tippen.
- Partitionen
Vorgegeben ist „Festplatte löschen“; dabei entsteht ein ext4-Dateisystem mit Auslagerungsdatei. Auch btrfs, xfs und f2fs stehen bereit, ebenso die Partitionierung von Hand. Für die vollständige LUKS2-Verschlüsselung setzen Sie das Häkchen bei „System verschlüsseln“ und wählen eine Passphrase: Sie geben sie bei jedem Start ein, und wenn Sie sie vergessen, ist sie nicht wiederherstellbar. Auf einem UEFI-Rechner wird eine 512 MiB große EFI-Partition angelegt.
- Benutzer
Ihr Name, der Name des Rechners, ein Benutzername und ein Passwort aus mindestens acht Zeichen und zwei Zeichenklassen. Das erste Konto verwaltet den Rechner über sudo; das Konto root bleibt gesperrt, und es gibt keine automatische Anmeldung, solange Sie sie nicht einschalten.
- Zusammenfassung
Alles, was das Installationsprogramm vorhat, in einer Liste. Geschrieben wurde bis hierher nichts.
- Installation
Das System wird auf die Festplatte kopiert, der Bootloader wird eingerichtet (auf UEFI als MoonLightOS in der Startliste der Firmware), und die Reste der Live-Sitzung werden entfernt. Danach neu starten und den Stick abziehen.
Andere Betriebssysteme auf dem Rechner erkennt os-prober beim ersten Start und nimmt sie ins GRUB-Menü auf.
Der erste Start
Ein installiertes System beginnt als genaue Kopie des Abbilds, aus dem jede andere Installation ebenfalls stammt. Alles, was auf diesem Rechner einzigartig sein muss, entsteht beim ersten Start, noch vor dem Anmeldebildschirm, durch einen Dienst, der sich danach selbst abschaltet:
- eine neue Maschinenkennung, damit niemand im Netz zwei Installationen miteinander verbinden kann;
- neue SSH-Host-Schlüssel, denn ein Schlüssel, den alle hätten, die das Abbild geladen haben, würde die Prüfung des Rechners sinnlos machen;
- das GRUB-Menü, nun da die echten Festplatten und die anderen Betriebssysteme darauf sichtbar sind;
- ein neu gebautes Initramfs, das nur die tatsächlich vorhandene Hardware abdeckt und deshalb kleiner ist, sodass die Startanimation früher erscheint;
- die Zwischenspeicher für Symbole, Schriften und Desktop, damit die erste Anmeldung nicht lange dauert;
- die Firewall, wieder eingeschaltet.
Seine Ausgabe landet in /var/log/moonlight-firstboot.log. Danach erscheint der Anmeldebildschirm und nach der ersten Anmeldung das Willkommensfenster.
Erste Schritte
- Erscheinungsbild wählen
Dunkel oder hell, direkt in Willkommen. Alles Weitere steckt in MoonLight Tweaks: die Anordnung des Desktops, das Hintergrundbild, der Zeitplan und die Widgets.
- Treiber
Willkommen → Treiber öffnet die Treiberverwaltung. Auf einem Rechner mit NVIDIA-Karte liegt der herstellereigene Treiber auf dem ISO und funktioniert deshalb ohne Internetverbindung.
- Software
Der Store führt Snaps, das Ubuntu-Repository und Flathub gemeinsam auf. Thunderbird, Steam, Spotify und viele andere sind nur eine Suche entfernt.
- Fingerabdruck und Gesicht
Willkommen → Fingerabdruck oder Systemeinstellungen → Ihr Konto, um einen Fingerabdruck einzulesen oder die Gesichtsentsperrung einzurichten.
- Datensicherung
Timeshift legt nach Zeitplan Sicherungspunkte des Systems an. Richten Sie es ein, bevor Sie es brauchen.
- Sicherheit
Systemeinstellungen → Sicherheit zeigt, was diesen Rechner schützt und was nicht, und zu jeder Zeile die Schaltfläche, die das Problem behebt.
- Entwicklerpakete
Virtuelle Maschinen, PHP mit Datenbanken und LaTeX: je ein Klick in Willkommen, installiert aus dem Repository, das schon eingerichtet ist.
- Windows-Programme
Öffnen Sie einmal das Werkzeug Windows-Anwendungen: Es bereitet Wine mit DXVK, VKD3D, Schriften und Laufzeitumgebungen vor. Danach öffnen sich .exe-Dateien ohne weiteres Zutun.
Virtuelle Maschinen
VirtualBox
Bei VirtualBox müssen drei Einstellungen von den Vorgaben abweichen, sonst startet dieses Abbild überhaupt nicht. Der Fehler sieht nach einem Speicherproblem aus, ist aber keines: GRUB schaltet in einen Grafikmodus, um das gestaltete Menü zu zeichnen, und mit den voreingestellten 16 MB Grafikspeicher von VirtualBox scheitert das mit der Meldung „Out of memory. You need to load the kernel first.“
| Typ | Linux / Ubuntu (64-bit) |
|---|---|
| Hauptspeicher | 4096 MB (mindestens 2048) |
| Prozessoren | 2 oder mehr |
| Grafikspeicher | 128 MB, die Einstellung, auf die es wirklich ankommt |
| 3D-Beschleunigung | eingeschaltet |
| Grafik-Controller | VMSVGA |
| EFI aktivieren | aus: BIOS arbeitet einwandfrei, und das EFI von VirtualBox ist unvollständig |
| Unbeaufsichtigte Installation überspringen | angekreuzt |
| Festplatte | 30 GB oder mehr |
Auf der Befehlszeile:
VBoxManage modifyvm "MoonLightOS" \
--ostype Ubuntu24_LTS_64 --memory 4096 --cpus 4 \
--vram 128 --graphicscontroller vmsvga --accelerate3d on \
--boot1 dvd --boot2 disk
VirtualBox bezeichnet das Medium als „Ubuntu“, weil es darauf einen Ordner /casper findet. Das ist nur eine Beschriftung in der Oberfläche von VirtualBox; das Medium selbst gibt sich als MoonLightOS aus. Stellen Sie den Gasttyp trotzdem auf Ubuntu, denn damit werden der richtige Chipsatz und sinnvolle Vorgaben für die Grafik gewählt.
QEMU
UEFI, so wie die meisten Rechner starten. Legen Sie zuerst die schreibbaren Firmware-Variablen und eine Zielfestplatte an:
cp /usr/share/OVMF/OVMF_VARS.fd .
qemu-img create -f qcow2 disk.qcow2 30G
qemu-system-x86_64 \
-enable-kvm -m 4096 -smp 4 \
-machine q35 -cpu host \
-device virtio-vga-gl -display gtk,gl=on \
-drive if=pflash,format=raw,readonly=on,file=/usr/share/OVMF/OVMF_CODE.fd \
-drive if=pflash,format=raw,file=OVMF_VARS.fd \
-drive file=moonlightos-26.04.5-bengunur-amd64.iso,media=cdrom \
-drive file=disk.qcow2,if=virtio
Mit wirklich aktivem Secure Boot, also mit der Firmware, in der Microsofts Schlüssel hinterlegt sind. Nach dem Start meldet mokutil --sb-state „SecureBoot enabled“, und Einstellungen → Über MoonLightOS tut es ebenso:
cp /usr/share/OVMF/OVMF_VARS_4M.ms.fd OVMF_VARS.fd
qemu-system-x86_64 \
-enable-kvm -m 4096 -smp 4 -machine q35,smm=on -cpu host \
-global driver=cfi.pflash01,property=secure,value=on \
-drive if=pflash,format=raw,readonly=on,file=/usr/share/OVMF/OVMF_CODE_4M.secboot.fd \
-drive if=pflash,format=raw,file=OVMF_VARS.fd \
-drive file=moonlightos-26.04.5-bengunur-amd64.iso,media=cdrom
Altes BIOS: Das ISO ist hybrid, deshalb startet dieselbe Datei auch auf dem alten Weg:
qemu-system-x86_64 -enable-kvm -m 2048 -cdrom moonlightos-26.04.5-bengunur-amd64.iso
Um die Aussage mit den 2 GB nachzuprüfen: ohne Beschleunigung und mit dem kleinsten Speicher starten, dann in der Live-Sitzung nachsehen, ob zram als Auslagerungsspeicher auftaucht und der Speicherdruck niedrig bleibt:
qemu-system-x86_64 -enable-kvm -m 2048 -smp 2 -vga std -cdrom moonlightos-26.04.5-bengunur-amd64.iso
# in the live session:
free -h # zram appears as swap
swapon --show # /dev/zram0, zstd
cat /proc/pressure/memory # "some avg10" under about 10 means it is keeping up
systemctl is-active earlyoom
Die Gasterweiterungen für VirtualBox, QEMU/SPICE und VMware liegen schon auf dem Abbild; sie sorgen dafür, dass sich die Anzeige anpasst und die Zwischenablage gemeinsam genutzt wird.
Tastenkürzel
Die vollständige Tabelle steht auf der Seite „Funktionen“. Diese hier lohnen sich am ersten Tag:
| Super | öffnet das Menü; Super+Leertaste öffnet es mit dem Cursor im Suchfeld |
|---|---|
| Super+V | Verlauf der Zwischenablage |
| Super+N | Notizen |
| Druck / Umschalt+Druck | Bildschirmfoto des Bildschirms oder eines Bereichs; Umschalt+Super+5 öffnet das Bedienfeld für Aufnahmen |
| Super+Links / Rechts | legt ein Fenster auf eine Bildschirmhälfte |
| Strg+Hoch | alle Fenster; Strg+Runter alle Arbeitsflächen |
| Super+L | sperrt den Bildschirm; Strg+Alt+T öffnet ein Terminal; Strg+Umschalt+Esc öffnet die Systemüberwachung |
Wenn etwas nicht klappt
- Der Bildschirm bleibt nach dem Startmenü schwarz
Wählen Sie den Eintrag mit der sicheren Grafik. Startet er, installieren Sie von dort aus und schalten anschließend auf der Treiberseite den herstellereigenen Treiber ein.
- „Out of memory. You need to load the kernel first.“
Eine VirtualBox-Maschine mit 16 MB Grafikspeicher. Geben Sie ihr 128 MB und schalten Sie die 3D-Beschleunigung ein, siehe oben unter „Virtuelle Maschinen“.
- Der Desktop wirkt träge
Sehen Sie unter Einstellungen → Über MoonLightOS nach dem OpenGL-Renderer. Wird per Software gezeichnet, sind die Animationen schon bei der Anmeldung abgeschaltet; unter Tweaks → Leistung schalten Sie sie von Hand ab.
- Der Stick startet, scheitert dann aber auf verwirrende Weise
Lassen Sie im Startmenü „Check this medium for defects“ laufen und prüfen Sie die SHA-256-Summe des Downloads.
- Kein WLAN
Öffnen Sie die Treiberseite: Der Broadcom-Treiber liegt auf dem Abbild. Für andere Adapter zeigt das Netzwerkmenü, was der Kernel erkannt hat.
- Das Fingerabdrucklesegerät wird nicht erkannt
Öffnen Sie das Werkzeug Fingerabdruck. Es nennt den Hersteller des Sensors, sagt, ob er direkt unterstützt wird, im Chip abgleicht oder eine Binärdatei des Herstellers braucht, und erklärt, was sich tun lässt.
- Protokolle lesen
Was der Start zu beklagen hatte, das Protokoll der Anmeldeverwaltung, das Protokoll des ersten Starts und der Name des aktiven Starttheme:
journalctl -b -p warning # what the boot complained about
journalctl -b -u lightdm
cat /var/log/moonlight-firstboot.log
plymouth-set-default-theme # should print: moonlightos
Für einen Fehlerbericht legt „Über MoonLightOS“ → „Bericht kopieren“ Version und Hardware in die Zwischenablage, und moonlight-selftest gibt aus, was der Desktop tatsächlich tut.
moonlight-selftest | less
Selbst bauen
Die ganze Distribution steckt in einem Repository: Die Grafiken entstehen aus einem einzigen Quelllogo, die Themes aus einer einzigen Palette, und ein Skript macht daraus ein startfähiges ISO, das mit Secure Boot funktioniert. Sie brauchen Docker und etwa 25 GB freien Platz; welches Betriebssystem Sie verwenden, spielt keine Rolle, weil der Build in einem Container läuft.
./build.sh | alles: Bootstrap → anpassen → komprimieren → ISO |
./build.sh rootfs | endet, sobald das System angepasst ist |
./build.sh image | packt ein vorhandenes Wurzeldateisystem in ein neues ISO |
./build.sh finish | nur Bootloader und ISO, das Squashfs wird weiterverwendet |
./build.sh shell | eine Shell in der Bauumgebung |
./build.sh clean | löscht den Arbeitsdatenträger |
Das ISO landet in out/, mit der SHA-256-Prüfsumme daneben. Unter Windows führen Sie es in der Git Bash aus oder nehmen build.ps1.
Wie der Build aufgebaut ist
build.sh | Einstieg auf dem Wirtsystem; führt alles in einem Container aus |
|---|---|
build/Dockerfile.builder | die Bauumgebung, auf die Zielveröffentlichung festgelegt |
build/mkiso.sh | Bootstrap, Kernel herauslösen, Squashfs, Bootloader, ISO |
build/inchroot.sh | alles, was im chroot geschieht, in vierzehn Stufen |
config/moonlight.conf | jede Zeichenkette, die die Veröffentlichung ausmacht |
packages/*.list | was aufs Abbild kommt und was entfernt wird |
rootfs/ | Dateien, die unverändert ins System kopiert werden, darunter die MoonLight-Anwendungen |
brand/source/ | Quelllogo und Hintergrundbilder; brand/out/ wird erzeugt |
tools/gen-branding.py | Quelllogo → Startanimation, GRUB, Anmeldebildschirm, Symbole |
tools/gen-themes.py | eine Palette → beide vollständigen Themes |
po/ | die Übersetzungen der MoonLight-Anwendungen |
installer/ | Konfiguration und Gestaltung von Calamares |
Bevor das ISO entsteht, führt der Build mehr als 120 verbindliche Prüfungen im Abbild aus: den Kernel, den signierten Shim, beide Themes, jedes MoonTool, die Codecs, die WLAN-Treiber, die Übersetzungen und dass Gesichtsentsperrung und Notfallpasswort abgeschaltet sind. Scheitert eine Prüfung, bricht der Build ab. Der Arbeitsbereich ist ein Docker-Volume und keine Einbindung aus dem Wirtsystem, weil Besitzrechte, symbolische Verknüpfungen und Gerätedateien eine solche Einbindung unter Windows oder macOS nicht überleben.
Anpassen
- Die Identität der Veröffentlichung
In config/moonlight.conf steht jede Zeichenkette, die die Distribution ausmacht.
- Grafiken
Tauschen Sie das Quelllogo oder ein Hintergrundbild aus, lassen Sie tools/gen-branding.py noch einmal laufen, und Startanimation, GRUB, Anmeldebildschirm, Symbole und die Grafiken des Installationsprogramms entstehen alle neu.
- Farben
In tools/gen-themes.py stehen eine dunkle und eine helle Palette, und daraus entstehen nach denselben Regeln beide vollständigen Themes.
- Installierte Pakete
packages/*.list, ein Paket je Zeile, installiert in der Reihenfolge der Dateinamen; in 99-purge.list steht, was danach entfernt wird.
- Vorgaben für den Desktop
rootfs/etc/dconf/db/moonlight.d/, im dconf-Keyfile-Format. Das sind Vorgaben, keine Sperren: Jede davon kann ein Benutzer ändern.
- Schnell neu bauen
Nach einer Änderung an rootfs/ oder an den Paketlisten wiederholt build.sh rootfs die chroot-Stufe auf der zwischengespeicherten Basis, und build.sh image packt das ISO neu; build.sh finish ist für die Arbeit am Startmenü gedacht.
Hilfe und Fehlerberichte
Ein brauchbarer Bericht sagt, was Sie erwartet haben, was stattdessen geschah und auf welchem Rechner. Den dritten Teil macht MoonLightOS einfach:
- „Über MoonLightOS“ → „Bericht kopieren“ legt Version, Hardware, Grafik-Renderer und den Zustand von Secure Boot als Text in die Zwischenablage.
- moonlight-selftest gibt aus, welche Theme-Einstellungen gelten, ob das Stylesheet der Shell richtig geladen wurde, welcher Grafiktreiber aktiv ist und welche Dienste gescheitert sind.
- Bei einem Problem beim Start schreibt der Eintrag „Verbose boot“ jede Meldung auf den Bildschirm und auf die erste serielle Schnittstelle.
- Zum Installationsprogramm: /var/log/moonlight-firstboot.log auf dem installierten System und journalctl -b -p warning.
Wohin damit
Eine öffentliche Fehlerverwaltung und eine Anlaufstelle für Fragen werden hier angekündigt. Bis dahin bewahren Sie den Bericht auf: Alles, was darin stehen muss, liefern die beiden Werkzeuge oben.