Die Backup-Strategie Teil 13 – Chromleisten #2

Wir hatten im Frühjahr das Problem dass der Server sich auch runter fährt wenn sich jemand mit SSH verbunden hat. Und das Problem wurde gelöst. Und das ist gut so. Allerdings hatte die Lösung einen unschönen Seiteneffekt, nämlich dass autosuspend.sh gnadenlos ins Suspend lief, auch wenn jemand direkt vom Rechner saß. So schlecht war die ursprüngliche Umsetzung dann wohl doch nicht… Aber jetzt sollte auch dieses Thema der Vergangenheit angehören! Jetzt werden nämlich nicht mehr nur die SSH Verbindungen gezählt, sondern zusätzlich die Logins am Rechner selbst. Schaut so aus:

# Read logged users
USERCOUNT=`who | wc -l`;
USERCOUNTSSH=`ps -A x |grep sshd |grep -v grep | wc -l`;
# No Suspend if there are any users logged in
test $USERCOUNT -gt 0 && { logit "some users still connected, auto suspend terminated"; return 1; }
test $USERCOUNTSSH -gt 1 && { logit "some users still ssh connected, auto suspend terminated"; return 1; }

Im Endeffekt wurde die ursprünglichen Zeilen wiederverwendet. Es werden zuerst die Logins am Rechner mit who gezählt, sind es mehr als 0, dann wird nicht runter gefahren. Und dann werden die Instanzen von SSH-Daemon gezählt, sind es mehr als einer, dann ist jemand verbunden. Haha.

[Update] Hmm, wenn man sich die Sache mal genauer betrachtet, dann sollte man die SSH-Überprüfung ja eigentlich gar nicht brauchen. Dass das damals nicht geklappt hat. Komisch.

Bionischer Biber bei 30 Grad

Es gibt so Tage wie heute, da hat die Chefin ganz viel vor. Da darf man ihr nicht in die Quere kommen. Man darf aber auch nicht nicht da sein, weil man bei Bedarf sofort zu Verfügung stehen muss! An solchen Tagen kann man eigentlich nichts machen außer etwas falsches. Irgendwas mit Baustelle ist schlecht, Flucht geht wie gesagt auch nicht, schlafen ist mehr oder weniger eine Kriegserklärung, bleibt irgendwie nur der Schreibtisch unterm Dach – nah genug um jederzeit unterwürfig zur Stelle zu sein, aber gleichzeitig komplett außerhalb ihres Aktionsradius‘.
Zeit für ein System-Update. Ubuntu 18.04 LTS ist ja schon einige Zeit draußen, die Kinderkrankheiten sollten mittlerweile alle gefixt und genug Dokumentation im Netz verfügbar sein. Erst ein kleines Backup anstoßen, dann etwas Platz in /boot schaffen und dann kann es auch schon losgehen. Nach gut einer Stunde ist es vollbracht, schaut aus wie vorher, ist aber jetzt mit Langzeitunterstützung. Bionic Beaver LTS, die CSU unter den debianbasierten Linux-Derivaten.

Die Backup-Strategie Teil 13 – Chromleisten

Es besteht Bedarf an einem dicken Brett. Die Lösung mit dem Standby via GUI ist recht geradlinig und fährt den Rechner ohne Rücksicht auf bestehende SSH-Verbindungen runter, das ist schon nachhaltig. autosuspend.sh ist schnell installiert, hat aber ein ähnliches Defizit, es beachtet nämlich auch keine SSH-Verbindungen, dafür aber Logins – warum auch immer:

Das lässt sich mit übersichtlichen Aufwand schnell ändern: In der Zeile 68 werden die Logins gezählt und später wird dann überprüft ob es mehr als 0 sind. Man kann aber genauso gut die SSH-Logins zählen, muss aber bei der Überprüfung aufpassen dass man die Instanz vom SSH-Server nicht mitzählt:

USERCOUNT=`ps -A x |grep sshd |grep -v grep | wc -l`;
# No Suspend if there are any users logged in
test $USERCOUNT -gt 1 && { logit "some users still ssh connected, auto suspend terminated"; return 1; }

Soweit so gut erst mal. Interessant wäre sicherlich noch die Aktivitäten von Seafile genauer zu betrachten, damit man nicht mitten in einen Up- oder Download platzt, ein autosuspend.sh Seafile-Edition quasi. Morgen dann.

[Update] es gibt ein Update, jetzt aber!

Die Backup-Strategie Teil 12

