Guten Tag.
Mein Name ist erst mal Thomas.
Und zwar haben wir bei uns an der Schule mit unserem Informatik Server ein kleines Problem. Also, ich bin erst mal nur Schüler an der besagten Schule. Aber da ich mich ein wenig mit Linux auskenne, hat mich unser Info-Lehrer mal gefragt, ob ich ihm nich mal bei diesem kleinen Problem helfen kann.
O.K. Jetzt zum Problem:
Auf dem Server ist wie gesagt Linux installiert und er ist unter anderem auch dafür zuständig, bei uns an der Schule die ganze E-mail Geschichte abzuwickeln. Tja und nun ist es so, das das Ding andauernd in regelmäßigen Abständen einfriert, inklusive aller Konsolen. Also bedeutet das, das man ihn nur noch durch ein Reset neu starten kann. Das Dateisystem ist ext2 und das macht da auch nich allzulange mit. Mein Lehrer meint, das es irgendwie mit der Speicherverwaltung zusammenhängt, aber er kennt sich mit Linux auch nicht so genau aus und kann daher den Fehler nicht finden. Nun hab ich mir schon überlegt, einfach mal den neuen 2.6er Kernel zu installieren, der soll ja ne komplett überarbietete Speicherverwaltung haben. Und in der Linux-Magazin hab ich was über ein Programm namens Malloc Debugger gelesen, mit dem man wohl solchen Speicher Problemen auf den Grund gehen kann. Eine weitere Möglichkeit wäre ja vieleicht, erst mal ein Script zu schreiben, das den Rechner automatisch nach ner gewissen Zeit neu startet. Allerdings frag ich mich, wie man das bewerkstlligen könnte. Dazu müsste man ja ne Art Coun-Down-Zähler schreiben. Aber geht das überhaupt mit einem Skript? Es müßte ja dann auch immer beim Startprozess mit ausgeführt werden. Und wie kann ich es bewerkstelligen, das der Rechner automatisch neu gestartet wird. Das es mit schutdown -r now geht, weis ich ja, das müßt ich ja dann ins Skript mit reinbasteln. Aber den befehl kann man ja eigentlich nur als root ausführen, soweit ich weis.
Ich werd jetzt erst mal ein bisschen weiter Skripte schreiben üben, vieleicht fällt mir ja noch was ein. ;)
MfG - Thomas
Hallo Thomas Eisbaer,
On Sunday 04 April 2004 18:07, Eisbaer wrote:
Mein Name ist erst mal Thomas.
Auf dem Server ist wie gesagt Linux installiert und er ist unter anderem auch dafür zuständig, bei uns an der Schule die ganze E-mail Geschichte abzuwickeln. Tja und nun ist es so, das das Ding andauernd in regelmäßigen Abständen einfriert, inklusive aller Konsolen. Also bedeutet das, das man ihn nur noch durch ein Reset neu starten kann. Das Dateisystem ist ext2 und das macht da auch nich allzulange mit.
Das ist wahrscheinlich ein Problem mit der Hardware (Speicherriegel, Prozessor, whatever). Das kannst Du nicht mit Reboots oder sonstigen SW-Lösungen beheben, da muss an der HW geschraubt werden. Ich weiss, Schulen haben kein Geld, aber um Monty Python zu zitieren: "Der Papagei is dohd!".
Um Deine originale Frage doch noch zu beantworten: man 1 crontab man 5 crontab
Konrad
Eisbaer wrote:
Tja und nun ist es so, das das Ding andauernd in regelmäßigen Abständen einfriert, inklusive aller Konsolen.
Klingt nicht wirklich wie ein 'Fehler in Linux', sondern nach nem Hardware-Problem.
Nur um sicherzugehen: Per Netzwerk ist die Kiste auch nicht mehr zu erreichen?
man ihn nur noch durch ein Reset neu starten kann. Das Dateisystem ist ext2 und das macht da auch nich allzulange mit.
Spricht irgendwas gegen ext3? Ext3 - macht das Leben leichter.
Mein Lehrer meint, das es irgendwie mit der Speicherverwaltung zusammenhängt, aber er kennt sich mit Linux auch nicht so genau aus
Moment. Diagnostizieren, dass es ein Fehler in der nicht ganz einfachen Speicherverwaltung des Linux-Kernels ist, ohne überhaupt Linux ernsthaft zu kennen? Das ist wirklich eine Leistung.
Eine weitere Möglichkeit wäre ja vieleicht, erst mal ein Script zu schreiben, das den Rechner automatisch nach ner gewissen Zeit neu startet. Allerdings frag ich mich, wie man das bewerkstlligen könnte.
Simpelste Lösung: Folgendes in ein passendes Init-Skript reinschreiben:
(sleep $x ; reboot) &
$x dabei durch eine passende Anzahl von Sekunden ersetzen, die er nach jedem Start warten soll, bis er sich wiederum neu startet. Allerdings wird kranke Hardware davon auch nicht gesünder ;-)
mfg, Fabian
Klingt nicht wirklich wie ein 'Fehler in Linux', sondern nach nem Hardware-Problem.
Naja, im Grunde genommen sind unsere Computer ja ziemlich neu, sponsoret by Telekom. ;) Ob das nun gut oder schlecht ist, darüber erlaub ich mir mal kein Urteil zu fällen.
Nur um sicherzugehen: Per Netzwerk ist die Kiste auch nicht mehr zu erreichen?
Der Server managt unser Netzwerk. Ist irgendwie mit WinNT kombiniert, aber genaueres weis ich da auch nicht.
man ihn nur noch durch ein Reset neu starten kann. Das Dateisystem ist ext2 und das macht da auch nich allzulange mit.
Spricht irgendwas gegen ext3? Ext3 - macht das Leben leichter.
Hab auf meinem Laptob auch ext3, das ist schon echt besser, aber was nun auf dem Server sein Dasein fristen soll, das ist des Informatik Lehrers Sache. Aber ich glaub ich werd mich besser mal dafür einsetzten, das ers auf ext3 umstellt. Das ist ja nich so viel Aufwand.
Eine weitere Möglichkeit wäre ja vieleicht, erst mal ein Script zu schreiben, das den Rechner automatisch nach ner gewissen Zeit neu startet. Allerdings frag ich mich, wie man das bewerkstlligen könnte.
Simpelste Lösung: Folgendes in ein passendes Init-Skript reinschreiben:
(sleep $x ; reboot) &
$x dabei durch eine passende Anzahl von Sekunden ersetzen, die er nach jedem Start warten soll, bis er sich wiederum neu startet. Allerdings wird kranke Hardware davon auch nicht gesünder ;-)
gibt es da irgend welche Quellen, wo man sich belesen kann? Ich hab zwar ein Buch über Shell Programmierung, aber ich schaff es auch nicht in 2 Wochen Skripte schreiben zu lernen. Gibts da ne Quelle im Internet, die mir jemand empfehlen kann?
MFG - Thomas
Am Sonntag, 4. April 2004 19:33 schrieb Eisbaer: Das automatische Neustarten kannst Du mal ganz schnell vergessen. Wie soll denn die Zuverlässigkeit aussehen? Außerdem ist der Rechner nicht abgestürzt, wenn er noch auf das Script reagiert.
Vielleicht hilft es, eine Knoppix-CD einzuwerfen, F2 zu drücken und das Speichertestprogramm zu starten. Wenn sie schon drinliegt, führe mal nach einem Neustart mit Knoppix auf der Konsole "su" und dann "fsck" aus.
Wir brauchen für weitere Ratschläge eine Auskunft, was genau in besagtem Fall nicht mehr reagiert.
Auch Thomas
Wir brauchen für weitere Ratschläge eine Auskunft, was genau in besagtem Fall nicht mehr reagiert.
Auch Thomas
Ich glaub ich werd meinem Info Lehrer mal die Adresse von der Lug geben, da kann er sich selber mal bei euch melden. Das ist veileicht besser, da er ja in dem Fall der Admin ist. Sonst wird das glaub ich nichts werden.
Das mit dem skript zum Neustarten ist ja eben nur ne Notlösung. ich denk ja auch, das man die Ursache des Problems lösen sollte, anstatt nur an den Folgen rumzubasteln.
Wegen dem Skript, das sollte so funktionieren, das es den Rechner meinetwegen immer nach 30min neu startet, noch bevor er festläuft. So wie ich es nämlich verstanden habe, läuft der Speicher einfach über und der Rechner wird immer langsamer, bis gar nix mehr geht. Und das ganze in immer der selben Zeitspanne.
Also, ihr werdet bestimmt nochmal was von dem Problem hören.
Danke erst mal eure Hilfe. :-)
MfG - Thomas
Eisbaer schrieb:
Wegen dem Skript, das sollte so funktionieren, das es den Rechner meinetwegen immer nach 30min neu startet, noch bevor er festläuft.
Dann hast Du doch nichts mehr von diesem Server. Um nach Ursachen zu suchen, kann man z.B. beobachten, welche Programme wieviel Speicher bzw. CPU-Zeit beanspruchen. Diese Systemlast hat doch einen Grund. Man kann die eventuell nicht benoetigten Dienste abschalten oder eine bessere Version installieren.
Es ist vielleicht keine schlechte Idee, wenn sich der Info-Lehrer mal selbst an diese Mailingliste (oder speziell an Reiner) wendet.
Stefan
.
On 04.04.04 Eisbaer (HalloEisbaer@gmx.net) wrote:
Moin,
Wegen dem Skript, das sollte so funktionieren, das es den Rechner meinetwegen immer nach 30min neu startet, noch bevor er festläuft.
alle 30 min Neustart + 2-3 Min. Reboot -> Downtime \approx 10%. Absolut inakzeptabel. Als Notlösung könnte man erstmal herausfinden, welcher Dienst da Speicher frißt (falls es einer ist) und den neu starten. Das geht auch mittels crontab.
So wie ich es nämlich verstanden habe, läuft der Speicher einfach über und der Rechner wird immer langsamer, bis gar nix mehr geht. Und das ganze in immer der selben Zeitspanne.
RAM läßt sich nur ersetzen, durch ..... RAM. Verrat einfach mal, wieviel die Kiste davon hat und was sie alles tun muß. Dann kann man evntl. abschätzen, ob das ausreichend ist.
H.
On Sun, 04 Apr 2004 19:33:25 +0200, Eisbaer wrote:
Eine weitere Möglichkeit wäre ja vieleicht, erst mal ein Script zu schreiben, das den Rechner automatisch nach ner gewissen Zeit neu startet. Allerdings frag ich mich, wie man das bewerkstlligen könnte.
Simpelste Lösung: Folgendes in ein passendes Init-Skript reinschreiben:
(sleep $x ; reboot) &
$x dabei durch eine passende Anzahl von Sekunden ersetzen, die er nach jedem Start warten soll, bis er sich wiederum neu startet. Allerdings wird kranke Hardware davon auch nicht gesünder ;-)
gibt es da irgend welche Quellen, wo man sich belesen kann?
http://kris.koehntopp.de/artikel/unix/shellprogrammierung/ enthält alles wichtige zu /bin/sh. Ganz unten auf der Seite gibts ein .ps zum Ausdrucken.
Ich hab zwar ein Buch über Shell Programmierung, aber ich schaff es auch nicht in 2 Wochen Skripte schreiben zu lernen.
Das klappt schon.
Bevor ich mir einen automatischen Reboot basteln würde, würde ich mir aller 5 oder 10 Minuten automatisch Mails zusenden lassen, die ein paar Infos darüber liefern, was auf dem Rechner so abgeht. Anfangen würde ich mit
#!/bin/sh /bin/date /bin/ps -auxf echo ---------- /usr/bin/free echo ---------- /bin/netstat -n
... und das in ein File und per "chmod a+x <file>" ausführbar machen und per crontab starten, also "crontab -e" sagen, und da ne Zeile einfügen: 0-59/5 * * * * /path/to/<file>
Vielleicht fällt dir in den Mails irgendwas böses auf. Ich tippe aber auch ganz stark auf kaputte Hardware. Wenn die Kiste recht schnell stirbt und nicht gerade irre viel auf den Platten arbeitet, würde ich die Filesysteme mit der option "sync" (4. Feld in /etc/fstab) mounten um Schaden und Datenverlust möglichst klein zu halten.
Reinhard
Hallo!
Am Sonntag, 4. April 2004 18:07 schrieb Eisbaer:
Auf dem Server ist wie gesagt Linux installiert und er ist unter anderem auch dafür zuständig, bei uns an der Schule die ganze E-mail Geschichte abzuwickeln.
Interessant wäre noch, welche Distribution benutzt wird.
Mein Lehrer meint, das es irgendwie mit der Speicherverwaltung zusammenhängt, aber er kennt sich mit Linux auch nicht so genau aus und kann daher den Fehler nicht finden.
Vielfach hängt es mit dem Proxy-Server Squid zusammen. Ältere Versionen bedienen sich intensiv am Speicher, auch mehr als eigentlich vorgesehen ist. Der Server swappt nur noch und die Load-Werte steigen ins uner- messliche. Das System reagiert nur noch extrem zäh und letztlich gar nicht mehr. Ein reboot hilft dabei vorübergehend, weil der RAM entlastet wird. Die Ursache (squid und RAM-Einstellungen) wird nicht beseitigt.
Nun hab ich mir schon überlegt, einfach mal den neuen 2.6er Kernel zu installieren, der soll ja ne komplett überarbietete Speicherverwaltung haben.
Das geht völlig schief, wenn ISDN verwendet wird. Zudem muss das System dazu auf glibc-2.3 basieren, sonst kommt es erst recht zu Problemen zwischen den Systemaufrufen.
Im Angebot steht, die aktuelle Arktur-Version zu testen. Wenn bereits das derzeitige System ein Arktur ist, fällt der Umstieg relativ leicht.
Gruss Reiner
lug-dd@mailman.schlittermann.de