![](https://seccdn.libravatar.org/avatar/1257c9aec48b5b65559ddea16efa2301.jpg?s=120&d=mm&r=g)
Am Tuesday 16 September 2008 15:39:41 schrieb Michael Woyde:
Ich habe auf einem Server die 64-bit-Variante von opensuse 11 installiert. Soweit funktionierte auch alles, bis ich mich von einem anderen Rechner per ssh anmeldete und auf dem Server mittels yast die Netzwerkkartenkonfiguration zu ändern. yast stürzte ab. Ich habe die entsprechenden Prozesse (yast und ssh-Sitzung) gekillt. Seitdem meldet yast bei jedem Aufruf eines 'Untermoduls' (also noch nicht beim Start von yast selbst): cat: write error: Broken pipe
Änderungen, die ich im yast vornehme, werden augenscheinlich ausgeführt - mit Ausnahme von Netzwerkeinstallungen. Ich muss nach Beendigung des yast immer noch ein ifup eth0 hinterherschießen, damit die Netzwerkkarte wieder erwacht.
Der Fehler ist im Übrigen reproduzierbar: Wenn ich mich von einem anderen Rechner per ssh anmelde, dann mit yast die Netzwerkeinstellungen ändere (andere Module wie Online-Update usw. funktionieren), stürzt yast ab und reißt die ssh-Verbindung mit sich in den Orkus.
Die einschlägigen Logdateien ergeben keinerlei Hinweise.
Michael
Hallo Michael, wenn yast die Netzwerkverbindung kappt, auf der Du mit ssh angemeldet bist, ist der Ast weg, auf dem Du sitzt. Die Netzwerkschnittstelle, über die Du gerade verbunden bist, kann nun mal nicht neu konfiguriert werden, ohne die Verbindung zu verlieren. Jede andere Netzwerkschnittstelle kann natürlich neu konfiguriert werden, aber vermutlich nicht mit yast; ich glaube yast macht da ein 'rcnetwork restart' und davon sind alle Netzwerkschnittstellen betroffen. Alternativ kann man mit einem Editor die entsprechende Konfigurationsdatei der Schnittstelle in /etc/sysconfig/network editieren und mit ifdown <schnittstelle> und ifup <schnittstelle> neu starten. Bei der Schnittstelle aber, über die Du verbunden ist, funktioniert so aber nur der ifdown, weil danach die Verbindung weg ist. Abhilfe könnte da ein kleines Script schaffen, dass man mit 'nohup script <schnittstelle> &' startet. Durch das nohup wird das Skript bei der Ausführung vom login-tty (Login-Terminal, hier ein Pseudo-Terminal) getrennt und nicht durch das NOHUP-Signal beendet. Wenn die Verbindung wegbricht (durch das ifdown ausgelöst), erzeugt das Pseudo-Terminal, das zu Deinem Login gehört, für alle mit ihm verbundenen Prozesse ein NOHUP-Signal. Das dient dazu, dass keine toten Prozesse übrig bleiben, wenn so etwas geschieht. Z.Bsp. könnte dieses kleine Skript so aussehen (einfach gehalten) ------- #!/bin/sh ifdown $1 ifup $1 ------- Aufgrufen wird es dann z. Bsp. durch nohup script eth0 & Die Verbindung fliegt Dir trotzdem weg, aber die Schnittstelle wird neu gestartet. Tschö, Emil -- Registered Linux User since 19940320 -------------------------------------------------- Emil Stephan, Marktplatz 39, 53773 Hennef, Germany voice: +49-2242-84438 Accelerate Windows: 9.81 m/sec^2 would be adequate -- 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