Es gibt eine Sache die noch nicht passt, ein Haar in der Seafile-Backup-Suppe sozusagen. Und zwar gibt es da die Seafile App, mit der kann man zum einen wirklich bequem auf den Datenbestand zugreifen und ihn sich bei Bedarf auch aufs Handy ziehen. Anders herum kann sie Fotos automatisch auf den Seafile-Server hochladen.
Das passt zu 99 %. Das eine Prozent das stört ist, dass der Abgleich immer nur in eine Richtung geht: Daten runter, Fotos rauf (sogar Alben werden erkannt und hoch geladen). Aber – und genau das ist das Problem – wenn man die Alben am Server verändert, die Fotos z.B. umsortiert, dann werden diese Änderungen nicht an das Handy zurück übertragen und die Stände auf dem Handy und am Server laufen auseinander. Das ist ärgerlich.
Wie kommt man jetzt aus der Nummer raus? Die Lösung ist eigentlich ganz einfach, man deaktiviert den automatischen Foto-Upload und synchronisiert die Fotos anderweitig. Unter der Voraussetzung dass am Ende des Tages wieder alles am Server in Seafile zusammenlaufen soll, landet man automatisch bei der Seafile WebDAV Schnittstelle. Mit der kommen auch Drittanbieter-Apps an den Seafile-Datenbestand ran. Die Aktivierung ist tatsächlich so trivial wie im Wiki beschrieben, man muss tatsächlich nur die Dateien seafdav.conf und seafile.conf und fertig. Als nächstes braucht man noch eine Sync-App fürs Handy, die WebDAV kann, das ist die Wochenendaufgabe.

Die Backup-Strategie Teil 11

Der Server läuft jetzt seit einer Woche ohne zu murren, Zeit für ein erstes Zwischenfazit und das Zwischenfazit ist, dass es nichts zu murren gibt, top! Also fast nichts, zumindest nicht wirklich. Es ist nämlich so dass ich in einem Umfeld Unix-technisch sozialisiert wurde, wo ein Unix- oder Linux-Rechner noch klassisch betrieben wurde, nämlich im Dauerbetrieb. Deshalb läuft auch mein Backupserver im Dauerbetrieb weil ein Server ja jederzeit serven soll.
Jetzt ist es aber so dass ich, im Ansatz zumindest, ein verkappter Öko bin. Deshalb habe ich mir gedacht, man könnte die Betriebszeiten irgendwie beschränken, so Strom sparen und letztendlich was für die Umwelt tun. Dazu gibt es verschiedene Möglichkeiten:

  • Betriebszeiten festlegen: der Server läuft z.B. täglich nur von 5:00 bis 23:00 Uhr. Das ist die Holzhammermethode und so würde jeden Tag 1/4 Energie sparen.
  • Noch besser wäre natürlich wenn der Server nur laufen würde wenn man ihn tatsächlich braucht. Die Idee ist dass man den Server einschaltet wenn man ihn braucht und er sich dann wieder ausschaltet wenn er nicht mehr gebraucht wird. Damit würde man den Stromverbrauch maximal auf ein Minimum reduzieren!


Wie man den Server bei Nicht-Bedarf ausschaltet ist hier beschrieben – ein dickes Brett. Man kann den Standby aber auch einfach in der GUI einschalten. Wenn man dann noch Wake on Lan in Systemd konfiguriert, kann man den Rechner recht leicht übers Netzwerk starten ohne vor Ort zu sein, man braucht dazu nur etherwake. Den Aufruf bindet man noch in den Chat-Bot ein und fertig ist der Lack und man spielt ökologisch wieder in der ersten Liga.
[Update] Für etherwake benötigt man root-Rechte. Damit fhem bzw. der Chat-Bot es ausführen kann, muss man die /etc/sudoers um einen Eintrag erweitern: fhem ALL = NOPASSWD: /usr/sbin/etherwake

Die Backup-Strategie Teil 10

Auf der Soll-Seite haben wir ein Schlafdefizit. Auf der Haben-Seite eine Seafile Installation mit OnlyOffice Integration, synchronisiert mit dem Laptop und dem Handy und alles mit einem Snapshot gesichert. Es macht sich eine gewisse Zufriedenheit breit. Diese OnlyOffice Integration ist der absolute Hammer! Man klickt in der Web-Oberfäche von Seafile auf ein Office-Dokument und hexhex startet eine Office-Applikation im Browser. Ändert man das Dokument wird automatisch eine neue Version angelegt. Geil.

