Kernelupdate zu 2.6.6 --> Fehler beim entpacken

Alles rund um die Systemverwaltung, die Administration und Konfiguration Eures Linuxsystems

Moderator: Moderatoren

Benutzeravatar
pburri
Member
Member
Beiträge: 77
Registriert: 9. Jun 2004, 14:24

Kernelupdate zu 2.6.6 --> Fehler beim entpacken

Beitrag von pburri » 11. Jun 2004, 14:05

Hi erstmals!

Ich will eigentlich ein Kernel update machen... Ich befolge logischerweise die anleitung von Thomas blabla... :D

Ichhabe mir die beiden Files (den neuen kernel und den patch) runtergeladen, als bz2. den kernel entpacken geht... aber laut Thomas muss man so patchen, bzw. das ist ein Teil davon:

Zum eigentlichen Patchen benötigt man das Programm "patch", was sich in einem eigenen RPM auf den CDs bzw. der DVD der Distribution befindet. Da die Patches in der Regel komprimiert sind, sollte man wie folgt vorgehen:
$> cd /usr/src/linux-2.6.x
$> gunzip -c /pfad/zu/patch.gz | patch -p1 --dry-run
bzw.
$> bunzip2 -c /pfad/zu/patch.bz2 | patch -p1 --dry-run

Wenn ich dies mache kommt folgender fehler:

Code: Alles auswählen

can't find file to patch at input line 4
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------------
|diff .Nru a/CREDITS b/CREDITS
|--- a/CREDITS  Sun May   9  19:33:46 2004
|+++ b/CREDITS  Sun May   9  19:33:46 2004
--------------------------------
File to patch
Was ist hier das Problem?
Danke für die antworten!

Werbung:
Gast

Beitrag von Gast » 11. Jun 2004, 14:38

Ich benutzte den Kernel 2.6.6 von Kernel.org ungepatcht und er läuft gut (ist also die Frage ob du unbedingt auf 2.6.7 patchen musst).

Mir scheint, dass der Patch im Verzeichnis der Kernelquellen liegen muss, also in /usr/src/linux-2.6.x. Denn sonst macht ja die Option -p1 keinen Sinn, wenn der Patch sonstwo liegt. Da ich aber noch nie gepatcht habe ist dies nur eine Vermutung.

Benutzeravatar
pburri
Member
Member
Beiträge: 77
Registriert: 9. Jun 2004, 14:24

Beitrag von pburri » 11. Jun 2004, 15:07

Soweit so gut! Eine weitere Frage:

Ich führe den befehl aus, der funtzt auch... nun fragt er:

Code: Alles auswählen

Reversed (or previously applied) patch detected! Assume -R? [n]
Was muss ich da sagn?

Gast

Beitrag von Gast » 11. Jun 2004, 15:28

Es wäre jetzt wirklich interessant, welche Quellen du mit welchem patch patchst (klingt bescheuert). Passen die möglicherweise nicht zusammen?

'man patch' sagt über 'reversed patch (-R)' einiges, ich habe aber das meiste nicht verstanden. Ich denke wenn du mit 'y' antwortest, wird patch versuchen zwischen alter und neuer Version zu unterscheiden und immer versuchen die neue Version zu nehmen. Ob das funktioniert weiss ich nicht.

Benutzeravatar
pburri
Member
Member
Beiträge: 77
Registriert: 9. Jun 2004, 14:24

Beitrag von pburri » 11. Jun 2004, 15:32

grml ^^ is mir zu komisch... immer mit y beantworten ^^ sind net grad wenig dateien ^^ Kannst mir den link geben wo du deine files her hast? (kernel + patch) Wäre dir sehr dankbar!

Gast

Beitrag von Gast » 11. Jun 2004, 16:11

Wie ich bereits sagte:
Ich benutzte den Kernel 2.6.6 von Kernel.org ungepatcht
Also: keine Patches!!

Du kannst den aber auch von ftp.gwdg.de ziehen:

ftp://ftp.gwdg.de/linux/kernel.org/linux/kernel/v2.6

Ich glaube ich weiss jetzt was dein Problem ist, muss aber raten, da du noch immer keine Versionen gepostet hast:

Kann es sein, dass deine Kernelversion die gleiche Nummer hat wie dein Patch? z.B. linux-2.6.6.tar.bz2 und patch-2.6.6.bz2 ?
Dann kann das nicht funktionieren, da der patch aus einem 2.6.5 einen 2.6.6 machen würde, was dein Kernel jedoch schon ist.

Benutzeravatar
pburri
Member
Member
Beiträge: 77
Registriert: 9. Jun 2004, 14:24

Beitrag von pburri » 11. Jun 2004, 16:16

Du hast richtig geraten ^^'

Tut mir leid, bin ein kleiner Linux n00b ^^ Noch nicht solange dabei :D

Aber danke vielmals! :)

Benutzeravatar
pburri
Member
Member
Beiträge: 77
Registriert: 9. Jun 2004, 14:24

Beitrag von pburri » 11. Jun 2004, 16:44

Oh man... Ich glaub ich muss wirklich noch viel lernen ^^

Also:

Hab mir das file mal gesogen... und auch mit

Code: Alles auswählen

rm -f /usr/src/linux
Den Link gelöscht
und mit

Code: Alles auswählen

tar xzf /root/linux-2.6.6.tar.gz
Entpackt...

Eben falls den neuen Link erstellt mit

Code: Alles auswählen

ln -s linux-2.6.6 linux
Ich vermute das war noch nicht alles :oops:

Kannst mir nochmal ein paar Tipps geben? *gg*

Gast

Beitrag von Gast » 11. Jun 2004, 17:20

Warum meinst du das wäre noch nicht alles?

