Du bist nicht angemeldet.

#1 04.07.2012 12:34:10

stefanhusmann
Moderator

Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Es steht eine wichtige Änderung an. Das Verzeichnis /lib soll mittelfristig aus Arch Linux verschwinden. Zur Zeit betrifft dies als erste das Paket kmod. Die Aktualisierung auf 9-2, die im [testing]-Repo schon vollzogen ist, nimmt einen Patch zurück, der es erlaubt hat, dass Kernel-Module unter /lib/modules gefunden werden.

Custom-Kernel müssen also, nachdem kmod aktualisiert wurde, und bevor gebootet wird, neu gebaut werden, und zwar so, dass die Module unter /usr/lib/modules gefunden werden. Geschieht dies nicht, bootet das System nicht mehr.

Eine etwas schmutzige Alternative wären ein entsprechender Symlink oder das manuelle Kopieren der Module.

Dies betrifft wie gesagt nur Custom-Kernel. Die Repo-Kernel werden rechtzeitig angepasst.

Genaueres kann auf der arch-dev-public-Mailingliste und zum Teil auch auf arch-general nachgelesen werden.

Offline

#2 06.07.2012 02:06:09

LessWire
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Danke für den Hinweis!

Warum macht man solche Änderungen ?

Die "make" Prozedur des Originalkernels ("make modules_install") legt die Module in "/lib/modules/" ab - das wird ja vermutlich auch künftig so sein.

"Eine etwas schmutzige Alternative wären ein entsprechender Symlink oder das manuelle Kopieren der Module."

Und wie sieht die saubere Alternative aus ? wink

Geht das "KISS" Prinzip (welches ich bislang sehr geschätzt habe) jetzt nach und nach den Bach runter oder gibt es einen triftigen Grund für diese Änderung ?

Was haben Kernelmodule in "/usr/..." zu suchen ?

Beitrag geändert von LessWire (06.07.2012 02:22:48)

Offline

#3 06.07.2012 09:00:43

Creshal
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

>Was haben Kernelmodule in "/usr/..." zu suchen ?
systemd, was sonst?

Offline

#4 06.07.2012 11:31:02

fs4000
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Ganz ruhig! Systemd ist häufig der Auslöser, aber nicht die Ursache.

Wie ihr inzwischen alle wisst, ist das alte Konzept, alle wichtigen Komponenten zum Mounten von /usr direkt in / unterzubringen, kaputt. /usr muss verfügbar sein, sobald init startet. Auf ein und derselben Festplatte sollte man /usr auch nicht mehr ausgliedern, das macht absolut keinen Sinn. Insofern macht es auch keinen Sinn mehr irgendwas in /bin, /sbin oder /lib zu haben. Diese Verzeichnisse werden jetzt nach /usr verschoben, später werden sie wahrscheinlich durch Symlinks auf das entsprechende Ziel in /usr ersetzt.

Offline

#5 06.07.2012 11:54:58

jean-paul
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Hierzu mal ein paar Links.

https://fedoraproject.org/wiki/Features/UsrMove
http://article.gmane.org/gmane.linux.re … vel/155792
http://www.freedesktop.org/wiki/Softwar … heUsrMerge

Insofern macht es auch keinen Sinn mehr irgendwas in /bin, /sbin oder /lib zu haben.

Ich deneke schon, solange noch nicht alle Projekte die neue Stuktur übernommen haben.

... später werden sie wahrscheinlich durch Symlinks auf das entsprechende Ziel in /usr ersetzt.

Das wäre mir definitiv zu spät. Die Links müssen sofort gesetzt werden.
Ohne dies Links würde ich mein System nur äußerst ungern updaten, erst recht wenn viele eigene Pakete im System sind.

Jean-Paul

Offline

#6 06.07.2012 12:01:46

oenone
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

LessWire schrieb:

Und wie sieht die saubere Alternative aus ? wink

so wie dargestellt, gleich nach /usr/lib.

Offline

#7 07.07.2012 03:58:12

LessWire
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

jean-paul schrieb:

... später werden sie wahrscheinlich durch Symlinks auf das entsprechende Ziel in /usr ersetzt.

Das wäre mir definitiv zu spät. Die Links müssen sofort gesetzt werden.

So sehe ich es auch.

Na gut, bleibt ja nichts anderes, als erstmal mit einer entsprechenden Portion Skepsis alles weiter zu "beobachten".