Der Teufel steckt ja bekanntlich im Detail und bei dieser Installation war das das selbst generierte SSL Zertifikat. Man kann zwar konfigurieren, dass das Zertifikat nicht überprüft wird – zumindest von OnlyOffice – aber die Anbindung an Seafile prüft und das war das Problem. Die Lösung war unterm Strich ganz einfach, zumindest mit der Holzhammermethode: Im Logfile von Seafile konnte man sehen wo die Exception geschmissen wurde und dieses Stück Code wurde dann einfach deaktiviert. Fertig. Gerade jetzt wird noch die 50 GB iTunes Bibliothek synchronisiert. Zielgerade.

Die Backup-Strategie Teil 9

Also zusammengeschraubt ist so ein PC ja relativ schnell. Die Lösung ist leise und sie ist schnell weil clever aufgebaut: das Betriebssystem läuft auf einer SSD und die Daten kommen auf eine spezielle NAS Festplatte. Soweit so gut. Jetzt geht es ans Eingemachte und zwar die Software. Von Btrfs hat man in der Vergangenheit viel gehört, irgendwie ziemlich coole Geschichte, muss auf jeden Fall irgendwie mit rein und Docker auch. Ganz wichtig. Allmählich kristallisiert sich heraus wie die Endlösung ausschauen wird:

Fühlt sich an wie Weihnachten im Januar. Endlich mal wieder was mit Linux machen. Sau cool.

Die Backup-Strategie Teil 8


NAS sagt ja erst ma nichts über die Größe und den Preis aus. Alle wollen einen einreden dass man da unbedingt so ein Teil von Synology oder QNAP braucht, am besten mit 2 oder gar 4 Festplatten und dass sich der Haufen Geld dafür definitiv lohnt. Kann man machen, ist bequem, geht aber auch anders!
Die Basis der HHC (Hack-Home-Cloud) steht seit heute. Und sie ist sau schnell, eine HHSC (Hack-Home-Speed-Cloud) wird das! Am Samstag war noch ein Mini-PC die erste Wahl, Sonntag dann ein gebrauchter Business-PC, Montag Vormittag ein QNAP bis dann am Montag Nachmittag die Vernunft gesiegt hat und gleich ein paar PC-Teile geordert wurden. Der Kollege J hat gut beraten und noch ein altes Gehäuse beigesteuert, Alternate innerhalb von 20 Stunden geliefert und nochmal 8 Stunden später steht das Resultat fertig zusammengebaut in der Küche. Ein selbst zusammengebauter PC – ein Gefühl wie im ersten Semester! So, Ubuntu läuft, morgen folgt dann die Installation. Geekig, verdammt geekig.

Die Backup-Strategie Teil 7

Es geht nichts über einen Plan. Freitag Abend wurde der der Asus eee PC gesucht, gefunden, wieder in Betrieb genommen, auf Debian 9 upgedatet und wieder herunter gefahren. Am Samstag wurde er wieder gestartet, hat sich mit CPU-Lüfterfehler gemeldet, auseinander gebaut, gereinigt, wieder zusammen gebaut, gestartet, hat dann komplett gestreikt und wurde schließlich in die ewigen Jagdgründe geschickt. Nach ziemlich genau 9 Jahren ist das ok, passt aber nicht ganz in den Wochenendplan.
Neue Woche – neuer Plan, mal etwas umschauen und für den Preis von einem NAS einen Mini-PC kaufen. 4 oder 8 GB Hauptspeicher und 500 GB Festplatte sollten ja eigentlich reichen. Einmal Ubuntu drauf und Seafile oder NextCloud hinterher (zu detailverliebt darf man bei der Planung auch nicht sein) und fertig ist der Lack. Das ist der Plan, der neue.

Die Backup-Strategie Teil 6

Die Kollegen raten dazu die Daten daheim zu halten. Ist sicherer, sagen sie. Sicher ist sicher. Boa – und das mitten im Cloud-Zeitalter. Hardware daheim, das ist so Anfang 2000. Scheiß Thema, es gibt NASse ohne Ende – alte, neue, große, kleine, gebrauchte, selbst zusammen gebaute, welche ohne Festplatte, welche mit Festplatte, mit 1 Bay, mit 2 Bays, 4 Bays, mit Virtualisierung und ohne, und und und. Man kann natürlich auch einen alten PC verwenden. Naja, über die Auswahl kann man sich jedenfalls nicht beschweren.
[Update] Damit der erste Druck weg ist kommt ein alter Bekannter wieder ins Spiel, nämlich der Asus eee PC. Da lief Seafile ja schon mal drauf, dann kann es das ja auch wieder tun. Das entspannt die Lage enorm.