Den Link hättest du noch nicht ändern müssen, macht aber nix.

Wenn du jetzt in /usr/src einen Ordner namens linux-2.6.6 hast, dann ist alles OK und du kannst beginnen.

Ich finde übrigens die Möglichkeit ganz nett, den Kernel in einem separaten Verzeichnis zu kompilieren (BUILD-Directory). Dann kannst du verschiedene Konfigurationen ausprobieren, ohne immer alles gleich zu überspielen. Das ist auch bei Thomas Hertweck beschrieben.
Da kann eigentlich nix schiefgehen, wenn du seiner Anleitung folgst:
config klonen (als user)
anpassen
kompilieren
installieren (als root)

Nicht unwichtig ist allerdings, von welchem System aus du das Update machst. Ist es eine 9.1, sollte alles ohne Vorarbeiten laufen, bei einer 9.0 muss mkinitrd upgedatet werden und eine /etc/modprobe.conf erzeut werden (steht alles im Howto!!!).

Benutzeravatar
pburri
Member
Member
Beiträge: 77
Registriert: 9. Jun 2004, 14:24

Beitrag von pburri » 11. Jun 2004, 19:10

Ok vielen dank :) Ich hoff ich komm weiter :D

Benutzeravatar
pburri
Member
Member
Beiträge: 77
Registriert: 9. Jun 2004, 14:24

Beitrag von pburri » 14. Jun 2004, 08:25

Ist das normal das wenn ich weiter folge und den Kernel klone, er jegliche [NEW]'s mit y, n oder m beantwortet haben will? Dünkt mich, das hatte ich schon einmal! :roll:

Gast

Beitrag von Gast » 14. Jun 2004, 09:10

Das ist normal! Besonders, wenn du von 2.4 auf 2.6 updatest, sind viele Parameter neu hinzugekommen, die natürlich konfiguriert werden wollen.

Meistens ist die default-Einstellung OK. Ich habe einfach immer bestätigt und dann später mit xconfig meine Anpassungen gemacht (ist übersichtlicher).

Benutzeravatar
pburri
Member
Member
Beiträge: 77
Registriert: 9. Jun 2004, 14:24

Beitrag von pburri » 14. Jun 2004, 09:42

Ok, das hab ich jetzt mal! Jetzt komt das maken also compilieren des kernels...

Im fall damit:

Code: Alles auswählen

make 0=/usr/src/linux-2.6.6
Oder lieg ich da falsch? Oo

Gast

Beitrag von Gast » 14. Jun 2004, 09:46

Also so würde ich das nicht machen! Die Option O= sollte schon auf ein anderes Verzeichnis zeigen. So geht es zwar auch, aber dann kannst du die Option auch weglassen, da es die default-Einstellung ist.

Kompiliert wird immer aus dem Quellverzeichnis heraus (also /usr/src/linux-2.6.6) und ohne Option O= auch in dieses Verzeichnis hinein. Mit O= lagerst du die Dateien während des kompilierens in das sogenannte Build-Verzeichnis aus und hast somit die Quellen von kompilierten Kernel immer sauber getrennt.

Benutzeravatar
pburri
Member
Member
Beiträge: 77
Registriert: 9. Jun 2004, 14:24

Beitrag von pburri » 14. Jun 2004, 10:05

ahh :D So ist das... Jetzt versteh ich ^^ Jo, ich werds mal versuchn! Hoffe es geht :)

Benutzeravatar
pburri
Member
Member
Beiträge: 77
Registriert: 9. Jun 2004, 14:24

Beitrag von pburri » 14. Jun 2004, 11:11

Wenn ich fertig bin, werde ich mir eine eigene Gebrauchsanweisung schreiben, könntest du die dann mal durchschaun? Büdde ^^

Gast

Beitrag von Gast » 14. Jun 2004, 11:44

Wenn dir die Anleitung von Thomas Hertweck nicht reicht :wink:

Kannst sie ja hier mal posten. Wenn sie gut ist, dann kann Moenk sie vielleicht in die FAQ aufnehmen.

Benutzeravatar
pburri
Member
Member
Beiträge: 77
Registriert: 9. Jun 2004, 14:24

Beitrag von pburri » 14. Jun 2004, 11:49

Mich dünkt einfach, die von Thomas ist ein bissel zu kompliziert... Meine wird nur eine möglichkeit abdecken, aber sie funktioniert ^^ und man muss net immer den kollegen fragen wie das geht.... :D nix @ thomasens HowTo! Da is viel arbeit dahinter... nur mir a bissel zu viel gschrieben... bin net so der roman leser... ;)

Benutzeravatar
pburri
Member
Member
Beiträge: 77
Registriert: 9. Jun 2004, 14:24

Beitrag von pburri » 14. Jun 2004, 12:01

Also, ich habe den Kernel installiert und die boot datei bearbeitet...
Wenn ich Linux_neu starte, bleibt er bei dieser Meldung stecken:

Code: Alles auswählen

Bad EIP value.
<0>Kernel Panic: attempt to kill init

Gast

Beitrag von Gast » 14. Jun 2004, 12:30

Die Meldung kannte ich noch nicht. Das einzig Hilfreiche, dass beim googeln rauskommt ist:

http://www.linuxcompatible.org/thread1472-1.html

Hast du viel am Kernel verändert? Sind alle notwendigen Programme upgedated? Hast du die initrd erstellt, die System.map kopiert?

Viele Fragen, viele Fehlermöglichkeiten. Aber das bringt eine neuer Kernel eben mit sich. Ich musste 5x neu kompilieren, bis meine Festplatte richtig erkannt wurde. Als Newbie hilft eben nur Trial&Error oder viel lesen (aber das liegt dir ja nicht :wink: und mir auch nicht :D )

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast