Útmutató
A letöltéstől a működő telepítésig, és hogy mi a teendő, ha valami nem sikerül.
Mielőtt belekezd
Bármilyen 64 bites x86-os gép. A telepítőhöz legalább 1,7 GB memória és 18 GB lemezhely kell; az alábbi értékekkel a rendszer kényelmesen fut.
| Minimum | Ajánlott | |
|---|---|---|
| Memória | 2 GB | 4 GB |
| Lemez | 18 GB | 30 GB |
| Processzor | bármilyen 64 bites x86-os processzor | kétmagos |
| Grafika | bármilyen framebufferrel rendelkező videokártya | az utóbbi 15 év bármelyik GPU-ja |
Ugyanaz a lemezkép működik UEFI-vel és hagyományos BIOS-szal is. A Secure Boot bekapcsolva maradhat.
Letöltés és ellenőrzés
A lemezkép egyetlen fájl, a moonlightos-26.04.5-bengunur-amd64.iso, és mellette egy másik fájl tartalmazza a SHA-256 összegét. Az összeget írás előtt ellenőrizze: a félbemaradt letöltésből olyan pendrive lesz, amely elindul, aztán kiszámíthatatlan hibákat produkál.
Linuxon vagy macOS-en, abban a mappában, ahová letöltötte:
sha256sum -c moonlightos-26.04.5-bengunur-amd64.iso.sha256
Windowson, PowerShellben hasonlítsa össze a kiírt hasht a .sha256 fájlban lévővel:
Get-FileHash .\moonlightos-26.04.5-bengunur-amd64.iso -Algorithm SHA256
Get-Content .\moonlightos-26.04.5-bengunur-amd64.iso.sha256
Az első parancs OK-t ír ki; a második olyan hasht, amelynek egyeznie kell a fájlban lévővel. Minden más azt jelenti, hogy a letöltés hibás.
A lemezkép pendrive-ra írása
A lemezkép hibrid ISO, ezért elég egy sima blokkszintű másolás: nem kell hozzá külön program, és ugyanaz a pendrive indul UEFI-s és BIOS-os gépen is. A pendrive teljes tartalma elveszik. Legalább 8 GB-os pendrive kell hozzá.
Linuxon vagy macOS-en először keresse meg az eszköz nevét (Linuxon lsblk, macOS-en diskutil list), majd:
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
Nézze meg kétszer az eszköz nevét: a dd pontosan arra az eszközre ír, amelyet megad neki.
Windows
Használja a Rufust DD módban, a balenaEtchert vagy a Ventoyt. Ha a Rufus megkérdezi, ISO vagy DD módban írjon-e, válassza a DD-t.
Indítás pendrive-ról
Indítsa el a gépet a bedugott pendrive-val, és nyissa meg az egyszeri indítómenüt (gyártótól függően F12, F8, F2, Esc vagy Del), vagy állítsa be az USB-eszközt első indítási eszköznek a firmware beállításaiban. A Secure Bootot nem kell átállítani.
Az indítómenü
- Try or Install MoonLightOS
A szokásos bejegyzés. Elindítja a live munkamenetet az indítási animációval.
- Try or Install MoonLightOS (safe graphics)
Ugyanaz, kikapcsolt kernel mode-settinggel. Akkor válassza, ha a kép fekete marad, vagy ha a megjelenítés szétesik.
- MoonLightOS in RAM (needs 6 GB+)
A teljes rendszert a memóriába másolja, így a pendrive kihúzható.
- Check this medium for defects
Az adathordozó minden fájlját összeveti a build során rögzített ellenőrzőösszegekkel.
- Verbose boot (no splash, logs to serial)
Minden üzenetet kiír a képernyőre és az első soros portra: csak így olvasható el az olyan indulás, amely még a kijelző megjelenése előtt bukik el.
- UEFI firmware settings
Újraindít a firmware beállításaiba.
A live munkamenet
Először a beállítási varázsló jelenik meg: válassza ki a rendszer nyelvét, erősítse meg a billentyűzetkiosztást (a mezőbe írva ki is próbálhatja), kapcsolódjon Wi-Fi-hálózatra, majd nézelődjön vagy telepítsen. Amit itt beállít, az valódi rendszerbeállítás, és a telepítő ugyanezekkel dolgozik.
A live munkamenet a teljes, változatlan rendszer: ugyanaz az asztal, ugyanazok az eszközök, ugyanazok a beállítási lapok. A live felhasználó neve moonlight, és nincs jelszava. Amíg nem indítja el a telepítőt, semmi nem ér hozzá a lemezhez.
A telepítéshez kattintson duplán az asztalon a MoonLightOS telepítése ikonra, vagy nyissa meg újra a Beállítás varázslót, és válassza a telepítést.
Telepítés
A telepítő a Calamares. Hét lap, aztán a másolás a lemezre.
- Üdvözlés
A telepítő nyelve és hivatkozások erre az útmutatóra.
- Hely
A régió és az időzóna; a területi beállítás és a számformátumok ebből következnek.
- Billentyűzet
Már arra van állítva, amit a varázslóban választott. A mezőbe írva ellenőrizheti.
- Partíciók
Alapértelmezés a lemez törlése, ez ext4 fájlrendszert és swapfájlt hoz létre; btrfs, xfs és f2fs is választható, és kézzel is lehet partícionálni. A teljes lemezes LUKS2-titkosításhoz jelölje be a rendszer titkosítását, és adjon meg jelmondatot: ezt minden indításkor be kell írni, és ha elfelejti, nem állítható vissza. UEFI-s gépen 512 MiB EFI-partíció készül.
- Felhasználók
A neve, a gép neve, egy felhasználónév és egy legalább nyolc karakteres jelszó kétféle karakterosztályból. Az első fiók a sudón keresztül rendszergazda; a root fiók zárolva marad, és automatikus bejelentkezés sincs, amíg be nem kapcsolja.
- Összegzés
Egy listában minden, amit a telepítő tenni fog. Eddig semmi nem került a lemezre.
- Telepítés
A rendszer a lemezre kerül, telepszik a rendszerbetöltő (UEFI-n MoonLightOS néven, a firmware indítási listájában), és a live munkamenet maradványai eltűnnek. Ezután indítsa újra a gépet, és húzza ki a pendrive-ot.
A gépen lévő többi operációs rendszert az os-prober az első induláskor megtalálja, és felveszi a GRUB menüjébe.
Az első indulás
A telepített rendszer annak a lemezképnek a pontos másolataként indul el, amelyből minden más telepítés is származik. Minden, aminek egyedinek kell lennie ezen a gépen, az első induláskor jön létre, még a bejelentkezési képernyő előtt, egy olyan szolgáltatással, amely ezután kikapcsolja magát:
- új gépazonosító, hogy a hálózat felől senki ne tudjon összekötni két telepítést;
- új SSH-gazdakulcsok, mert ha mindenki ugyanazt a kulcsot kapná a lemezképpel, a gazdagép-ellenőrzésnek nem lenne értelme;
- a GRUB menüje, most, hogy a valódi lemezek és a rajtuk lévő többi operációs rendszer is látszik;
- a tényleg jelen lévő hardverhez újraépített initramfs, így kisebb lesz, és hamarabb jön az indítási animáció;
- az ikon-, a betűkészlet- és az asztali gyorsítótárak, hogy az első bejelentkezés ne legyen lassú;
- a tűzfal, újra bekapcsolva.
A kimenete a /var/log/moonlight-firstboot.log fájlba kerül. Ezután jön a bejelentkezési képernyő, az első bejelentkezés után pedig az Üdvözlet ablaka.
Első lépések
- Válasszon megjelenést
Sötét vagy világos, mindjárt az Üdvözletben. A többi a MoonLight Tweaksben van: az asztali elrendezés, a háttérkép, az időzítés és a kisalkalmazások.
- Illesztőprogramok
Az Üdvözlet → Illesztőprogramok megnyitja az Illesztőprogram-kezelőt. NVIDIA-kártyás gépen a zárt illesztőprogram rajta van az ISO-n, így internet nélkül is működik.
- Szoftverek
Az áruház egyszerre listázza a snapeket, az Ubuntu tárolóját és a Flathubot. A Thunderbird, a Steam, a Spotify és sok más egyetlen keresésre van.
- Ujjlenyomat és arc
Üdvözlet → Ujjlenyomat, vagy Rendszerbeállítások → Saját fiók, ha ujjlenyomatot szeretne rögzíteni vagy arcfelismerést beállítani.
- Biztonsági mentés
A Timeshift időzítve készít pillanatképeket a rendszerről. Állítsa be, mielőtt szükség lesz rá.
- Biztonság
A Rendszerbeállítások → Biztonság megmutatja, mi védi és mi nem védi ezt a gépet, és minden sor mellett ott a gomb, amely megoldja.
- Fejlesztői csomagok
Virtuális gépek, PHP adatbázisokkal és LaTeX: egy-egy kattintás az Üdvözletben, a már beállított tárolóból telepítve.
- Windowsos programok
Nyissa meg egyszer a Windows-alkalmazásokat: előkészíti a Wine-t DXVK-val, VKD3D-vel, betűkészletekkel és futtatókörnyezetekkel. Utána az .exe fájlok egyszerűen megnyílnak.
Virtuális gépek
VirtualBox
A VirtualBoxban három beállítást meg kell változtatni az alapértékhez képest, különben ez a lemezkép egyáltalán nem indul el. A hiba memóriaproblémának látszik, pedig nem az: a GRUB grafikus módra vált, hogy kirajzolja a témázott menüt, és ez a VirtualBox alapértelmezett 16 MB videómemóriájával elbukik, az „Out of memory. You need to load the kernel first.” üzenettel.
| Típus | Linux / Ubuntu (64-bit) |
|---|---|
| Memória | 4096 MB (minimum 2048) |
| Processzorok | 2 vagy több |
| Videómemória | 128 MB, ez az a beállítás, amelyen valóban múlik |
| 3D-gyorsítás | bekapcsolva |
| Grafikus vezérlő | VMSVGA |
| EFI engedélyezése | kikapcsolva: a BIOS jól működik, a VirtualBox EFI-je pedig félkész |
| Felügyelet nélküli telepítés kihagyása | bejelölve |
| Lemez | 30 GB vagy több |
Parancssorból:
VBoxManage modifyvm "MoonLightOS" \
--ostype Ubuntu24_LTS_64 --memory 4096 --cpus 4 \
--vram 128 --graphicscontroller vmsvga --accelerate3d on \
--boot1 dvd --boot2 disk
A VirtualBox „Ubuntu” néven jelöli meg az adathordozót, mert /casper mappát talál rajta. Ez csak egy felirat a VirtualBox felületén; maga az adathordozó MoonLightOS-ként azonosítja magát. A vendég típusát mégis állítsa Ubuntura, mert ezzel kapja meg a megfelelő lapkakészletet és a grafikai alapértékeket.
QEMU
UEFI, ahogy a gépek többsége indul. Előbb hozza létre az írható firmware-változókat és a céllemezt:
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
Valóban bekapcsolt Secure Boottal, a Microsoft kulcsaival feltöltött firmware-rel. Indulás után a mokutil --sb-state SecureBoot enabled állapotot jelez, és ugyanezt mutatja a Beállítások → Névjegy is:
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
Hagyományos BIOS: az ISO hibrid, így ugyanaz a fájl a régi módon is elindul:
qemu-system-x86_64 -enable-kvm -m 2048 -cdrom moonlightos-26.04.5-bengunur-amd64.iso
A 2 GB-os állítás ellenőrzéséhez indítsa gyorsítás nélkül, a minimális memóriával, majd nézze meg a live munkamenetben, hogy a zram megjelenik-e swapként, és hogy a memóriaterhelés alacsony marad-e:
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
A VirtualBox, a QEMU/SPICE és a VMware vendégeszközei már a lemezképen vannak, ezektől működik a kijelző átméretezése és a közös vágólap.
Gyorsbillentyűk
A teljes táblázat a Jellemzők lapon van. Az első napra ezeket érdemes megtanulni:
| Super | megnyitja a menüt; a Super+Szóköz pedig úgy, hogy a kurzor már a keresőmezőben van |
|---|---|
| Super+V | vágólaptörténet |
| Super+N | jegyzetek |
| Print / Shift+Print | képernyőkép a teljes képernyőről / egy területről; a Shift+Super+5 a felvételi panelt nyitja meg |
| Super+Balra / Jobbra | az ablakot a képernyő feléhez igazítja |
| Ctrl+Fel | minden ablak; a Ctrl+Le minden munkaterület |
| Super+L | zárolja a képernyőt; a Ctrl+Alt+T terminált nyit, a Ctrl+Shift+Esc a rendszerfigyelőt |
Hibaelhárítás
- A kép fekete marad az indítómenü után
Válassza a safe graphics bejegyzést. Ha azzal elindul, onnan telepítsen, utána pedig kapcsolja be a zárt illesztőprogramot az Illesztőprogramok lapon.
- „Out of memory. You need to load the kernel first.”
Ez egy 16 MB videómemóriás VirtualBox-gép. Adjon neki 128 MB-ot, és kapcsolja be a 3D-gyorsítást; lásd a Virtuális gépek részt.
- Lassúnak tűnik az asztal
Nézze meg az OpenGL-megjelenítőt a Beállítások → Névjegy lapon. Szoftveres megjelenítés mellett az animációk bejelentkezéskor maguktól kikapcsolnak; a Tweaks → Teljesítmény lapon kézzel is kikapcsolhatók.
- A pendrive elindul, aztán kiszámíthatatlan hibákat produkál
Futtassa az indítómenüből a Check this medium for defects bejegyzést, és ellenőrizze a letöltés SHA-256 összegét.
- Nincs Wi-Fi
Nyissa meg az Illesztőprogramok lapot: a Broadcom illesztőprogramja rajta van a lemezképen. Más adaptereknél a hálózati menü megmutatja, mit talált a kernel.
- Nem találja az ujjlenyomat-olvasót
Nyissa meg az Ujjlenyomatot. Megnevezi az érzékelő gyártóját, megmondja, natív, lapkán belül összehasonlító vagy gyártói binárist igénylő érzékelőről van-e szó, és elmondja, mi tehető.
- A naplók olvasása
Mire panaszkodott az indulás, mit írt a bejelentkezéskezelő, mi került az első indulás naplójába, és mi az aktív indítási téma neve:
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
Hibajelentéshez a Névjegy → Jelentés másolása a vágólapra teszi a kiadást és a hardvert, a moonlight-selftest pedig kiírja, mit csinál valójában az asztal.
moonlight-selftest | less
Saját build készítése
Az egész disztribúció egyetlen tárolóban van: a grafika egyetlen forráslogóból származik, a témák egyetlen palettából készülnek, és egyetlen szkript gyúr mindebből Secure Boottal is induló ISO-t. Docker kell hozzá (bármilyen operációs rendszeren, mert a build konténerben fut) és körülbelül 25 GB szabad hely.
./build.sh | minden: bootstrap → testreszabás → tömörítés → ISO |
./build.sh rootfs | megáll, amint a rendszer testreszabása kész |
./build.sh image | meglévő gyökérfájlrendszert csomagol újra ISO-ba |
./build.sh finish | csak a rendszerbetöltők és az ISO, a meglévő squashfs újrahasznosításával |
./build.sh shell | parancssor a build környezetén belül |
./build.sh clean | törli a munkakötetet |
Az ISO az out/ mappába kerül, mellette a SHA-256 összege. Windowson Git Bashből futtassa, vagy használja a build.ps1 szkriptet.
Hogyan épül fel a build
build.sh | belépési pont a gazdagépen; mindent konténerben futtat |
|---|---|
build/Dockerfile.builder | a build környezete, a célkiadáshoz rögzítve |
build/mkiso.sh | bootstrap, kernelkibontás, squashfs, rendszerbetöltők, ISO |
build/inchroot.sh | minden, ami a chrooton belül történik, tizennégy szakaszban |
config/moonlight.conf | minden szöveg, amely a kiadást meghatározza |
packages/*.list | mi kerül a lemezképre, és mi kerül le róla |
rootfs/ | változatlanul a rendszerbe másolt fájlok, köztük a MoonLight alkalmazások |
brand/source/ | a forráslogó és a háttérképek; a brand/out/ generált |
tools/gen-branding.py | forráslogó → indítási animáció, GRUB, bejelentkezési képernyő, ikonok |
tools/gen-themes.py | egy paletta → mindkét teljes téma |
po/ | a MoonLight alkalmazások fordításai |
installer/ | a Calamares beállításai és arculata |
Az ISO elkészülte előtt a build több mint 120 kötelező ellenőrzést futtat a lemezképen belül: a kernelt, az aláírt shimet, mindkét témát, minden MoonToolt, a kodekeket, a Wi-Fi-illesztőprogramokat, a fordításokat, és azt is, hogy az arcfelismeréses feloldás és a vészhelyzeti jelszó ki van-e kapcsolva. Ha bármelyik ellenőrzés elbukik, a build megáll. A munkaterület Docker-kötet, nem pedig becsatolt mappa, mert a fájlok tulajdonosa, a szimbolikus linkek és az eszközfájlok Windowson és macOS-en nem élik túl a becsatolást.
Testreszabás
- A kiadás adatai
A config/moonlight.conf tartalmazza az összes szöveget, amely a disztribúciót meghatározza.
- Grafika
Cserélje ki a forráslogót vagy valamelyik háttérképet, futtassa újra a tools/gen-branding.py szkriptet, és újragenerálódik az indítási animáció, a GRUB, a bejelentkezési képernyő, az ikonok és a telepítő grafikája.
- Színek
A tools/gen-themes.py egy sötét és egy világos palettát tartalmaz, és ugyanazokkal a szabályokkal generálja belőlük mindkét teljes témát.
- Telepített csomagok
A packages/*.list fájlokban soronként egy csomag, fájlnév szerinti sorrendben telepítve; a 99-purge.list azt sorolja fel, mi kerül le utólag.
- Asztali alapértékek
A rootfs/etc/dconf/db/moonlight.d/ mappában, dconf keyfile formátumban. Ezek alapértékek, nem zárak: a felhasználó mindegyiket átállíthatja.
- Gyors újraépítés
A rootfs/ vagy a csomaglisták módosítása után a build.sh rootfs a gyorsítótárazott alapon megismétli a chroot szakaszt, a build.sh image pedig újracsomagolja az ISO-t; a build.sh finish akkor hasznos, ha az indítómenün dolgozik.
Segítség és hibajelentés
A jó hibajelentés megírja, mit várt, mi történt helyette, és milyen gépen. A harmadikban a MoonLightOS segít:
- A MoonLightOS névjegye → Jelentés másolása a vágólapra teszi a kiadást, a hardvert, a grafikus megjelenítőt és a Secure Boot állapotát, szövegként.
- A moonlight-selftest kiírja a használatban lévő témabeállításokat, azt, hogy a felület stíluslapja rendesen betöltődött-e, melyik grafikus illesztőprogram aktív, és mely szolgáltatások hibáztak el.
- Indítási problémánál a Verbose boot bejegyzés minden üzenetet kiír a képernyőre és az első soros portra.
- A telepítőhöz: a telepített rendszeren a /var/log/moonlight-firstboot.log, valamint a journalctl -b -p warning.
Hová küldje
A nyilvános hibajegykezelőt és támogatási csatornát itt hirdetjük meg. Addig őrizze meg a jelentést: minden, aminek benne kell lennie, előáll a fenti két eszközből.