Xen-Kernel compilieren, aber Netzwerk geht nicht
Xen-Kernel compilieren, aber Netzwerk geht nicht
Hallo,
ich habe den Xen-Kernel compiliert, aber wenn ich mit diesem Kernel boote, funktioniert mein Netzwerk nicht. Ich habe folgendes probiert:
Mit make world im Verzeichnis von Xen den Kernel heruntergeladen, mit apt-get install kernel-source ...
Kernel-source heruntergeladen, mit make menuconfig eine Konfigurationsdatei erstellt, und diese Dateil mit make ARCH=xen menuconfig im Verzeichnis linux2.6.8-xen0 von xen eingelesen und anschließend den kernel mit make ARCH=xen compiliert. Anschließend hab ich noch im Verzeichnis dist von xen das install.sh gestartet und grub konfiguriert. [/i]
Der Rechner bootet wunderbar, aber Netzwerk geht halt nicht. Auch der Befehl ifup eth0 scheitert.
Gruß Tom
ich habe den Xen-Kernel compiliert, aber wenn ich mit diesem Kernel boote, funktioniert mein Netzwerk nicht. Ich habe folgendes probiert:
Mit make world im Verzeichnis von Xen den Kernel heruntergeladen, mit apt-get install kernel-source ...
Kernel-source heruntergeladen, mit make menuconfig eine Konfigurationsdatei erstellt, und diese Dateil mit make ARCH=xen menuconfig im Verzeichnis linux2.6.8-xen0 von xen eingelesen und anschließend den kernel mit make ARCH=xen compiliert. Anschließend hab ich noch im Verzeichnis dist von xen das install.sh gestartet und grub konfiguriert. [/i]
Der Rechner bootet wunderbar, aber Netzwerk geht halt nicht. Auch der Befehl ifup eth0 scheitert.
Gruß Tom
Hallo ding280,
ein ähnliches Problem habe ich auch mit der Kompilierung des Xen0-Kernels. Allerdings verwende ich die orginal Kernel-Sourcen von kernel.org (2.6.11), die auch automatisch mit make world im xen-Verzeichnis geladen werden. Die Kompilierung des Kernels funktioniert bai mir soweit auch ok. Nachdem ich dann den Xen-Kernel starte, scheint erst mal auch alles zu funktionieren, denn ein ping auf localhost und den IP-Adressen meiner NICs gehen. Allerdings geht kein einziges Paket nach außen zu anderen IP-Adressen. Als Fehler gibt ping Destination Host Unreachable zurück (IP-Adresse definitiv korrekt und bei einem start mit altem Kernel geht alles).
Eine Lösung für mein Problem habe ich leider auch nach dem xxx-ten mal Kernelkompilieren nicht gefunden. Währe daher auch sehr glücklich über Tipps zu meinem Problem.
Gruß choji
ein ähnliches Problem habe ich auch mit der Kompilierung des Xen0-Kernels. Allerdings verwende ich die orginal Kernel-Sourcen von kernel.org (2.6.11), die auch automatisch mit make world im xen-Verzeichnis geladen werden. Die Kompilierung des Kernels funktioniert bai mir soweit auch ok. Nachdem ich dann den Xen-Kernel starte, scheint erst mal auch alles zu funktionieren, denn ein ping auf localhost und den IP-Adressen meiner NICs gehen. Allerdings geht kein einziges Paket nach außen zu anderen IP-Adressen. Als Fehler gibt ping Destination Host Unreachable zurück (IP-Adresse definitiv korrekt und bei einem start mit altem Kernel geht alles).
Eine Lösung für mein Problem habe ich leider auch nach dem xxx-ten mal Kernelkompilieren nicht gefunden. Währe daher auch sehr glücklich über Tipps zu meinem Problem.
Gruß choji
- Savar
- Beiträge: 7174
- Registriert: 30.07.2004 09:28:58
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Berlin
vieleicht ein routing problem?
Code: Alles auswählen
route -n
- meandtheshell
- Beiträge: 4054
- Registriert: 14.01.2005 17:51:30
das glaube ich - weil es kein problem des kompilierens ist - du musst einstellen mit welcher VM du über welches interface usw. wohin kommst - siehe Xen docu - ist ja auch klar jede VM ist im grunde ein eigener pc - per default sind da halt viele einstellungen gemachtchoji hat geschrieben: Eine Lösung für mein Problem habe ich leider auch nach dem xxx-ten mal Kernelkompilieren nicht gefunden. Währe daher auch sehr glücklich über Tipps zu meinem Problem.
Hallo,
ein ifconfig -a gibt nur das Interface lo aus, ein eth* gibt es gar nicht.
Die Ausgabe von lspci bringt unter anderem:
0000:00:04.0 Ethernet controller: nVidia Corporation nForce2 Ethernet Controller (rev a1)
Ein lsmod:
Module | Size | Used by
nvidia_agp | 6684 | 1
agpgart | 29480 | 1 nvidia_agp
Danke für eure Hilfe.
Gruß Tom
ein ifconfig -a gibt nur das Interface lo aus, ein eth* gibt es gar nicht.
Die Ausgabe von lspci bringt unter anderem:
0000:00:04.0 Ethernet controller: nVidia Corporation nForce2 Ethernet Controller (rev a1)
Ein lsmod:
Module | Size | Used by
nvidia_agp | 6684 | 1
agpgart | 29480 | 1 nvidia_agp
Danke für eure Hilfe.
Gruß Tom
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Hi klinke mich mit ähnlichem Problem mal ein. Xen wird morgen wieder Installiert.
http://www.debianforum.de/forum/viewtop ... hlight=xen
http://www.debianforum.de/forum/viewtop ... hlight=xen
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Also zu meinem Problem nochmal (Netzwerkarte geht nicht zu externen IPs):
Da ich aktuell eigentlich nur am einrichten der Domäne 0 (dem preivilegiertem Xen) bin, dachte ich das hier die realen NICs eingerichtet werden (die somit auch wirklich dort funktionieren sollten), plus eben eine gewisse Anzahl von Bridges, über die die anderen Domänen in Verbindung gebracht werden.
Daher denke ich das es dieser Fehler nun auch nicht bei mir sein kann. Vielleicht irre ich mich natürlich und wäre dann über jede Klärung dankbar.
Btw. Ich habe das ganze auch einmal mit der Live-DemoCD von xen (v.2.05) getestet und da erscheinen in der Domäne 0 ebenso die 2 (komplett funktionierente) Interfaces plus einer Bridge für die weiteren Xens.
Ach und da fällt mir noch etwas ein. Ich hatte ein das Problem bereits einmal mit den selben Auswirkungen bei der Einrichtung eines Vserver-Systems. Lösung damals war ein "älterer" Kernel, der genau zu dem Patch passte.
Allerdings lasse ich in diesem Fall den Kernel vom make-File herrunderladen. Also sollte der normalerweise dafür gedacht sein.
Gruß choji
Ich habe in meinem Fall 2 NICs eingerichtet und beide haben auch jeweils die korrekte Route eingerichtet.Savar hat geschrieben:vieleicht ein routing problem?
Code: Alles auswählen
route -n
Ok mit diesem Hab ich mich jetzt auch noch etwas genauer befasst, aber bin noch nicht so weit dahinter gekommen, dass es funktioniert.meandtheshell hat geschrieben:das glaube ich - weil es kein problem des kompilierens ist - du musst einstellen mit welcher VM du über welches interface usw. wohin kommst - siehe Xen docu - ist ja auch klar jede VM ist im grunde ein eigener pc - per default sind da halt viele einstellungen gemacht
Da ich aktuell eigentlich nur am einrichten der Domäne 0 (dem preivilegiertem Xen) bin, dachte ich das hier die realen NICs eingerichtet werden (die somit auch wirklich dort funktionieren sollten), plus eben eine gewisse Anzahl von Bridges, über die die anderen Domänen in Verbindung gebracht werden.
Daher denke ich das es dieser Fehler nun auch nicht bei mir sein kann. Vielleicht irre ich mich natürlich und wäre dann über jede Klärung dankbar.
Btw. Ich habe das ganze auch einmal mit der Live-DemoCD von xen (v.2.05) getestet und da erscheinen in der Domäne 0 ebenso die 2 (komplett funktionierente) Interfaces plus einer Bridge für die weiteren Xens.
Ach und da fällt mir noch etwas ein. Ich hatte ein das Problem bereits einmal mit den selben Auswirkungen bei der Einrichtung eines Vserver-Systems. Lösung damals war ein "älterer" Kernel, der genau zu dem Patch passte.
Allerdings lasse ich in diesem Fall den Kernel vom make-File herrunderladen. Also sollte der normalerweise dafür gedacht sein.
Gruß choji
Hi ding280,
ich hab mich heute auch schon wieder mal etwas mit meinem Top-Thema Xen befasst und habe vielleicht dein Problem entdeckt.
Du hast geschrieben, dass du mit make menuconfig ARCH=xen konfigurierst und anschließend mit make world kompilierst.
Wie ich heute festgestellt habe, läde make world allerdings auch wieder die default-config der Sourcen. Versuche es doch anstelle von make world mal mit make kbuild.
Gruß choji
ich hab mich heute auch schon wieder mal etwas mit meinem Top-Thema Xen befasst und habe vielleicht dein Problem entdeckt.
Du hast geschrieben, dass du mit make menuconfig ARCH=xen konfigurierst und anschließend mit make world kompilierst.
Wie ich heute festgestellt habe, läde make world allerdings auch wieder die default-config der Sourcen. Versuche es doch anstelle von make world mal mit make kbuild.
Gruß choji
Hallo,
tut mir leid, dass ich erst jetzt antworte, hatte vorher aber keine Zeit.
Ich denke, dass ein make kbuild gar nicht funktioniert kann, da ja hier nur die guest kernel compiliert werden. Eine make world dagegen mach wesentlich mehr, siehe make help.
Was mich aber nach wie vor stört, ist, dass bei mir ledeglich zwei Module geladen werden, das ist doch nicht normal.
Gruß Tom
tut mir leid, dass ich erst jetzt antworte, hatte vorher aber keine Zeit.
Ich denke, dass ein make kbuild gar nicht funktioniert kann, da ja hier nur die guest kernel compiliert werden. Eine make world dagegen mach wesentlich mehr, siehe make help.
Was mich aber nach wie vor stört, ist, dass bei mir ledeglich zwei Module geladen werden, das ist doch nicht normal.
Gruß Tom
Hallo,
ich beschreibe hier einfach nochmal Schritt für Schritt, was ich genau gemacht habe.
1. xen-2.0.6-src.tgz heruntergeladen und ins Verzeichnis /home/user kopiert.
2 mit tar xzf xen-2.0.6-src.tgz xen entpackt. Es gibt jetzt das Verzeichnis /home/user/xen-2.0
3. Im Verzeichnis /home/user/xen-2.0 habe ich make world ausgeführt.
4. Jetzt bin ich ins Verzeichnis /home/user/xen-2.0/linux-2.6.11-xen0 gewechselt und habe dort make ARCH=xen menuconfig ausgeführt.
5. Diese Konfiguartion habe ich ohne irgendwelche Einstellungen zu machen sofort wieder verlassen und die Kernelkonfiguration gespeichert.
6. Nun habe ich den Kernel mit make ARCH=xen compiliert.
7. Die Schritte 4 - 6 habe ich auch für das Verzeichnis /home/user/xen-2.0/linux-2.6.11-xenU gemacht.
8. In /home/user/xen-2.0/dist/ hab ich das install.sh ausgeführt.
9. In /boot/grub/menu.lst habe ich noch den Eintrag
title XEN Linux / Kernel 2.6.11
kernel /boot/xen-2.0.6.gz
module /boot/vmlinuz-2.6.11-xen0 root=/dev/hda1 ro console=tty0
hinzugefügt.
10. Zum Schluss noch einen reboot und natürlich Xen gebootet.
Ab diesem Punkt geht das Netzwerk nicht mehr und lsmod gibt nur 2 Module aus, siehe ein paar Posts vorher.
Ich hoffe, mir kann jetzt jemand helfen.
Gruß Thomas
ich beschreibe hier einfach nochmal Schritt für Schritt, was ich genau gemacht habe.
1. xen-2.0.6-src.tgz heruntergeladen und ins Verzeichnis /home/user kopiert.
2 mit tar xzf xen-2.0.6-src.tgz xen entpackt. Es gibt jetzt das Verzeichnis /home/user/xen-2.0
3. Im Verzeichnis /home/user/xen-2.0 habe ich make world ausgeführt.
4. Jetzt bin ich ins Verzeichnis /home/user/xen-2.0/linux-2.6.11-xen0 gewechselt und habe dort make ARCH=xen menuconfig ausgeführt.
5. Diese Konfiguartion habe ich ohne irgendwelche Einstellungen zu machen sofort wieder verlassen und die Kernelkonfiguration gespeichert.
6. Nun habe ich den Kernel mit make ARCH=xen compiliert.
7. Die Schritte 4 - 6 habe ich auch für das Verzeichnis /home/user/xen-2.0/linux-2.6.11-xenU gemacht.
8. In /home/user/xen-2.0/dist/ hab ich das install.sh ausgeführt.
9. In /boot/grub/menu.lst habe ich noch den Eintrag
title XEN Linux / Kernel 2.6.11
kernel /boot/xen-2.0.6.gz
module /boot/vmlinuz-2.6.11-xen0 root=/dev/hda1 ro console=tty0
hinzugefügt.
10. Zum Schluss noch einen reboot und natürlich Xen gebootet.
Ab diesem Punkt geht das Netzwerk nicht mehr und lsmod gibt nur 2 Module aus, siehe ein paar Posts vorher.
Ich hoffe, mir kann jetzt jemand helfen.
Gruß Thomas
- Savar
- Beiträge: 7174
- Registriert: 30.07.2004 09:28:58
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Berlin
na hast du mal geschaut ob du nicht doch ein wenig in der Konfig bei rumarbeiten musst? ich kenn mich mit XEN nicht aus, aber wahrscheinlich musst du da noch Netzwerktreiber aktivieren?!
Code: Alles auswählen
make ARCH=xen menuconfig
Ich stehe im Moment vor dem gleichen Problem. make ARCH=xen oldconfig übernimmt nicht meine alte Kernelkonfiguration.
Über den Befehl make ARCH=xen menuconfig kann ich leider die fehlenden Nforce Treiber nicht aktivieren, da sie nicht aufgeführt sind. Und überhaupt fehlen da einige Optionen, die in den "normalen" kernel-sourcen aufgeführt sind.
Hat vielleicht jemand schon eine Lösung wie man das machen könnte ?
EDIT:
Habs gefunden,
Man muß einfach unter der Option XEN die Option Privileged Guest Kernel und Backend-Treiber aktivieren, dann stehen für den Xen0 Kernel auch die erforderlichen Treiber bereit.
Über den Befehl make ARCH=xen menuconfig kann ich leider die fehlenden Nforce Treiber nicht aktivieren, da sie nicht aufgeführt sind. Und überhaupt fehlen da einige Optionen, die in den "normalen" kernel-sourcen aufgeführt sind.
Hat vielleicht jemand schon eine Lösung wie man das machen könnte ?
EDIT:
Habs gefunden,
Man muß einfach unter der Option XEN die Option Privileged Guest Kernel und Backend-Treiber aktivieren, dann stehen für den Xen0 Kernel auch die erforderlichen Treiber bereit.