View previous topic :: View next topic |
Author |
Message |
ManfredB Veteran
Joined: 27 Dec 2007 Posts: 1789
|
Posted: Fri Dec 13, 2019 9:54 am Post subject: sys-kernel/installkernel-gentoo-1 - wozu? |
|
|
Hallo zusammen,
heute lasse ich mein System wieder aktualisieren, da sehe ich das im Titel genannte Paket.
Dazu eine einfache Frage: wozu ist diese Programm gedacht?
Danke im voraus für Antworten.
Gruß
Manfred |
|
Back to top |
|
|
Max Steel Advocate
Joined: 12 Feb 2007 Posts: 2272 Location: My own world! I and Gentoo!
|
Posted: Fri Dec 13, 2019 10:28 am Post subject: |
|
|
eix (bzw der Portage Tree) meint dazu:
Code: | * sys-kernel/installkernel-gentoo
Verfügbare Versionen: (~)1
Startseite: https://github.com/mgorny/installkernel-gentoo
Beschreibung: Gentoo fork of installkernel script from debianutils |
Ich weiß nicht was installkernel macht... vorallem hab ich bisher mit make install modules_install nie Probleme gehabt. _________________ mfg
Steel
___________________
Heim-PC: AMD Ryzen 5950X, 64GB RAM, GTX 1080
Laptop: Intel Core i5-4300U, 16GB RAM, Intel Graphic
Arbeit-PC: Intel i5-1145G7, 16GB RAM, Intel Iris Xe Graphic (leider WSL2) |
|
Back to top |
|
|
ManfredB Veteran
Joined: 27 Dec 2007 Posts: 1789
|
Posted: Fri Dec 13, 2019 10:40 am Post subject: |
|
|
Vielen Dank für die schnelle Reaktion.
Was eix dazu schreibt, habe ich schon gesehen,
aber was genau die Aufgabe des Programms ist, geht daraus nicht hervor.
Vor allem, was hat Debian mit Gentoo zu tun?.
Aber diese Fragen können wahrscheinlich nur die Leute beantworten,
die diese Programme erstellen und in gentoo einbinden.
Lassen wir es also darauf beruhen, daß wir mehr nicht herausfinden.
Trotzdem noch einmal Danke!
Gruß
Manfred |
|
Back to top |
|
|
Max Steel Advocate
Joined: 12 Feb 2007 Posts: 2272 Location: My own world! I and Gentoo!
|
Posted: Fri Dec 13, 2019 11:02 am Post subject: |
|
|
Da hilft die Manpage von debian:
https://manpages.debian.org/jessie/debianutils/installkernel.8.de.html
Quote: | installkernel installiert ein neues Kernel-Image auf das System aus dem Linux-Quellbaum. Es wird von den Linux-Kernel-Makefiles aufgerufen, wenn dort make install ausgeführt wird.
Der neue Kernel wird in {Verzeichnis}/vmlinuz-{Version} installiert. Falls bereits ein symbolischer Link {Verzeichnis}/vmlinuz existiert, wird er erneuert, indem ein Link von {Verzeichnis}/vmlinuz auf den neuen Kernel gelegt wird. Der vorher installierte Kernel ist unter {Verzeichnis}/vmlinuz.old verfügbar.
|
Code: | $ equery b /sbin/installkernel
* Searching for /sbin/installkernel ...
sys-apps/debianutils-4.9 (/sbin/installkernel) |
Also hab ich installkernel die ganze Zeit unbewusst genutzt.
Warum da jetzt aber ein Fork von nötig war, erschließt sich mir nicht ganz. Aber ich fand diesen Gentoo Bugreport: https://bugs.gentoo.org/702164 den ich mangels Zeit leider nicht durchlesen kann. Viel Erfolg. _________________ mfg
Steel
___________________
Heim-PC: AMD Ryzen 5950X, 64GB RAM, GTX 1080
Laptop: Intel Core i5-4300U, 16GB RAM, Intel Graphic
Arbeit-PC: Intel i5-1145G7, 16GB RAM, Intel Iris Xe Graphic (leider WSL2) |
|
Back to top |
|
|
Tyrus Guru
Joined: 03 Feb 2018 Posts: 300
|
Posted: Fri Dec 13, 2019 1:29 pm Post subject: |
|
|
@ManfredB
Das soll ein Gentoo-Fork von dem Debian-Tool werden das auch initramfs Support hat, soweit ich das verstehe.
Ich sehe selber für mich im Augenblick noch keinen Nutzen. Baue mir die initramfs lieber selber mit dem bewährten Ablauf. Kann aus dem Bugreport (danke für den Link dazu) auch nicht erkennen ob das mit luks und lvm was die initramfs angeht klarkommt bzw klarkommen soll. Würde aber beides brauchen, weil schon die Partition in der das logische Laufwerk für das root-Filesystem liegt, verschlüsselt ist.
Dazu bleibt für mich auch die Frage offen, inwieweit die Module wirklich vollständig erzeugt werden, die der neue Kernel braucht. Weil ein einfaches make modules_install reicht bei meinem Setup auch nicht aus. Jeder Kernelneubau erfordert auch ein
Code: |
emerge --ask --verbose @module-rebuild
|
Ansonsten wären wichtige Module für den neuen Kernel nicht vollständig verfügbar. |
|
Back to top |
|
|
ManfredB Veteran
Joined: 27 Dec 2007 Posts: 1789
|
Posted: Fri Dec 13, 2019 3:05 pm Post subject: |
|
|
Hallo zusammen,
nun muss ich doch euch beiden danken, denn jetzt sehe ich doch genauer,
was da läuft.
Als ich immer wieder einmal versucht habe, den Kernel ohne genkernel zu konfigurieren,
bin ich mehr oder weniger gescheitert.
Grund: in dem WIKI stehen zum Teil Dinge, die sich auf wesentlich ältere Kernel beziehen,
daher finde ich die dort angegebenen Rubriken nicht, also kamen nach reboot oft genug
Fehlermeldungen. zT auch genau wegen fehlender Module.
Vielleicht hilft mir genau dieser Hinweis
Code: |
emerge --ask --verbose @module-rebuild
|
Bei meiner nächsten Neuinstallation werde ich einen erneuten Versuch starten mit menuconfig all
statt mit genkernel --menuconfig all.
Danke für diese guten Anregungen.
Gruß
Manfred |
|
Back to top |
|
|
Tyrus Guru
Joined: 03 Feb 2018 Posts: 300
|
Posted: Fri Dec 13, 2019 3:39 pm Post subject: |
|
|
Also es gibt Module die nicht zum Umfang der Kernelquellen gehören und deswegen auch nicht mitels make modules_install installiert werden können.
Bei mir als Beispiel wären das aktuell 4 Module wovon 2 für den täglichen Betrieb unverzichtbar sind.
Code: |
luthien ~ # emerge --ask --verbose @module-rebuild
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] sys-fs/vhba-20190831::gentoo 0 KiB
[ebuild Rf ~] net-misc/r8168-8.047.05::gentoo 0 KiB
[ebuild R ] x11-drivers/nvidia-drivers-440.36-r1:0/440::gentoo USE="X acpi driver gtk3 kms multilib static-libs tools uvm wayland -compat -libglvnd" ABI_X86="32 (64) (-x32)" 0 KiB
[ebuild R ~] app-emulation/virtualbox-modules-6.1.0::gentoo USE="-pax_kernel" 0 KiB
Total: 4 packages (4 reinstalls), Size of downloads: 0 KiB
Fetch Restriction: 1 package
|
x11-drivers/nvidia-drivers ist für die Grafikkarte. Fehlt das kann ich nur Konsolenbetrieb machen.
Und ohne net-misc/r8168 hab ich kein Lan.
Der Ablauf wenn du einmal eine funktionierende Konfiguration für den Kernel hast und dann nur ein Upgrade durchzuführen ist, ist ansich gar nicht so schwer.
1. Die .config aus dem noch aktuellen Kernel in das Quellverzeichnis des neuen Kernel kopieren
Code: |
cd /usr/src
cp linux/.config linux-<version des neuen kernels>
|
2. Mit 'eselect kernel set x' den neuen Kernel auswählen
Das erzeugt dann den passenden Link sodass du ab dann über /usr/src/linux in das Quellverzeichnis des neuen Kernels wechseln kannst.
3. cd linux
4. make olddefconfig
Damit erzeugst du eine neue .config. Die alte ist weiter verfügbar unter .config.old.
olddefconfig wählt automatisch für alle Optionen die der neue Kernel zusätzlich bekommen hat die Standardvorgaben aus. Du musst dich also nicht mittels menuconfig da lang selber umsehen.
5. das ist optional aber recht informativ.
Code: |
diff .config.old .config
|
Damit siehst du was sich alles geändert hat. Oft ist es nur die Versionsnummer - manchmal auch mehr
6. make
Das eigentliche Kompilieren
7. make install
Das installiert den neuen Kernel nach /boot
8. make modules_install
Das legt zuerst mal ein neues Verzeichnis unter /lib/modules an mit der Versionsnummer des Kernels und kopiert die Module vom Kernel dahin.
9. emerge --ask --verbose @module-rebuild
Damit werden alle Module gebaut die nicht zum Umfang des Kernels selber gehören. Die liegen bisher ja noch im Modulverzeichnis des alten Kernels aber eben nicht in dem vom neuen Kernel
10. genkernel --luks --lvm initramfs
Damit baue ich für mein spezielles Setup die Initramfs die unter /boot erzeugt wird. Die Optionen --luks --lvm sind dann abhängig davon wie das Setup ist. Kann gut sein das man gar keine Initramfs braucht. Dann kann der Schritt auch ganz wegfalen.
11. cd /boot
12 grub-mkconfig -o grub/grub.cfg
Das ist der letzte Schritt um den neuen Kernel über den Bootmanager verfügbar zu machen.
make menuconfig benutze ich sehr selten. Eigentlich nur wenn sie hardwareseitig was verändert oder weil ich für ein neues Paket veränderte Kerneloptionen brauche. Ansonsten klappt make olddefconfig für mich bisher immer sehr gut. |
|
Back to top |
|
|
ManfredB Veteran
Joined: 27 Dec 2007 Posts: 1789
|
Posted: Fri Dec 13, 2019 4:05 pm Post subject: |
|
|
Hallo Tyrus,
das ist ja eine sehr gute und vor allem wesentlich einfachere Sache.
Eben bin ich bei Update eines Systems mit kernel 5.4.2 zu 5.4.3.
Das werde ich doch sofort testen.
Tausend Dank für diese Anleitung!
Gruß
Manfred
P.S. Hurrah - es hat einwandfrei funktioniert. Ich habe alles Schritt für Schritt nach deiner Anleitung gemacht,
dann reboot - und nun schreibe ich das von dem System aus mit dem neuen Kernel 5.4.3. |
|
Back to top |
|
|
Tyrus Guru
Joined: 03 Feb 2018 Posts: 300
|
Posted: Fri Dec 13, 2019 6:06 pm Post subject: |
|
|
Hallo ManfredB.
Das freut mich wirklich.
Eine Randnotiz hab ich noch für dich.
Ein
Code: |
emerge --ask --depclean
|
würde jetzt den alten Kernel unter /usr/src/linux-<version des alten kernels> als Paket entfernen. Es werden auch die Quelldateien entfernt. Aber alles weitere was noch im Verzeichnis erzeugt wurde kennt portage nicht und entfernt das auch nicht selber.
Wenn man sicher ist das der neue Kernel funktioniert, kann dann das Quellverzeichnis des alten Kernels ganz entfernt werden.
Genauso wird das Modulverzeichnis des alten Kernels unter /lib/modules von portage nicht gelöscht und kann auch ruhig dann gelöscht werden.
Und unter /boot sind auch die Einträge für den alten Kernel vorhanden.
Die können natürlich dann auch weg.
Ich mach das meistens 1-2 Tage später, wenn es im Betrieb mit dem neuen Kernel keine Probleme gab.
Nach dem Aufräumen dann nochmal
Code: |
cd /boot
grub-mkconfig -o grub/grub.cfg
|
laufen lassen um den alten Kernel auch aus der Grub-Konfiguration zu entfernen. |
|
Back to top |
|
|
ManfredB Veteran
Joined: 27 Dec 2007 Posts: 1789
|
Posted: Fri Dec 13, 2019 6:29 pm Post subject: |
|
|
Das Entfernen des alten kernels unter
/etc/kernels
/lib/modules
/usr/src
/boot
mache ich schon seit Jahren immer nach emerge --ask --depclean --exclude nano
sofort.
Aber danke, daß du das noch geschrieben hast, denn das lesen sicher noch andere Gentoo-User.
Einen schönen Abend noch und liebe Grüße
Manfred |
|
Back to top |
|
|
franzf Advocate
Joined: 29 Mar 2005 Posts: 4565
|
Posted: Sat Dec 14, 2019 7:52 am Post subject: |
|
|
ManfredB wrote: | mache ich schon seit Jahren immer nach emerge --ask --depclean --exclude nano |
Soweit ich mich erinnere war nano früher fix im @system set, das wurde geändert und jetzt gibt es virtual/editor.
Wenn du einen dort gelisteten editor installiert hast kannst du nano problemlos deinstallieren, dann sparst du dir das exclude. |
|
Back to top |
|
|
forrestfunk81 Guru
Joined: 07 Feb 2006 Posts: 567 Location: münchen.de
|
Posted: Fri Dec 20, 2019 1:06 pm Post subject: |
|
|
Man arbeitet anscheinend an einem distribution kernel for Gentoo. Siehe dieser Blogpost. Aus diesem Projekt sind wohl sys-kernel/vanilla-kernel und sys-kernel/installkernel-gentoo entstanden. Soweit ich das verstanden habe, wird ein vorkonfiguriertes Kernel Paket zur Verfügung gestellt, aber nicht als Binary verteilt, kompilieren muss man den wohl selbst. Das soll wohl ein one size fits all Kernel sein und die Einstiegshürden verringern. Die Kernel Config basiert auf der von Arch.
Die Begründung ist, dass selbst für erfahrene Nutzer das Kernel konfigurieren viel Aufwand ist. Das seh ich aber nicht so. Initial ja, aber sobald eine Maschine mal läuft ist es nach jedem Kernel Update nur ein make oldconfig. Bei den Minor Versionen ändert sich eh so gut wie nie was und bei den Major Versionen liest man halt mal 10 Minuten oder weniger die Beschreibung zu den neuen Configs.
@ManfredB
/lib/modules und /boot wird von emerge --depclean nicht aufgeräumt. Aber ich denke das kann app-admin/eclean-kernel _________________ # cd /pub/
# more beer |
|
Back to top |
|
|
toralf Developer
Joined: 01 Feb 2004 Posts: 3942 Location: Hamburg
|
|
Back to top |
|
|
ManfredB Veteran
Joined: 27 Dec 2007 Posts: 1789
|
Posted: Fri Dec 20, 2019 3:31 pm Post subject: |
|
|
Hallo zusammen,
vielen Dank für die Hinweise auf die neue Idee, vorgefertigte Kernel zu testen.
Das wird die Hürden für neue Gentoo-User deutlich absenken, wenn es einmal kernel gibt,
wie ich sie von ArchLinux kenne.
So schnell, wie dort alles abläuft, wäre es gerade an diesem Punkt für Gentoo ein plus.
Auch wenn Gentoo nach wie vor in der Summe bei der Installation wie bisher bleibt.
Die Distributionen, die auf Gentoo basieren, haben mich in genau dieser Frage neugierig gemacht.
Zwar habe ich in meinem Leben noch nie etwas mit Programmierung zu tun gehabt, es also auch nie
gelernt, aber dennoch interessiert mich diese Entwicklung seit einigen Jahren.
Gerade auf meinem Acer-Notebook habe ich erst lernen müssen, wie ich das dort angelegte WLAN-System im Kernel so konfigurieren muss, daß ich WLAN ohne Probleme nutzen kann. Das Forum hier hat mir dabei sehr geholfen.
Am einfachsten geht es auf meinem PC, da geht es in erster Linie um die Grafik-Karte (Nvidia).
Aber ich glaube auch, daß Leute, die sich bei Gentoo zum erstenmal ans Werk machen,
beim Kernel die größte Hürde vorfinden.
Fazit: eine Lösung für einen bereits fertig konfigurierten Kernel wie bei ArchLinux wäre super.
Gruß
Manfred |
|
Back to top |
|
|
toralf Developer
Joined: 01 Feb 2004 Posts: 3942 Location: Hamburg
|
Posted: Fri Dec 20, 2019 3:40 pm Post subject: |
|
|
ManfredB wrote: | Aber ich glaube auch, daß Leute, die sich bei Gentoo zum erstenmal ans Werk machen,
beim Kernel die größte Hürde vorfinden. | Nun ja, ein , danach das generische SCSI doch von "m" auf "y" gesetzt, flugs gebootet und ein abschließendes Code: | make localmodconfig | bringen es m.E. auch. Danach kann man noch (für einen Server) die Modularisierung ausschalten und fertig. |
|
Back to top |
|
|
ManfredB Veteran
Joined: 27 Dec 2007 Posts: 1789
|
Posted: Fri Dec 20, 2019 3:53 pm Post subject: |
|
|
Hallo toralf,
genau da bin ich eben kein Fachmann, daher auch dafür vielen Dank.
Ich bin zur Zeit dabei herauszufinden, was bei mir immer wieder dazu führt,
daß ich auf dem plasma-desktop plötzlich nichts mehr nutzen kann.
Inzwischen nützt auch die Einrichtung eines neuen Users nichts mehr.
Im Moment läuft auf meinem PC gerade eine Neuinstallation von Gentoo.
Kann es zB sein, daß die Mischung von Original-Paketen und binpkgs, die ich selbst erstellt habe,
zu diesen Blockierungen führen kann?
Sorry, ich will hier keinen Super-Thread aufmachen, daher ist diese Frage hier nicht am richtigen Platz.
Aber was diese offensichtlich einfache Methode der Kernel-Konfiguration angeht,
werde ich einen Test durchführen.
Ich lerne gerne noch dazu.
Gruß
Manfred |
|
Back to top |
|
|
|