PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage zum zeitgesteuerten Ausschalten



mrcoffee
02.07.2010, 10:00
Ich benutze mal diesen Thread für meine Frage.
Also ich habe eine DS109 mit neuster FW und habe das geplante Ein- und Ausschalten aktiviert (von 0 Uhr bis 9 Uhr). Gestern habe ich gegen 23 Uhr c.a 400GB von einem MAC auf die DS kopiert. Um Punkt 0 Uhr hat die DS die Verbindung einfach getrennt und sich heruntergefahren. Ist das normal? Kann man nicht irgendwo einstellen das die DS sich erst abschalten soll wenn alle Kopiervorgänge abgeschlossen sind?

Trolli
02.07.2010, 10:03
Das ist ein völlig normales Verhalten. Die DS wird zum geplanten Zeitpunkt ausgeschaltet - egal was gerade läuft.

PS: Ich hab die Frage mal in ein neues Thema verschoben...

mrcoffee
02.07.2010, 10:16
Also gibt es keine Möglichkeit das ausschalten zu verschieben?
Wenn ich dann kurz vor 0 Uhr noch mit den Daten auf der DS arbeiten will, dann muss ich extra ins Admin-Menü und das ausschalten deaktivieren?

Trolli
02.07.2010, 10:20
Mir ist leider keine andere Möglichkeit bekannt.

itari
02.07.2010, 10:26
Also gibt es keine Möglichkeit das ausschalten zu verschieben?
Wenn ich dann kurz vor 0 Uhr noch mit den Daten auf der DS arbeiten will, dann muss ich extra ins Admin-Menü und das ausschalten deaktivieren?

Ich hatte das schon einmal in einem anderen Thread gefragt ... wie soll die DS zwischen Programmen, die ein Ausschalten verhindern sollen und den anderen, wo es egal ist, unterscheiden? Bitte diese Frage ernsthaft prüfen, denn es wäre kein großes Problem, das zeitgesteuerte Hinunterfahren zu modden ... wie gesagt, ich habe keine Ideen, woran man das fest machen könnte ...

Itari

jahlives
02.07.2010, 10:32
Bitte diese Frage ernsthaft prüfen, denn es wäre kein großes Problem, das zeitgesteuerte Hinunterfahren zu modden ... wie gesagt, ich habe keine Ideen, woran man das fest machen könnte ...

z.B.
- an der Gesamtlast des Systems
- an einer Liste definierter Prozesse, die keine Last mehr erzeugen dürfen
- an der Anzahl via smb verbundener Clients
- daran, dass der admin/root noch angemeldet ist
- ...

itari
02.07.2010, 10:53
z.B.
- an der Gesamtlast des Systems
- an einer Liste definierter Prozesse, die keine Last mehr erzeugen dürfen
- an der Anzahl via smb verbundener Clients
- daran, dass der admin/root noch angemeldet ist
- ...


Das zeitgesteuerte Herunterfahren wird durch einen Eintrag in der /etc/crontab vorgenommen. Das Kommando, welches da verwendet wird muss man nun nur ein verbiegen (umbenennen und als Ersatz ein Shell-Skript verwenden). Dann die Regeln festgelegen/prüfen unter denen der Abbruch stattfinden sollen und für das warten, falls noch nicht alle Bedingungen zutreffen, eine Warteschleife durchlaufen lassen ... ist eigentlich recht easy ...

Ich bin gespannt auf einen Shell-Sklript-Lösungsvorschlag, damit wir an einem praktischen Beispiel die Bedingungen durchgehen können, ob man die wirklich gut und stimmig formulieren kann ...

Itari

moexeom
09.07.2010, 10:27
Da mich das Thema auch sehr interessiert, würde ich es gern ein wenig weiter verfolgen: leider habe ich mit Shell-Skripten keine Erfahrung. Das müsste also jemand anders übernehmen...

Da ich aber von Beruf Programmierer bin, habe ich das mal auf einer abstrakteren Ebene modelliert, sodass wir vllt einen Konsens schaffen können, bevor es umgesetzt werden kann.

Bitte schreibt mal eure Gedanken und Ideen dazu, besonders zu den Regeln.

Das Bild anbei wäre der Rahmen für das Skript.

Regeln könnten aus meiner Sicht sein (ohne auf Machbarkeit geprüft zu haben)

