Kann jemand Baustelle/Skripte/Auto SUSPEND checken? Wenn OK, dann bitte ins Wiki verschieben! Ich würde dann in Skripte und pm-utils darauf verlinken.
Archiv/Skripte/Auto_SUSPEND
Ehemalige
Anmeldungsdatum: Beiträge: 2178 Wohnort: Stuttgart |
|
Ehemalige
(Themenstarter)
Anmeldungsdatum: Beiträge: 2178 Wohnort: Stuttgart |
push |
Ehemalige
(Themenstarter)
Anmeldungsdatum: Beiträge: 2178 Wohnort: Stuttgart |
push |
Anmeldungsdatum: Beiträge: 9130 |
Hallo, denke das ist ok so. Habe noch einen Link auf SSH gesetzt und verschoben. Ich bin mir allerdings nicht sicher, ob jeder gleich checkt, wo er die genannten Werte anpassen muss. Habe auch mehr zufällig gesehen, dass man die im Skript selbst anpasst. Vielleicht sollte man das noch erwähnen. Verlinkung übernimmst du? Gruß pippovic |
Ehemalige
(Themenstarter)
Anmeldungsdatum: Beiträge: 2178 Wohnort: Stuttgart |
pippovic schrieb:
THX
DONE
pm-utils → OK. |
Anmeldungsdatum: Beiträge: 9130 |
Hallo, ich habe es mal im Abschnitt System verlinkt. Passt aber auch bei Netzwerk, aber ich will nicht zwei mal verlinken. 😉 Schau mal, ob der Text so in Ordnung geht. Gruß pippovic |
Ehemalige
(Themenstarter)
Anmeldungsdatum: Beiträge: 2178 Wohnort: Stuttgart |
|
Anmeldungsdatum: Beiträge: 1833 |
Ich bin gerade auf diesen Eintrag gestoßen, weil ich was in der Richtung machen will. Ich wundere mich ein wenig, warum das ganze als rc-Skript ausgeführt ist. Eigentlich ist das doch ein Paradebeispiel für einen Cron-Job. Ich würde so wenig wie möglich an den rc-Skripten verändern. |
Ehemalige
(Themenstarter)
Anmeldungsdatum: Beiträge: 2178 Wohnort: Stuttgart |
rennradler schrieb:
Ähhm, eine bequeme Möglichkeit, dieses Skript beim Systemstart auszuführen, ist eben rc.local, oder nicht?
Cron-Jobs laufen zu einem bestimmten Zeitpunkt, oder zu wiederholenden Zeitpunkten. Wir brauchen aber eine Möglichkeit, immer beim Systemstart, und eben möglichst direkt nach dem Start, das Skript auszuführen.
rc.local ist dazu da, nach dem Systemstart bestimmte Sachen laufen zu lassen. Argumente gegen Cron-Job:
|
Anmeldungsdatum: Beiträge: 1833 |
dehru schrieb:
Sicher, aber es ist klug, dort so wenig wie möglich reinzuhängen, da es den Bootprozeß nur aufbläht (der ist ohnehin komplex genug) und mit der Umstellung auf upstart irgendwann migriert werden muß.
Was macht denn dein Script? Es checkt alle 6 Minuten, ob eine ssh-Sitzung aktiv ist. Dann mach halt einen Cron-Job, der alle 6. Minute läuft. Schlimmstenfalls verpaßt Du die ersten 5 Minuten - so what? Dann führt der Rechner halt nicht nach 30 sondern schimmstenfalls nach 35 Minuten runter.
Naja, das dürfte ja wohl die Minderheit sein.
Siehe oben. |
Ehemalige
(Themenstarter)
Anmeldungsdatum: Beiträge: 2178 Wohnort: Stuttgart |
rennradler schrieb:
Ich versuche nicht den Schönheitspreis zu gewinnen. Pragmatische Lösungen, die funktionieren und einfach sind, sind für mich OK.
Das ist es eben. Das Skript wird, so wie es gemacht ist, einmal gestartet und nicht alle 6 Minuten. Es merkt sich ja, wie lange keine SSH-Sitzung mehr aktiv war ... Wenn man einen CRON-Job macht, der alle 6 Minuten läuft, dann musst du die Ergebnisse aus der (vor)letzten Prüfung irgendwo sichern, damit der nächste Lauf in 6 Minuten weiss, was davor war.
Ich glaube, du hast noch nicht ganz verstanden, wie das Skript arbeitet. Das Skript wird einmal gestartet, und nicht alle X Minuten. Da wir aber nicht wissen, wann das System gebootet wird, vergehen im schlimmsten Fall fast 24 Stunden, wenn anacron nicht installiert ist, um überfällige Cron-Jobs zu starten.
Siehe oben 😉 Du kannst gerne eine andere/besser Lösung bauen, die deinen Vorstellungen besser entspricht. |
Anmeldungsdatum: Beiträge: 1833 |
dehru schrieb:
Wenn man einen CRON-Job macht, der alle 6 Minuten läuft, dann musst du die Ergebnisse aus der (vor)letzten Prüfung irgendwo sichern, damit der nächste Lauf in 6 Minuten weiss, was davor war.
Das Ding ist trivial. Ich glaube eher Du hast nicht verstanden, wie man Cron-Jobs schreibt.
Schon mal gehört, daß man Scripte mit Parametern aufrufen kann? Das ist ein Vorteil gegenüber dem rc-Ansatz. Du brauchst nicht im Skript rumfuhrwerken. Du sagt dem Cronjob wie oft er laufen soll und dem Skript die Karenzzeit. |
Ehemalige
(Themenstarter)
Anmeldungsdatum: Beiträge: 2178 Wohnort: Stuttgart |
Keine Lust auf Flamewar. Wenn es dir wichtig ist, dann schrieb mir bitte eine PN. Gruß, Edit: Ich klink mich dann hier aus. |
Anmeldungsdatum: Beiträge: 1833 |
Ich will auch keinen Flamewar. Du hast ja mir unterstellt, daß ich die Funktionsweise Deines Scripts nicht verstehe. Also sei nicht beleidigt, wenn ich den Ball an Dich zurückspiele. Mal unabhängig von unserer Meinungsverschiedenheit über die richtige Startmethode hätte ich folgenden prinzipiellen Verbesserungsvorschlag: Du prüfst, ob noch ssh-Sessions offen sind. Wenn diese Prüfung negativ ausfällt, wartest Du x Sekunden und prüfst erneut. Dabei verläßt Du Dich darauf, daß terminierte Verbindungen im Zustand TIME_WAIT bleiben. Das ist nicht bullet proof, wie die Amis sagen. Ich schlage folgendes vor: 1. Prüfen auf aktive ssh-Sitzungen so wie Du das machst. 2. Wenn die Prüfung 0 ergibt, in /var/log/auth.log nachsehen, wann die letzte Sitzung geschlossen wurde. Da keine aktive Sitzung gibt muß dies der letzte Eintrag in auth.log sein. Als schneller Hack etwa so: LAST_SSH_SESSION_CLOSED=`egrep 'sshd.*session\ closed' auth.log|tail -n 1|cut -b -15` 3. Liegt dieser Zeitpunkt mehr als die Karenzzeit in der Vergangenheit macht man ein Suspend. 4. Liegt dieser Zeitpunkt weniger als die Karenzzeit in der Vegangenheit, legt man sich die Differenz + 1 Sekunde lang schlafen und führt die obige Prüfung erneut aus. Vorteil ist, daß man nicht Gefahr läuft, eine Sitzug zu verpassen, wenn das Prüfintervall zu lang ist. Dieses Skript kann man etweder wie von Dir vorgeschlagen in rc.local einbinden oder per Cron beim Systemstart einmalig starten lassen. Beachten muß man eventuell noch den Fall, daß just vorher ein Logfile-Rotate durchgeführt wurde. Nochwas: was passiert bei Deinem Skript, wenn der Server aufgeweckt wird und dann innerhalb CHECK_INTERVALL keine ssh-Verbindung aufgebaut wird? |
Ehemalige
Anmeldungsdatum: Beiträge: 2007 |
Ist der Artikel / das Script noch aktuell? |