Offline

#8 07.07.2012 12:47:51

fs4000
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Solltet ihr eine Lösung parat haben, wie man das auf einen Schlag bewerkstelligen kann, dann nur her damit. Bevor ihr jetzt aber einfach alles verschiebt und danach einen Symlink anlegen wollt: Das funktioniert nicht! Denn nachdem /lib leer ist, gibts auch kein ld-linux-x86-64.so.2 mehr und kein Programm wird mehr starten.

Offline

#9 07.07.2012 14:54:34

stefanhusmann
Moderator

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Nochmal, bevor hier unnötige Aktivitäten gestartet werden: Normalerweise sollte man gar nichts tun müssen, die Pakete werden entsprechend angepasst sein.

Nur wenn man den Kernel selber baut, muss man aufpassen.

Offline

#10 07.07.2012 17:18:07

fs4000
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Da kommt der endgültige Verschiebung: https://projects.archlinux.org/svntogit … 36382be5e0
Scheint aber problematisch zu sein: https://bugs.archlinux.org/task/30588

Offline

#11 07.07.2012 22:17:47

Astorek
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Falls man Pakete aus dem AUR installiert hat, sollte man dessen installierte Dateien ebenfalls im Auge behalten - z.B. jenes Paket, dass eine cpufreq.service für systemd zur Verfügung stellt, wird aktuell noch nach /lib kopiert (was natürlich auch deswegen nicht so toll ist, weil systemd Symlinks zu diesen Dateien anlegt)...

Offline

#12 09.07.2012 20:16:04

stefanhusmann
Moderator

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Auf der Mailing-Liste arch-dev-public hat Dave eine Mail geschrieben, die ich hier kurz übersetze:

