Probleme mit Bonding mode=4 (802.3ad)
Hallo, ich habe einen Switch, der 802.3ad unterstützt und bereits entsprechend konfiguriert wurde. Mein Server (Suse 10.3 64bit, Samba, KDE3.X)hat zwei Netzwerkkarten und ich möchte gern die Link Aggregation nach 802.3ad benutzen; am besten gleich nach dem Hochfahren. Beide Karten sind konfiguriert. eth0 bekommt beim Start die IP 192.168.1.20 und eth1 die 0.0.0.0 jeweils mit der Subnetz-Maske 255.255.255.0. Zunächst habe ich es mit folgendem Skript probiert: * modprobe bonding * ip addr add 192.168.1.20/24 brd + dev bond0 * ip link set dev bond0 up * ifenslave bond0 eth0 eth1 * # Zeigt den Status an * cat /proc/net/bonding/bond0 Leider wird damit "nur" round robin gestartet. Ein Ping auf den Server und auch der Zugriff klappen damit. Dann habe ich das probiert: * ifconfig eth1 up * modprobe bonding mode=4 miimon=100 * ip addr add 192.168.1.20/24 brd + dev bond0 * ip link set dev bond0 up * ifenslave bond0 eth0 eth1 * # Zeigt den Status an * cat /proc/net/bonding/bond0 Da bekomme ich die Fehlermeldungen: 1. "MII Status: down" sowohl unter der Rubrik "Bonding mode" als auch unter "Slave interface: eth1" (eth1 wurde wohl nicht gestartet. Was aber bewirkt dann der erste Befehl im zweiten Listing?) 2. "LACP rate: slow" Damit kann ich leider nichts anfangen. Das erste Problem habe ich dadurch gelöst, dass ich nochtmals "ifconfig eth1 up" eingebe. Allerdings frage ich micht, warum das nicht sofort klappt. An der "LACP rate: slow" ändert sich nichts. Auch kann ich den Server jetzt nicht mehr anpingen. Was mache ich falsch? Ich habe bereits im Netz gesucht, aber nichts (für mich) brauchbares gefunden. Danke für Eure Hinweise Alex -- Ist Ihr Browser Vista-kompatibel? Jetzt die neuesten Browser-Versionen downloaden: http://www.gmx.net/de/go/browser -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Alex Winzer wrote:
ich habe einen Switch, der 802.3ad unterstützt und bereits entsprechend konfiguriert wurde. Mein Server (Suse 10.3 64bit, Samba, KDE3.X)hat zwei Netzwerkkarten und ich möchte gern die Link Aggregation nach 802.3ad benutzen; am besten gleich nach dem Hochfahren. Beide Karten sind konfiguriert. eth0 bekommt beim Start die IP 192.168.1.20 und eth1 die 0.0.0.0 jeweils mit der Subnetz-Maske 255.255.255.0.
Die nachfolgenden Schritte sind quasi zu Fuß; unter SuSE lässt sich das auch automatisieren (schreibe ich weiter unten etwas zu).
Zunächst habe ich es mit folgendem Skript probiert:
* modprobe bonding * ip addr add 192.168.1.20/24 brd + dev bond0 * ip link set dev bond0 up * ifenslave bond0 eth0 eth1 * # Zeigt den Status an * cat /proc/net/bonding/bond0
Leider wird damit "nur" round robin gestartet. Ein Ping auf den Server und auch der Zugriff klappen damit. Dann habe ich das probiert:
Das liegt vor allem daran, dass das Modul nicht mit der Option für Link Aggregation geladen wird. ALso wird die Standard-Variante (Mode 0) verwendet.
* ifconfig eth1 up * modprobe bonding mode=4 miimon=100 * ip addr add 192.168.1.20/24 brd + dev bond0 * ip link set dev bond0 up * ifenslave bond0 eth0 eth1 * # Zeigt den Status an * cat /proc/net/bonding/bond0
Da bekomme ich die Fehlermeldungen: 1. "MII Status: down" sowohl unter der Rubrik "Bonding mode" als auch unter "Slave interface: eth1" (eth1 wurde wohl nicht gestartet. Was aber bewirkt dann der erste Befehl im zweiten Listing?) 2. "LACP rate: slow" Damit kann ich leider nichts anfangen.
Das sieht erst mal soweit richtig aus. Hm. Ich hätte zwar gedacht, das ginge eher mit ifenslave bond0 eth0 eth1 ifconfig bond0 192.168.1.20 netmask 255.255.255.0 up aber letzten Endes sollte das das gleiche tun. Unterstützen Deine Karten das Auslesen aller wichtigen Parameter mittels ethtool? Das ist voraussetzung für das Funktionieren von Link Aggregation. Normaler Weise sollte sich das Problem durch Erstellen der entsprechenden Konfigurationsdateien lösen lassen. Sie liegen unter /etc/sysconfig/network/ und heißen ifcfg-irgendwas. Dabei ist irgendwas bond0 für das Bonding-Interface eth-id-[Hardware-Adresse] für die "echten" Karten Ich gebe hier mal kommentierte Dateien an (Kommentare mit # versehen). Die stammen zwar von einem SLES10, sollten aber unter OSS 10.3 identisch sein. ifcfg-bond0: BONDING_MASTER='yes' BONDING_MODULE_OPTS='mode=802.3ad' # Ist identisch mit mode=4 BONDING_SLAVE0='eth-id-00:08:02:00:f0:08' BONDING_SLAVE1='eth-id-00:08:02:00:f0:09' # Eigentlich klar, die beiden Interfaces zum versklaven BOOTPROTO='static' # In einigen Howtos steht, das Boot-Protokoll solle nicht statisch sondern besser nicht gesetzt sein. # Ist soweit nicht richtig, weil es Anwendungen gibt, die sich dann verheddern BROADCAST='' ETHTOOL_OPTIONS='' IPADDR='192.168.1.11' MTU='' NAME='' NETMASK='255.255.255.0' NETWORK='' REMOTE_IPADDR='' STARTMODE='auto' USERCONTROL='no' # Was nicht belegt ist kann eigentlich auch weggelassen werden. Diese Konfiguration hat mir YaST # bei der Installation gebaut. ifcfg-eth-id-00:08:02:00:f0:08: BOOTPROTO='none' BROADCAST='' ETHTOOL_OPTIONS='' IPADDR='' MTU='' NAME='Compaq NC3134 Fast Ethernet NIC (dual port)' NETMASK='' NETWORK='' REMOTE_IPADDR='' STARTMODE='off' UNIQUE='mY_N.gBruFhIYX46' USERCONTROL='no' _nm_name='bus-pci-0000:04:04.0' # Den Namen, Unique uns _nm_name sind nicht wirklich notwendig. Bevor YaST sinnvolle Konfigurationen # gebaut hat haben wir sie selbst gemacht und diese Werte weggelassen (weil ich zu faul war), und das ging # auch.
Das erste Problem habe ich dadurch gelöst, dass ich nochtmals "ifconfig eth1 up" eingebe. Allerdings frage ich micht, warum das nicht sofort klappt. An der "LACP rate: slow" ändert sich nichts. Auch kann ich den Server jetzt nicht mehr anpingen.
Die LACP Rate gibt an, in welchen Intervallen der Aggregationszustand überprüft wird. Er kann entweder 30 Sekunden oder, wenn ein entsprechender Parameter mitgeliefert wird, 1 Sekunde sein. Ich muss gestehen, dass mir die Gründe für die Wahl im Augenblick nicht einfallen. ...ich hoffe, das hilft ein bißchen... Bis denne, Ortwin
Was mache ich falsch?
Ich habe bereits im Netz gesucht, aber nichts (für mich) brauchbares gefunden.
Danke für Eure Hinweise
Alex
-- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hi Ortwin, Am Mittwoch 12 Dezember 2007 21:40:17 schrieb Ortwin Ebhardt:
Das erste Problem habe ich dadurch gelöst, dass ich nochtmals "ifconfig eth1 up" eingebe. Allerdings frage ich micht, warum das nicht sofort klappt. An der "LACP rate: slow" ändert sich nichts. Auch kann ich den Server jetzt nicht mehr anpingen.
Die LACP Rate gibt an, in welchen Intervallen der Aggregationszustand überprüft wird. Er kann entweder 30 Sekunden oder, wenn ein entsprechender Parameter mitgeliefert wird, 1 Sekunde sein. Ich muss gestehen, dass mir die Gründe für die Wahl im Augenblick nicht einfallen.
vielleicht noch zur Ergänzung: über LACP handeln die Karten mit dem switch die Linkaggregation aus, dh. man muß eigentlich nichts mehr am switch konfigurieren, theoretisch. Praktisch ist LACP meistens auf den einzelnen switchports inaktiv geschaltet, was man als erstes prüfen/ändern sollte. Die switchports trotzdem noch als Aggregated zu konfigurieren dient nicht nur der Übersichtlichkeit sondern macht das Ganze je nach Firmware des switches auch noch schneller bei der Diagnose ausgefallener Ports. Gruss Falk -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
From: "Ortwin Ebhardt"
Hallo,
Alex Winzer wrote:
ich habe einen Switch, der 802.3ad unterstützt und bereits entsprechend konfiguriert wurde. Mein Server (Suse 10.3 64bit, Samba, KDE3.X)hat zwei Netzwerkkarten und ich möchte gern die Link Aggregation nach 802.3ad benutzen; am besten gleich nach dem Hochfahren. Beide Karten sind konfiguriert. eth0 bekommt beim Start die IP 192.168.1.20 und eth1 die 0.0.0.0 jeweils mit der Subnetz-Maske 255.255.255.0.
Die nachfolgenden Schritte sind quasi zu Fuß; unter SuSE lässt sich das auch automatisieren (schreibe ich weiter unten etwas zu).
Zunächst habe ich es mit folgendem Skript probiert:
* modprobe bonding * ip addr add 192.168.1.20/24 brd + dev bond0 * ip link set dev bond0 up * ifenslave bond0 eth0 eth1 * # Zeigt den Status an * cat /proc/net/bonding/bond0
Mit *ip addr add 192.168.1.20 brd 255.255.255.255 dev bond0* klappt es jetzt mit dem anpingen und angepingt werden. Ich gehe davon aus, dass hier das Problem lag. Ich bin mir nicht sicher, aber sollte *... brd 0.0.0.255 ...* nicht auch ausreichend sein, was meint Ihr. Ich konnte es leider noch nicht ausprobieren.
[...]
2. "LACP rate: slow" Damit kann ich leider nichts anfangen.
Das sieht erst mal soweit richtig aus. Hm. Ich hätte zwar gedacht, das ginge eher mit
ifenslave bond0 eth0 eth1 ifconfig bond0 192.168.1.20 netmask 255.255.255.0 up
aber letzten Endes sollte das das gleiche tun. Unterstützen Deine Karten das Auslesen aller wichtigen Parameter mittels ethtool? Das ist voraussetzung für das Funktionieren von Link Aggregation.
Habe ich ausprobiert. Bei mir kommen da immer Fehlermeldungen, wonach eth0 bzw. eth1 belegt seien und nicht versklavt werden könnten.
Normaler Weise sollte sich das Problem durch Erstellen der entsprechenden Konfigurationsdateien lösen lassen. Sie liegen unter /etc/sysconfig/network/ und heißen ifcfg-irgendwas. Dabei ist irgendwas
[...]
Das mit den Konfigurationsdatein hatte ich zuerst probiert. Es funktioniert leider nicht. Ich vermute, dass es daran liegt, dass das Modul *bonding* nicht geladen wird. Ich habe bereits in der Hilfe (ifcfg.template) nachgesehen und nach einer entsprechenden Option gesucht -> nichts gefunden. Wie man das Modul beim Start bereits mitlädt (an das Bauen eines neuen Kernels traue ich mich nicht ran), habe ich nicht herausgefunden und weiß leider auch nicht, wo ich suchen muss. Meine Idee ist jetzt, mein funktionierendes Skript bonding.sh beim Start ausführen zu lassen. Kann mir jemand sagen, wie ich das machen kann, bitte? Gruß und Dank für die Ideen bzw. Hinweise Alex -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Das mit den Konfigurationsdatein hatte ich zuerst probiert. Es funktioniert leider nicht. Ich vermute, dass es daran liegt, dass das Modul *bonding* nicht geladen wird. Ich habe bereits in der Hilfe (ifcfg.template) nachgesehen und nach einer entsprechenden Option gesucht -> nichts gefunden. Wie man das Modul beim Start bereits mitlädt (an das Bauen eines neuen Kernels traue ich mich nicht ran), habe ich nicht herausgefunden und weiß leider auch nicht, wo ich suchen muss.
/etc/sysconfig/kernel Schreib da das Modul mit rein und las nen mkinitrd los. Dann wirds in die initrd genommen und gleich beim booten geladen.
Meine Idee ist jetzt, mein funktionierendes Skript bonding.sh beim Start ausführen zu lassen. Kann mir jemand sagen, wie ich das machen kann, bitte?
Script schreiben und infach in /etc/init.d/boot.local eintragen. Dann sollte es ausgeführt werden. Gruß Daniel -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
From: "Daniel Spannbauer"
[...] Wie man das Modul beim Start bereits mitlädt (an das Bauen eines neuen Kernels traue ich mich nicht ran), habe ich nicht herausgefunden und weiß leider auch nicht, wo ich suchen muss.
/etc/sysconfig/kernel Schreib da das Modul mit rein und las nen mkinitrd los. Dann wirds in die initrd genommen und gleich beim booten geladen.
Danke. Das sieht sehr gut aus. Ich würde es bei INITRD_MODULES mit eintragen. Ich habe aber das Problem, dass ich dem Modul zumindest beim Laden mit modprobe noch sage, in welchem Modus es laufen soll. Mein Skripbefehl sieht so aus: *modprobe bonding mode=4 miimon=100* Trage ich die Optionen einfach mit ein; also so: INITRD_MODULES="... bonding mode=4 miimon=100 " oder muss ich das anders machen?
Meine Idee ist jetzt, mein funktionierendes Skript bonding.sh beim Start ausführen zu lassen. Kann mir jemand sagen, wie ich das machen kann, bitte?
Script schreiben und infach in /etc/init.d/boot.local eintragen. Dann sollte es ausgeführt werden.
Auch hier Danke! Werde ich probieren. Gruß und einen schönen 3. Advent Alex -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Alexander Winzer schrieb:
From: "Daniel Spannbauer"
[...] Wie man das Modul beim Start bereits mitlädt (an das Bauen eines neuen Kernels traue ich mich nicht ran), habe ich nicht herausgefunden und weiß leider auch nicht, wo ich suchen muss.
/etc/sysconfig/kernel Schreib da das Modul mit rein und las nen mkinitrd los. Dann wirds in die initrd genommen und gleich beim booten geladen.
Danke. Das sieht sehr gut aus. Ich würde es bei INITRD_MODULES mit eintragen. Ich habe aber das Problem, dass ich dem Modul zumindest beim Laden mit modprobe noch sage, in welchem Modus es laufen soll. Mein Skripbefehl sieht so aus: *modprobe bonding mode=4 miimon=100*
Trage ich die Optionen einfach mit ein; also so: INITRD_MODULES="... bonding mode=4 miimon=100 "
oder muss ich das anders machen? Probiers aus, sollte gehen. Wenn nicht evtl hilft es wenn du das dem Grub als Boot-Parameter mitgibst.
Gruß Daniel -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
From: "Daniel Spannbauer"
Alexander Winzer schrieb:
From: "Daniel Spannbauer"
[...] Wie man das Modul beim Start bereits mitlädt (an das Bauen eines neuen Kernels traue ich mich nicht ran), habe ich nicht herausgefunden und weiß leider auch nicht, wo ich suchen muss.
/etc/sysconfig/kernel Schreib da das Modul mit rein und las nen mkinitrd los. Dann wirds in die initrd genommen und gleich beim booten geladen.
Danke. Das sieht sehr gut aus. Ich würde es bei INITRD_MODULES mit eintragen. Ich habe aber das Problem, dass ich dem Modul zumindest beim Laden mit modprobe noch sage, in welchem Modus es laufen soll. Mein Skripbefehl sieht so aus: *modprobe bonding mode=4 miimon=100*
Trage ich die Optionen einfach mit ein; also so: INITRD_MODULES="... bonding mode=4 miimon=100 "
oder muss ich das anders machen? Probiers aus, sollte gehen. Wenn nicht evtl hilft es wenn du das dem Grub als Boot-Parameter mitgibst.
Das funktioniert leider nicht; jedenfalls nicht bei mir. Ich habe es jetzt dennoch hinbekommen. Die Lösung wurde ganz zu Anfang von Ortwin mit ifcfg-bond0 etc. präsentiert. Ich bin dahintergekommen, dass es vermutlich an KNetworkManager liegt. Wenn man in Yast die Option auswählt traditionelle Methode mit ifup, dann klappt es über die Konfigurationdatein. Andersherum weigert er sich. Ihr habt mir Weihnachten gerettet. Denn ohne funktionierendes Netz klappt es auch mit Putty von zu Hause aus nicht. Gruß und Dank Alex -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, ich komme nachwievor nicht dahinter, wie ich da Bonding beim Start hinbekomme. Ich habe openSUSE 10.3 64bit mit dem Standard-Kernel. Deshalb lasse ich in der Datei /etc/sysconfig/kernel in der Zeile INITRD_MODULES="... bonding" mit laden. Ich möchte aber den mode=4 haben (802.3ad). Standardmäßig wird mode=0 oder 1 geladen. In der Datei seit der Installation unveränderten Datei /etc/modprobe.conf steht dazu ganz unten, dass man die # für die Optionen des Bonding wegnehmen soll. Das habe ich getan. Am Modus ändert sich aber trotzdem nichts. Wir bringe ich dem Modul die Parameter beim Laden bei? Ich habe bereits im Archiv und in einer bekannten Suchmaschine nachgesehen. Dort haben einige die gleichen Probleme (gehabt) z.B. mit SCSI-Adaptern etc. Eine Lösung konnte ich da für mich aber nicht draus herleiten. Mich nervt es, dass ich das Bonding wegen der Modul-Parameter immer nur von Hand starten kann. Da ich den Server mittels PuTTY öfters mal fernsteuere, besteht auch immer die Gefahr, dass ich mich ausperre, wenn es schief geht. Gruß und Dank, Alex -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Mittwoch, 13. Mai 2009 22:38:01 schrieb Alex Winzer: Hallo Alex,
Hallo,
ich komme nachwievor nicht dahinter, wie ich da Bonding beim Start hinbekomme. Ich habe openSUSE 10.3 64bit mit dem Standard-Kernel. Deshalb lasse ich in der Datei /etc/sysconfig/kernel in der Zeile INITRD_MODULES="... bonding" mit laden. Ich möchte aber den mode=4 haben (802.3ad). Standardmäßig wird mode=0 oder 1 geladen. die initrd wird vom Bootloader geladen. Du musst den Parameter an den Bootloader übergeben, für den grub in der Datei /boot/grub/menu.lst
In der Datei seit der Installation unveränderten Datei /etc/modprobe.conf steht dazu ganz unten, dass man die # für die Optionen des Bonding wegnehmen soll. Das habe ich getan. Am Modus ändert sich aber trotzdem nichts. Die Module in der /etc/modprobe.conf werden erst nach dem booten des Kernels geladen, vor dem Systemstart. Das sollte funktionieren, wenn du bonding wieder aus der initrd entfernst.
Viele Grüße Günter -- Guenter Ohmer Jahnstrasse 24 D 76865 Rohrbach mailto:guenter.ohmer@gmx.de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo Günter, entschuldige die PM. Habe aus versehen nur auf Antworten geklickt! Deshalb nochmal das ganze für die Liste: Danke zunächst für die Hinweise. Allein funktionieren will es leider immer noch nicht.
From: "Günter Ohmer" Hallo Alex,
Am Mittwoch, 13. Mai 2009 22:38:01 schrieb Alex Winzer:
[...] INITRD_MODULES="... bonding" mit laden. Ich möchte aber den mode=4 haben (802.3ad). Standardmäßig wird mode=0 oder 1 geladen.
die initrd wird vom Bootloader geladen. Du musst den Parameter an den Bootloader übergeben, für den grub in der Datei /boot/grub/menu.lst
Wie übergebe ich Parameter für Module an den Bootloader? Ich habe beim Suchen nichts gefunden. Vermutlich bin ich auch nicht schlau genug, um die richtigen Suchbegriffe zu finden. Ich würde mich deshalb über Links oder eben diese Begriffe freuen.
Die Module in der /etc/modprobe.conf werden erst nach dem booten des Kernels geladen, vor dem Systemstart. Das sollte funktionieren, wenn du bonding wieder aus der initrd entfernst.
Ich habe bonding wieder aus der initrd rausgenommen. Wenn ich den Rechner mit unveränderter modprobe.conf starte, zeigt mir lsmod|grep bonding nichts mehr an. Das klappt also. Wenn ich dann aber die Kommentare in der modprobe.conf auskommentiere, wird trotzdem nichts geladen. Die wichtigen Einträge in der Datei sehen jetzt bei mir so aus: ############################ # Aliases - specify your hardware ############################ install bond0 /bin/true install eth0 /bin/true ... # please keep this at the end and add local modifications to modules.conf.local include /etc/modprobe.d include /etc/modprobe.conf.local # Hier gehen die Optionen für das Bonding los... alias bond0 bonding options bond0 mode=802.3ad miimon=100 Das Modul bonding wird aber nicht geladen. Jedenfalls taucht es bei lsmod nicht auf. Viele Grüße, Alex -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo Alex, Am Donnerstag, 14. Mai 2009 11:28:29 schrieb Alex Winzer:
Hallo Günter,
entschuldige die PM. Habe aus versehen nur auf Antworten geklickt! Deshalb nochmal das ganze für die Liste:
Danke zunächst für die Hinweise. Allein funktionieren will es leider immer noch nicht.
From: "Günter Ohmer" Hallo Alex,
Am Mittwoch, 13. Mai 2009 22:38:01 schrieb Alex Winzer:
[...] INITRD_MODULES="... bonding" mit laden. Ich möchte aber den mode=4 haben (802.3ad). Standardmäßig wird mode=0 oder 1 geladen.
die initrd wird vom Bootloader geladen. Du musst den Parameter an den Bootloader übergeben, für den grub in der Datei /boot/grub/menu.lst
Wie übergebe ich Parameter für Module an den Bootloader?
Ich hab das schon mal probiert und ich glaube mich zu erinnern, dass das genau so geht wie bei lilo: modulname.Parameter=Wert. die Zeile in menu.lst müsste demnach folgendermaßen aussehen: kernel ..... bonding.mode=802.3ad bonding.miimon=100 aber schau trotzdem nochmal weiter unten. Ich glaube du hast einen Fehller in der modprobe.conf
Ich habe beim Suchen nichts gefunden. Vermutlich bin ich auch nicht schlau genug, um die richtigen Suchbegriffe zu finden. Ich würde mich deshalb über Links oder eben diese Begriffe freuen.
Die Module in der /etc/modprobe.conf werden erst nach dem booten des Kernels geladen, vor dem Systemstart. Das sollte funktionieren, wenn du bonding wieder aus der initrd entfernst.
Ich habe bonding wieder aus der initrd rausgenommen. Wenn ich den Rechner mit unveränderter modprobe.conf starte, zeigt mir lsmod|grep bonding nichts mehr an. Das klappt also. Wenn ich dann aber die Kommentare in der modprobe.conf auskommentiere, wird trotzdem nichts geladen. Die wichtigen Einträge in der Datei sehen jetzt bei mir so aus:
############################ # Aliases - specify your hardware ############################
install bond0 /bin/true install eth0 /bin/true ...
# please keep this at the end and add local modifications to modules.conf.local include /etc/modprobe.d include /etc/modprobe.conf.local
# Hier gehen die Optionen für das Bonding los... alias bond0 bonding options bond0 mode=802.3ad miimon=100
muss das nicht options bonding mode=802.3ad miimon=100 heißen, du sollst die Parameter an das Modul übergeben, nicht an das device.
Das Modul bonding wird aber nicht geladen. Jedenfalls taucht es bei lsmod nicht auf.
Wenn das nichts hilft, dann hilt ein Eintrag in /etc/init.d/boot.local: modprobe bonding mode=802.3ad miimon=100
Viele Grüße, Alex
Viele Grüße Günter -- Guenter Ohmer Jahnstrasse 24 D 76865 Rohrbach mailto:guenter.ohmer@gmx.de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo Günter,
From: "Günter Ohmer" Hallo Alex,
Am Mittwoch, 13. Mai 2009 22:38:01 schrieb Alex Winzer:
[...] INITRD_MODULES="... bonding" mit laden. Ich möchte aber den mode=4 haben (802.3ad). Standardmäßig wird mode=0 oder 1 geladen.
die initrd wird vom Bootloader geladen. Du musst den Parameter an den Bootloader übergeben, für den grub in der Datei /boot/grub/menu.lst
Wie übergebe ich Parameter für Module an den Bootloader?
Ich hab das schon mal probiert und ich glaube mich zu erinnern, dass das genau so geht wie bei lilo: modulname.Parameter=Wert. die Zeile in menu.lst müsste demnach folgendermaßen aussehen: kernel ..... bonding.mode=802.3ad bonding.miimon=100 aber schau trotzdem nochmal weiter unten. Ich glaube du hast einen Fehller in der modprobe.conf
############################ # Aliases - specify your hardware ############################
install bond0 /bin/true install eth0 /bin/true ...
# please keep this at the end and add local modifications to modules.conf.local include /etc/modprobe.d include /etc/modprobe.conf.local
# Hier gehen die Optionen für das Bonding los... alias bond0 bonding options bond0 mode=802.3ad miimon=100
muss das nicht options bonding mode=802.3ad miimon=100 heißen, du sollst die Parameter an das Modul übergeben, nicht an das device.
Kann sein, dass das falsch ist. Aber es steht je einmal so in der modprobe.conf und in der modprobe.conf~ drin. Da es nicht von mir sondern gemäß Copyright Hinweise von SuSE Linux AG, sollte es also stimmen. Die machen doch bestimmt nicht 2 x denselben Fehler. Ich habe jetzt mehrere Varianten probiert (bond0 vs. bonding; mode=802.3ad vs. mode=4) und es hat nichts gebracht.
Das Modul bonding wird aber nicht geladen. Jedenfalls taucht es bei lsmod nicht auf.
Wenn das nichts hilft, dann hilt ein Eintrag in /etc/init.d/boot.local: modprobe bonding mode=802.3ad miimon=100
Ich bin jetzt kurz davor. Allerdings gibt es eine Sache, die mich verblüfft: Ich habe hier in einer virtuellen Maschine OpenSUSE 11.1 (32bit) am Laufen. Wenn ich dem Gastsystem zwei Netzwerkkarten gebe und diese mittels Yast kneble, dann wird wie von Geisterhand automatisch das bonding-Modul mit den richtigen Parametern geladen. Und das nicht erst nach einem Neustart, sondern sofort nach dem Klicken auf OK in Yast. Ich habe jetzt schon mehrere Dateien durchsucht, wo bzw. wie das gemacht wird, bin aber nicht fündig geworden. In /var/log/boot.msg habe ich gesehen, in welcher Reihenfolge das beim Systemstart geladen wird. Kann man auch rausbekommen, von welcher Datei aus das Modul geladen wird kommt? Ich würde gern dieselben Einstellung von 11.1 nach 10.3 übertragen. Ich möchte ungern das Wagnis eingehen, das (bis auf's bonding) prima laufende System von 10.3 auf 11.1 umzustellen und mir damit womöglich andere Probleme einzuhandeln. Gruß und Dank, Alex -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo,
From: "Günter Ohmer" Hallo Alex, Am Donnerstag, 14. Mai 2009 11:28:29 schrieb Alex Winzer:
Hallo Günter,
Danke zunächst für die Hinweise. Allein funktionieren will es leider immer noch nicht.
die initrd wird vom Bootloader geladen. Du musst den Parameter an den Bootloader übergeben, für den grub in der Datei /boot/grub/menu.lst
Wie übergebe ich Parameter für Module an den Bootloader?
Ich hab das schon mal probiert und ich glaube mich zu erinnern, dass das genau so geht wie bei lilo: modulname.Parameter=Wert. die Zeile in menu.lst müsste demnach folgendermaßen aussehen: kernel ..... bonding.mode=802.3ad bonding.miimon=100
Das klappt leider nicht. Ich habe es probiert und es steht auch hier: http://www.techtalkz.com/suse-linux/115058-how-pass-module-params-initrd.htm...
Die Module in der /etc/modprobe.conf werden erst nach dem booten des Kernels
mehr an. Das klappt also. Wenn ich dann aber die Kommentare in der modprobe.conf auskommentiere, wird trotzdem nichts geladen. Die wichtigen Einträge in der Datei sehen jetzt bei mir so aus:
############################ # Aliases - specify your hardware ############################
install bond0 /bin/true install eth0 /bin/true ...
# Hier gehen die Optionen für das Bonding los... alias bond0 bonding options bond0 mode=802.3ad miimon=100
muss das nicht options bonding mode=802.3ad miimon=100 heißen, du sollst die Parameter an das Modul übergeben, nicht an das device.
Das klappt nicht. Siehe dazu meine letzte Mail. Aber ich habe den Bearbeiter der Datei mal per E-Mail kontaktiert. Bis jetzt kam die Mail nicht zurück. Mal sehen, was mir Herr Mantel zu dem Problem schreibt.
Wenn das nichts hilft, dann hilt ein Eintrag in /etc/init.d/boot.local: modprobe bonding mode=802.3ad miimon=100
Ich werde es probieren, wenn ich wieder lokal am Server sitze. Jetzt ist es mir zu riskant. Das System wird produktiv genutzt. Die schimpfen schon alle über die kurzzeitigen Ausfälle. Wenn ich mich dann auch noch selber mit meinem PuTTY aussperre, droht mir Schlimmes. Eine Frage aber trotzdem vorweg: Kannst Du/jemand anderes sagen, ob die /etc/init.d/boot.local verarbeitet wird, bis zur Login-Aufforderung. Bei meinen Tests gestern hatte ich teilweise das Problem, dass die Netzwerkverbindung erst mit dem Login und dem Start von KDE aufgebaut wurde. Gruß, Alex -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo Alex, Am Freitag, 15. Mai 2009 13:24:54 schrieb Alex Winzer:
Hallo,
From: "Günter Ohmer" Hallo Alex,
Am Donnerstag, 14. Mai 2009 11:28:29 schrieb Alex Winzer:
Hallo Günter,
Danke zunächst für die Hinweise. Allein funktionieren will es leider immer noch nicht.
die initrd wird vom Bootloader geladen. Du musst den Parameter an den Bootloader übergeben, für den grub in der Datei /boot/grub/menu.lst
Wie übergebe ich Parameter für Module an den Bootloader?
Ich hab das schon mal probiert und ich glaube mich zu erinnern, dass das genau so geht wie bei lilo: modulname.Parameter=Wert. die Zeile in menu.lst müsste demnach folgendermaßen aussehen: kernel ..... bonding.mode=802.3ad bonding.miimon=100
Das klappt leider nicht. Ich habe es probiert und es steht auch hier: http://www.techtalkz.com/suse-linux/115058-how-pass-module-params-initrd.ht ml#post468493 https://www.linuxquestions.org/questions/linux-general-1/editing-default-mod... Wie überprüfst du, ob es geklappt hat?
Die Module in der /etc/modprobe.conf werden erst nach dem booten des Kernels
mehr an. Das klappt also. Wenn ich dann aber die Kommentare in der modprobe.conf auskommentiere, wird trotzdem nichts geladen. Die wichtigen Einträge in der Datei sehen jetzt bei mir so aus:
############################ # Aliases - specify your hardware ############################
install bond0 /bin/true install eth0 /bin/true ...
# Hier gehen die Optionen für das Bonding los... alias bond0 bonding options bond0 mode=802.3ad miimon=100
muss das nicht options bonding mode=802.3ad miimon=100 heißen, du sollst die Parameter an das Modul übergeben, nicht an das device.
Das klappt nicht. Siehe dazu meine letzte Mail. Aber ich habe den Bearbeiter der Datei mal per E-Mail kontaktiert. Bis jetzt kam die Mail nicht zurück. Mal sehen, was mir Herr Mantel zu dem Problem schreibt.
Wenn das nichts hilft, dann hilt ein Eintrag in /etc/init.d/boot.local: modprobe bonding mode=802.3ad miimon=100
Ich werde es probieren, wenn ich wieder lokal am Server sitze. Jetzt ist es mir zu riskant. Das System wird produktiv genutzt. Die schimpfen schon alle über die kurzzeitigen Ausfälle. Wenn ich mich dann auch noch selber mit meinem PuTTY aussperre, droht mir Schlimmes. Eine Frage aber trotzdem vorweg: Kannst Du/jemand anderes sagen, ob die /etc/init.d/boot.local verarbeitet wird, bis zur Login-Aufforderung. Bei meinen Tests gestern hatte ich teilweise das Problem, dass die Netzwerkverbindung erst mit dem Login und dem Start von KDE aufgebaut wurde. Ich hab das schon mal gemacht mit einem wlan-Stick, das hat einwandfrei funktioniert. Soviel ich weiß, wir die boot.local vor allen runlevels getartet.
Viele Grüße Günter -- Guenter Ohmer Jahnstrasse 24 D 76865 Rohrbach mailto:guenter.ohmer@gmx.de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
participants (6)
-
Alex Winzer
-
Alexander Winzer
-
Daniel Spannbauer
-
Falk Sauer
-
Günter Ohmer
-
Ortwin Ebhardt