- Ist mindestens ein SMB/NFS/FTP Benutzer angemeldet?
- Ist mindestens ein DSM Benutzer angemeldet?
- Läuft mindestens eine Sicherung (damit meine ich alle Arten von Sicherungen)
- Wird Content gestreamt?

Ich denke, damit hätten wir schon einen erheblichen Mehrwert für die Abschaltfunktion.

Würde mich freuen, wenn es den ein oder anderen hier gibt, der sich da mit rein denkt!!

itari
09.07.2010, 11:53
Ich suche auch schon immer danach, die Anschaltunginformationen auslesen zu können. Leider finde ich dazu kein Tool, was mir das ermöglicht, deswegen sind die zeitgesteuerten Lösungen (ich habe auch eine im AdminTool) leider nur sehr umständlich gelöst (über eigene Steuerdateien/Tabellen).

Ansonsten sind die Bedingungen nicht ganz einfach zu überprüfen, ich geht mal der Reihe nach vor:

- SMB-Benutzer kann man checken, aber irgendein PC, welcher noch läuft und eine Share eingetragen hat, auch wenn er sie gar nicht benutzt, würde dann schon hemmen ... ist also nicht immer das, was man vielleicht möchte

- NFS-Benutzer kann man nicht feststellen; man könnte hier eventuell aktive mounts alternativ verwenden, aber ich wüsste jetzt auch nicht, wie man das außer per netstat feststellen könnte (netstat ist allerding bei UDP-Konnections nur sehr vage, weil halt nicht verbindungsorientiert

- FTP-Benutzer könnte man via /var/tmp/ftp_cur_con.log auslesen; müsste man mal prüfen

- aktive DSM-Benutzer stehen in der /tmp/current.users, dass müsste also einfach sein

- Sicherungsläufe müsste man via ps/top prüfen ... ich habe aber keine Ahnung, wie deren Lastprofil aussieht, also ob man erkennen kann, wann eine Sicherung noch aktiv ist. Eventuell kann man etwas über die log-Files machen (/var/log/synobackup.log bzw. /var/log/synonetbkp.log). Wahrscheinlich ist das valide, wenn man Backups mit dem Shutdown anstößt und dann darauf wartet, wann der 'Success'-Eintrag geschrieben wird

- das Streamen von content wird durch eine Reihe von Servern vorgenommen. Wann ein Server 'content' streamt, kann man meist nur über ein 'Last'-Profil von außen feststellen - also dieselbe Problematik wie beim Backup - geht vermutlich nur über ps/top. Man müsste also eine Liste don streamenden Servern zusammenstellen und jeden einzeln verfolgen und in einer Gesamtbetrachtung auswerten - nicht gerade eine einfaches Problem, aber sicherlich machbar

Ich habe auch schon längere Zeit über eine Event-Auswertung nachgedacht. Aber das ist halt auch nur bedingt geeignet, die Gesamtzustand einer DS zu beurteilen (Status: jetzt ist alles ruhig und du kannst den Stecker ziehen)

Ich denke aber, dass man weiter über das Problem nachdenken sollte, denn es wäre schon ein Vorteil, eine Ereignis-abhängige Steuerung zu haben.

Itari

jahlives
09.07.2010, 11:59
Bei aktiven Sicherungen müsste ja der rsync in der Prozessliste auftauchen. Solange der noch "running" ist resp Last erzeugt ist er noch beschäftigt

itari
09.07.2010, 12:01
Bei aktiven Sicherungen müsste ja der rsync in der Prozessliste auftauchen. Solange der noch "running" ist resp Last erzeugt ist er noch beschäftigt

was machst, wenn zusätzlich ein rsync -daemon läuft ???

Itari

jahlives
09.07.2010, 12:23
was machst, wenn zusätzlich ein rsync -daemon läuft ???

Itari
Darauf prüfen, dass man wirklich den Client und nicht den Daemon abgefragt hat

moexeom
12.07.2010, 08:33
Es scheinen offensichtlich ein paar offene Punkte zu existieren. Leider sind meine Erfahrungen auf Linux Systemen zu geriing, um da etwas beisteuern zu können... Imho müsste das Auslesen des zeitgesteuerten Hochfahrens auf jeden Fall funktionieren, sonst macht ein "verzögertes" Ausschalten keinen Sinn. Die Regeln (Events) könnte man dann nach und nach hinzufügen.

Ich werde auch mal offiziell nach einem solchen Feature bei Synology nachfragen.