Verfügbarkeit von members.ping.de

In den letzten Wochen und Monaten lies sich zunehmend beobachten, wie die Uptime bzw. Verfügbarkeit des Members-Rechners durch unvorsichtiges Handeln und/oder Unwissen einiger weniger User mehr oder weniger stetig abnahm.

Ausfälle sollten eigentlich Ausnahmefälle sein, jedoch ist es in letzter Zeit gehäuft vorgekommen, dass der Rechner übers Netz nicht mehr zu erreichen war oder keine Logins mehr zulassen wollte, sodass er dadurch den Mitgliedern nicht mehr zur Verfügung stand, bis sich jemand im Büro um den Rechner "kümmern" (meist in Form eines Reboots) konnte.

Da vermutlich alle Mitglieder und User auf diesem Rechner an einem möglichst reibungsfreien Betrieb interessiert sind, findest Du hier eine kleine Liste der Probleme der letzten Zeit und wie Du sie vermeiden kannst, sodass sich hoffentlich nicht immer die gleichen Fehler wiederholen, sondern es nach wie vor spannend bleibt. ;-)

  • Cronjobs und kurze Aufrufintervalle

    Wenn Du einen Cronjob in sehr kurzen Intervallen (z.B. alle 5 Minuten oder häufiger) laufen läßt, stelle bitte sicher, dass sich nicht mehrere Instanzen "überlappen" können. Auch wenn Du glaubst, dein Intervall sei groß genug, ist es sinnvoll, dass das aufgerufene Programm/Skript prüft, ob eine ältere Instanz bereits läuft, und sich ggfs. selbst beendet. Bedenke dabei bitte, dass Linux/UNIX ein MultiUser/MultiTasking Betriebssystem ist, sodass der Rechner auch mal unerwartet stark belastet sein kann, dein Skript somit länger als üblich läuft und dabei u.U. die Laufzeit die Intervalllänge überschreitet.

  • Cronjobs und Mails

    Produziert einer deiner Cronjobs eine Ausgabe (auf dem "Bildschirm"), so wird der Cron Dämon Dir diese "Bildschirmausgabe" als Mail zustellen.
    Bitte lösche diese Mails regelmäßig oder schalte diesen Mechanismus ab!

    Es ist nicht lange her, da hatte jemand einen Cronjob unter root (dessen Mail nur selten und nur von wenigen Usern mal angeschaut wird) in kurzen Abständen laufen lassen, wobei jeder einzelne Durchgang eine Mail an root verschickte.
    Das Ergebnis waren 160MB Mails, verteilt auf mehr als 30.000 einzelne Exemplare.

    Mail für manche User landet auf der /var Partition, welche fuer das System von relativ großer Bedeutung ist - ist diese voll, funktionieren viele Programme, angebotene Dienste oder Server nicht mehr richtig. Das System liesse sich zwar gegen solche Dinge absichern - wie immer muss der schmale Grad zwischen Sicherheit und Benutzbarkeit begangen werden - jedoch ist es momentan ein Kompromiss mit starker Neigung in Richtung Benutzbarkeit.

  • Cronjobs mit Root-Rechten

    Es ist generell eine gute Idee, Programme nur mit dem Minimum der nötigen Rechte laufen zu lassen.
    Insbesondere bezieht sich das auf Skripte, die Du auf dem Members-Rechner laufen läßt.

    Verhällt sich Dein Skript etwas unerwartet, so kann es als root das System im schlimmsten Fall zerstören, während es mit normalen Rechten vermutlich NICHTS hätte anrichten können, bzw. ihm höchstens Deine eigenen Dateien zum Opfer fielen, jedoch keine System-Dateien oder Daten anderer User.

    Der eigentliche Punkt aber ist, dass insbesondere bei Cronjobs, die unter root laufen, man sich obige Anmerkungen zu Cronjobs zu Herzen nehmen sollte.

    Ein normaler Linux Kern kann 512 Prozesse verwalten, von denen nicht alle von normalen Usern "belegt" werden können - root ist ein kleines Polster von 4 Prozessen vorbehalten. Ist die Prozesstabelle voll, hat root somit noch die Möglichkeit, nach der Ursache zu suchen und diese zu beseitigen.

    Läßt Du jedoch ein Skript mit einem kleinen Fehler als root laufen, oder die Laufzeit überschreitet das Intervall bis zum nächsten Aufruf, dann ist die Prozesstabelle schnell "wirklich" voll, und selbst root wird nichts mehr tun können.