Allan hat glib 2.16-2 nach [testing] geschoben, und damit wird /lib als
Verzeichnis verschwinden und durch einen symbolischen Link ersetzt. Eine Kurzanleitung ...

  • Im einfachsten Fall kann man folgendermaßen aktualisieren:

        pacman -Syu --ignore glibc && pacman -S glibc
  • Da dieser Fall oft nicht anwendbar ist, muss man, falls dies nicht funktioniert und irgendwas kryptisches in der Art "/lib gibt's schon" als Meldung kommt, herausfinden, was in /lib noch vorhanden ist, aber nicht zu glibc gehört. Im allgemeinen wird das das Verzeichnis /lib/modules sein.

     pacman -Qo /lib/* 

    gibt Hinweise, was gefixt oder gelöscht werden muss. Man sollte sich um alles kümmern, das nicht explizit zu glibc gehört und dann die Installation abschließen.

Es sollte nicht nötig sein, dies zu erwähnen, eber dennoch sei gesagt: Nie. --force. benutzen.

(Sorry, Daves letzte Anmerkung im Original ist nicht adäquat übersetzbar).

Allen hat dem zugestimmt, aber noch folgende kongeniale Ergänzungen vorgenommen:

  • Schritt 0: eine root-Shell öffnen, um ggf. wenn etwas schief geht damit weitermachen zu können

  • Schritt 1: Wie oben

     pacman -Qo /lib/* 
  • Schritt 2:

    find /var/lib/pacman/local -name files | xargs grep "^lib/$"

    Das sollte nur glibc zurückgeben. Falls nicht, ist da noch etwas, das man neu bauen oder löschen sollte.

  • pacman -Suy

Ich hoffe, damit klappts bei allen.

Offline

#13 10.07.2012 19:24:24

Dings
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Daves Mail schrieb:

Do. Not. Use. (the) --force. Obi-wan approves of this.

stefanhusmann schrieb:

(Sorry, Daves letzte Anmerkung im Original ist nicht adäquat übersetzbar).

Sorry, das ist jetzt etwas OT, aber ich denke er meint "Obi Wan stimmt dem zu." als garnicht mal so unlustiger Bezug auf '--force' benutzen - man benutzt ja in diesem Zusammenhang quasi die dunkle Seite der Macht, bzW. benutzt die Macht zu 'bösen' Zwecken, das kann ein Jedimeister natürlich nicht billigen und stimmt dementsprechend zu wenn man sich keinesfalls der Macht bedienen soll. /OT

Offline

#14 10.07.2012 22:20:33

stefanhusmann
Moderator

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Weiterhin OT: Da muss ich mich mal als absoluter Nichtkenner der StarWars-Filme outen. Habe nicht einen je angesehen.

Wer ohne Schuld ist, werfe den ersten Stein nach mir.

Offline

#15 11.07.2012 19:42:57

Ovion
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Mir ist immer noch nicht ganz klar, warum lib jetzt verschwinden soll.
Soweit ich das bisher verstanden habe, legt der (originale) Linux-Kernel seine Module in /lib/modules ab. Weswegen genau soll /lib jetzt verschwinden?
Weswegen sollen die entsprechenden Module denn besser in usr aufgehoben sein? Was wird denn üblicherweise in /usr abgelegt (und was wurde üblicherweise in /lib abgelegt)?
/usr hört sich für mich danach an, als liege dort Zeug für die user, aber Kernelmodule liegen doch in der Systemlogik unter dem User, oder?

Ist das tatsächlich nur der Funktionalität von systemd geschuldet?

Offline

#16 11.07.2012 20:17:07

fs4000
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Ovion schrieb:

Ist das tatsächlich nur der Funktionalität von systemd geschuldet?

Dann halt nochmal: Das hat alles überhaupt nichts mit Systemd zu tun!!!

Der ursprüngliche Idee mit /bin, lib und /sbin und ohne /usr zu booten führt zwangsläufig zu Problemen, mit Systemd ebenso wie mit SysVinit. Heutige Systeme haben aber ja sowieso das Initramfs als Early user space, um etwa /usr oder gar das ganze Dateisystem per NFS zu holen oder woher auch immer. Folglich ist die ganze Trennung nun nicht mehr nötig und alles wandert nach /usr. Fedora geht auch noch weiter und schafft selbst /usr/sbin ab, da auch dessen Existenzgrund längst nicht mehr vorhanden ist. Sbin stand mal für static binaries und heute verwendet man es für Befehle, die nur root braucht, wodurch nur Probleme entstehen (Welche Befehle werden auf ewig nur für root interessant sein?).

Offline

#17 11.07.2012 20:22:16

Ovion
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Gibt es denn Pläne, /lib auch im Original-Kernel abzuschaffen? So, wie ich LessWires ersten Post lese, scheint der Original-Linux-Kernel /lib noch vorauszusetzen.

Wie verlief denn der ursprüngliche Bootprozess und wie soll er jetzt verlaufen?

Offline

#18 11.07.2012 20:34:16

fs4000
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Der Kernel Source installiert die Module nach INSTALL_MOD_PATH, was per Default / ist, aber problemlos auf /usr geändert werden kann.

Es war früher eben erlaubt ohne /usr den Init-Prozess zu starten, jetzt muss /usr hier bereits gemountet sein, was bei uns mkinitcpio übernehmen kann. Ohne wirklichen Grund /usr nicht direkt auf / zu haben, kann ich sowieso niemandem empfehlen eine extra /usr Partition anzulegen. Übrigens am meisten problematisch ist Udev, weil es schlicht unvorhersehbar ist, welche Befehle das bereits ausführen will, bevor /usr gemountet ist. Schlägt der Aufruf fehl, wird er auch nach dem Mounten nicht wiederholt, was dann zu unerklärlichen Abweichungen im Systemverhalten führt.

Offline

#19 11.07.2012 20:58:16

Ovion
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Nehmen wir für einen Moment mal an, ich wüsste nicht so viel über den Bootprozess im Detail. wink
Also, beim Starten des Rechners wird vom Bootloader der Init-Prozess aufgerufen, der als erstes den Kernel aufruft? Ist das so korrekt?
Und wie geht's dann weiter? Und wo liegen die einzelnen Dinge?

Offline

#20 11.07.2012 21:06:30

fs4000
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

http://en.wikipedia.org/wiki/Linux_startup_process

Kurz: Firmware lädt den Bootloader welcher Kernel-Image und Initramfs in den Speicher lädt und den Kernel dann startet. Der Kernel initialisiert die grundlegenden Hardwarebausteine und führt dann /init vom Initramfs aus, welches dafür sorgt, dass das Dateisystem gemountet wird (noch mehr Hardware-Initialisierung, evtl. Netzwerk, etc.). Anschließend wird in das root-Dateisystem gewechselt und dort /sbin/init ausgeführt (also SysVinit oder Systemd oder ...).

Beitrag geändert von fs4000 (11.07.2012 21:07:31)

Offline

#21 12.07.2012 19:09:10

arlite
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Ovion schrieb:

/usr hört sich für mich danach an, als liege dort Zeug für die user…?

Nein, mit User hat das nicht zu tun. Irgendwo hatte ich mal gelesen, daß „usr“ für Unix System Resources steht.

Offline

#22 12.07.2012 21:17:20

Ovion
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

@fs4000
Besten Dank, hatte mich mehr in den Arch-Wikis rumgetrieben, die waren da nicht ganz so ergiebig wie die Wikipedia.

Also liegen bisher die (bzw. einige?) Kernelmodule in /lib, was liegt denn üblicherweise in /lib und /usr/lib? ich hab mir eben mal ein ls in /usr/lib gegönnt, scheint ja schon eine ganze Menge zu sein, u. A. ein Ordner für Thunderbird, viele Dateien, deren Endung ich nicht zuordnen kann (*.so, *.so.1.0, *.so.0.0.0 etc) und interessanterweise u. A. auch ein Ordner für systemd, obwohl ich auf diesem System nie systemd installiert habe...

Offline

#23 13.07.2012 11:34:45

fs4000
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Ich wiederhol mich hier ein bisschen. Die Verzeichnisse waren da, um ohne /usr booten zu können, weil es z.B. im Netzwerk lag. Da musste also alles drin liegen, was evtl. irgendwie benötigt wird, um an /usr ranzukommen.

siehe FHS (3.0 Draft 1):
http://www.linuxbase.org/betaspecs/fhs/fhs/ch03s04.html
http://www.linuxbase.org/betaspecs/fhs/fhs/ch03s09.html
http://www.linuxbase.org/betaspecs/fhs/fhs/ch03s16.html

Da man inzwischen (bzw. schon länger) gar nicht mehr genau sagen kann, was man vor dem /usr Mount braucht, müsste man eigentlich das halbe System nach /bin, /lib und /sbin schieben. Fedora hat sich entschieden, dieses Konzept komplett aufzugeben, was auch sinnvoll ist. Dieses ganze Dateisystemlayout Zeug ist recht historisch und nicht mehr zeitgemäß (siehe auch das /var/run Problem, was jetzt /run ist).

Offline

#24 13.07.2012 12:02:13

Ovion
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

fs4000 schrieb:

Da man inzwischen (bzw. schon länger) gar nicht mehr genau sagen kann, was man vor dem /usr Mount braucht, müsste man eigentlich das halbe System nach /bin, /lib und /sbin schieben.

Das hattest du so noch nicht gesagt (zumindest hatte ich es nicht so verstanden) wink.

Der Plan ist also, alles, was das System zum Arbeiten laden muss in usr (für Unix System Ressources) zu packen und unter / dann zum einen usr, zum anderen home, proc (für Prozesse), boot (für den Bootloader), dev (für Devices) etc zu haben (also alles, was für das System quasi dynamisch ist)?

Offline

#25 13.07.2012 12:07:26

fs4000
Mitglied

Re: Warnung: Anstehende Änderung bei kmod betrifft angepasste Kernel

Ovion schrieb:
fs4000 schrieb:

Da man inzwischen (bzw. schon länger) gar nicht mehr genau sagen kann, was man vor dem /usr Mount braucht, müsste man eigentlich das halbe System nach /bin, /lib und /sbin schieben.

Das hattest du so noch nicht gesagt (zumindest hatte ich es nicht so verstanden) wink.

Das war auch von mir so interpretiert, diesen Vorschlag gab es natürlich nie. Fakt ist, dass Booten ohne /usr kaputt ist: http://freedesktop.org/wiki/Software/sy … -is-broken (nochmal zu Erinnerung: das Problem ist unabhängig von Systemd)

Ovion schrieb:

Der Plan ist also, alles, was das System zum Arbeiten laden muss in usr (für Unix System Ressources) zu packen und unter / dann zum einen usr, zum anderen home, proc (für Prozesse), boot (für den Bootloader), dev (für Devices) etc zu haben (also alles, was für das System quasi dynamisch ist)?

Genau

Offline

Schnellantwort auf dieses Thema

Schreibe deinen Beitrag und versende ihn
Deine Antwort

Fußzeile des Forums