Gentoo

Hoe de Gentoo-kernel te upgraden

Hoe de Gentoo-kernel te upgraden
Gentoo is een rollende release, wat betekent dat er met regelmatige tussenpozen nieuwe updates beschikbaar zijn, maar er zijn geen grote updates. Het idee hierachter is om nooit incompatibele delen van het systeem te hebben omdat ze tot verschillende grote releases behoren. U upgradet naar behoefte. In veel andere distributies komen de nieuwe kernels met de nieuwe release. In Gentoo heb je nieuwe kernels als het getest is. Je kunt natuurlijk de nieuwste kernel nemen en die uitvoeren. Met het voorbehoud dat je behoorlijk eenzaam kunt zijn op de forums als je problemen hebt.

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/modules

Voor 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'.

$ genkernel

De 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-sources

Dit 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 3

Het 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/config

Nu 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 -menuconfig

Je 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-bin

Er 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ïnstalleerd
sys-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 iucodetool

Sla 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/vda

De 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-update

Controleer 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-sources

Om een ​​bepaalde kernel te verwijderen:

$ emerge -ask -noreplace gentoo-source:5.4.83

Als 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!

Beste gameconsole-emulators voor Linux
Dit artikel bevat een lijst van populaire emulatiesoftware voor gameconsoles die beschikbaar is voor Linux. Emulatie is een softwarecompatibiliteitsla...
Beste Linux-distributies voor gaming in 2021
Het Linux-besturingssysteem heeft een lange weg afgelegd van zijn oorspronkelijke, eenvoudige, servergebaseerde uiterlijk. Dit besturingssysteem is de...
Hoe u uw gamesessie op Linux kunt vastleggen en streamen
In het verleden werd het spelen van games alleen als een hobby beschouwd, maar met de tijd zag de game-industrie een enorme groei in termen van techno...