Bestaande kernel
Je wilt misschien niet je eigen kernel. Voor de eerste keer opstarten kan een standaardkernel voldoende zijn. Op deze manier krijg je het systeem aan de gang en kun je het op elk moment opstarten en alles correct instellen. Het compileren van een kernel kan ook tijd kosten, dus het kan handig zijn om een bestaande kernel te gebruiken. Kopieer hiervoor de kernel en de modules naar de juiste locaties. Op de nieuwere cd staan de bestanden in de opstartmap. Meestal 'Gentoo' genoemd, je zou ze gemakkelijk moeten vinden. Een waarschuwing is dat je ervoor moet zorgen dat ze de kernel zijn en '.igz' bestanden. Gebruik daarvoor het bestandscommando.
$ bestand /boot/* /mnt/cdrom/boot/EFI: map/mnt/cdrom/boot/gentoo: Linux kernel x86 opstart uitvoerbaar bzImage,
versie 5.4.80-gentoo-r1-x86_64 (root@catalyst) #1 SMP zo 17 jan 23:41:47 UTC
2021, RO-rootFS, swap_dev 0x3, normale VGA
/mnt/cdrom/boot/gentoo-config: Linux make config build-bestand, ASCII-tekst
/mnt/cdrom/boot/gentoo.igz: XZ gecomprimeerde gegevens
/mnt/cdrom/boot/System-gentoo.kaart: ASCII-tekst
Zoals je kunt zien, zijn de bestanden duidelijk gemarkeerd met deze methode, zodat je weet welke je moet gebruiken. Vervolgens moet u modules kopiëren. De modules staan in je lib/modules directory, één per kernel die je uitvoert.
$ cp -R /lib/modules/5.8.0-generiek /mnt/gentoo/lib/modulesVoor de directory kun je ook 'uname -r' gebruiken om de naam te krijgen.
Hulpprogramma's installeren
Gentoo wordt geleverd met tools voor veel geavanceerde taken. Bij het compileren van een kernel gebruik je meestal 'make config' die je ook binnen Gentoo . kunt gebruiken. Je hebt echter ook een Gentoo-tool; genkernel. Het kan je kernel automatisch compileren met de gegeven standaardinstellingen. U moet zich ervan bewust zijn dat u ook een kernel kunt installeren door gewoon de emerge verpakkingstool te gebruiken. U moet een kernelpakket kiezen dat bij uw platform past. Hieronder ziet u een aantal keuzes:.
$ emerge -ask sys-kernel/installkernel-gentoo$ emerge -ask sys-kernel/installkernel-systemd-boot
Een van de tools om je kernel te compileren, na het installeren van sources is 'genkernel'.
$ genkernelDe genkernel-tool voert alle scripts uit die je nodig hebt om de kernel te upgraden na het downloaden van nieuwe bronnen.
Broncode gebruiken
Dit vereist meer compileerkracht, maar het is een van de redenen dat je voor Gentoo . kiest. In feite gaat alle documentatie ervan uit dat je je kernel wilt compileren en heeft binaire kernels als alternatief. De grote verandering hierin vond plaats in september 2020 toen de Gentoo-ontwikkelaars voorgebouwde kernels uitbrachten. Je hebt veel pakketten om uit te kiezen, maar de procedure is voor alle pakketten hetzelfde. Kies een kernel, vanaf hier! Er zijn er nog veel meer, maar die kun je kiezen nadat je klaar bent. Hier kies je de nieuwste kernelvorm Gentoo.
$ emerge -ask -update -deep -with-bdeps=y -newuse sys-kernel/gentoo-sourcesDit houdt in dat je ervoor kiest om alleen de kernel te upgraden. Een volledige systeemupgrade zal vaak de bronnen upgraden voor een nieuwe kernel. Hierna heb je verschillende kernels, selecteer degene die je wilt gebruiken.
$ eselect kernellijst $ eselect kernelset 3Het systeem heeft nu de link gewijzigd in /usr/src/linux. Alle tools gebruiken die symbolische link. Je moet dan het oude configuratiebestand kopiëren, zodat het grootste deel van je nieuwe kernel dezelfde waarden heeft. Het oude bestand is op veel plaatsen beschikbaar; een zit in je lopende systeem.
$ zcat /proc/config.gz /usr/src/linux/configNu kunt u de kernelconfiguratie starten. U doet dit met elk van de standaardpakketten, 'make config', 'make menuconfig' enzovoort. Gentoo heeft echter een aas in petto; genkernel! Deze tool neemt alle stappen en doet het hele proces voor je. Let wel, om te optimaliseren; je moet een paar opties toevoegen.
$ genkernel -oldconfig -menuconfigJe kunt draaien zonder parameters, maar dan heb je geen keuzes over je kernelconfiguratie. Deze procedure is voldoende voor het maken en installeren van een nieuwe kernel. Het instellen van de parameters is een grote uitdaging.
Vooraf gebouwde kernels gebruiken
Weet je zeker dat je je eigen kernel wilt compileren?? Je hebt verschillende keuzes om een binaire kernel te krijgen. Als u de onderstaande waarde instelt, zal de installatie van de debiansources de binaire kernel installeren, wat u de moeite bespaart om uw eigen kernel te compileren.
$ echo "sys-kernel/debian-sources binary" >> /etc/portage/package.gebruik$ emerge debian-bronnen
Je kunt de nieuwste stabiele kernel ook rechtstreeks van de ontwikkelaars van hun site krijgen. Om te installeren en te upgraden, moet je emerge uitvoeren om het te installeren.
$ emerge -ask sys-kernel/gentoo-kernel-binEr zijn meer kernels beschikbaar en de distributiekernels zijn ook beschikbaar.
Niet-ondersteunde broncode gebruiken
Je hebt misschien je eigen wijzigingen in de kernelcode. Om met deze situatie om te gaan, wil je de automatische verwerking van die code uitschakelen. Om er zeker van te zijn dat Portage weet welke afhankelijkheden moeten worden afgehandeld, moet je het vertellen dat je het daar hebt geplaatst, maar dat het niet automatisch moet worden bijgewerkt.
Het bestand dat je moet invullen om Portage te informeren is /etc/portage/profile/package.op voorwaarde dat
#Gentoo-bronnen markeren-4.9.16 zoals handmatig geïnstalleerdsys-kernel/gentoo-sources-4.9.16
Op deze manier kun je elke code gebruiken en doen wat je wilt zonder dat de scripts dingen onverwachts veranderen.
Intel Micro-code
Als je klaar bent met compileren, moet je ervoor zorgen dat je de microcode voor je processor hebt. Deze pakketten zijn voor de Intel-processor.
$ emerge intel-microcode iucodetoolSla dit over als je een AMD-processor hebt.
Eten
Je moet updaten-grub zoals je doet op andere distributies, met een twist.
$ grub-install -efi-directory=/boot /dev/vdaDe efi-dingen zijn nodig als je je opstartpartitie niet standaard mount: 'boot/efi'. Speciaal voor Gentoo is deze kleine man, die al je bootgerelateerde dingen zal opzetten.
$ ego boot-updateControleer of het de kernel en intramfs heeft gevonden, het commando geeft een overzicht van alle successen en mislukkingen. Zorg dat het allemaal werkt.
Bronnen verwijderen
Aangezien u de bronnen installeert met de pakketbeheerder, kunt u ook de pakketbeheerder gebruiken om ze te verwijderen en de boomstructuur tussen de compilaties op te schonen.
Om uw boom schoon te maken:
$ emerge -ask -depclean gentoo-sourcesOm een bepaalde kernel te verwijderen:
$ emerge -ask -noreplace gentoo-source:5.4.83Als u de huidige stabiele tak wilt verwijderen!
Andere keuzes
Een vrij recent project in Gentoo is het toevoegen van "distributiekernels". Er zijn er drie beschikbaar, als je er eenmaal een hebt gekozen, zal het systeem de kernel upgraden tijdens een reguliere upgrade.
Conclusie
Gentoo is vanaf het begin gebouwd voor de knutselaar, wat het een krachtig hulpmiddel voor optimalisatie maakt. Tegenwoordig kun je de distributie de kernel voor je laten afhandelen. Je mist de fine-tuning, maar je kunt daar op elk moment induiken door bronnen toe te voegen met de standaardpakketten. Al met al wordt Gentoo toegankelijk voor meer mensen zonder in te boeten aan tweakmogelijkheden. Goed gedaan; Gentoo!