Rsnapshot mit externer Festplatte

Rsnapshot scheint für Backups auf Servern gedacht zu sein. Jedenfalls bekommt man ein paar Probleme, wenn der Rechner nicht immer läuft oder gar die Festplatte nicht immer eingeschaltet ist, während es versucht, seine Arbeit zu verrichten. Wenn man z.B. mehrere Cronjobs eingerichtet hat, die täglich, wöchentlich und monatlich Snapshots machen, den Rechner aber beim monatlichen Backup einmal nicht an hat, fällt das monatliche Backup komplett aus.
Dieses Problem lässt sich mit anacron lösen. Anacron führt Jobs eine gewisse Zeit nach dem Systemstart aus.

Allerdings gibt es noch ein weiteres Problem, wenn man seine Backups auf einer externen Festplatte speichern möchte: ist die Festplatte ausgeschaltet, startet Anacron den Job und sieht ihn als ausgeführt an, Rsnapshot macht allerdings nichts (weil man in der config no_create_root aktiviert hat). Das führt im schlimmsten Fall wieder dazu, dass das monatliche Backup ausfällt.

Um das zu verhindern hatte ich ursprünglich für jeden Backup-Job noch einen Warn-Job erstellt, der mir 5min vor dem Backup eine Warnung einblendet, dass ich die Festplatte einschalten sollte. Allerdings passiert es durchaus öfter mal, dass ich genau während dieser 5min nicht auf den Bildschirm gucke. Deshalb habe ich das Problem jetzt richtig™ gelöst und ein kleines Script geschrieben, welches die jeweiligen Snapshots ausführt, wenn der letzte erfolgreiche(!) Snapshot schon mehr als einen Tag, eine Woche oder einen Monat zurück liegt.

Das Skript ist hier auf Github zu finden: https://github.com/Scumpeter/rscron/blob/master/rscron.sh

Wenn das Script als /opt/rscron.sh gespeichert wird (und natürlich executable ist), kann man folgendes in /etc/anacron.conf eintragen:

1    45    rsnapshot.daily    /opt/rscron.sh

Das führt dazu, dass das Skript 45min nach dem Start des Systems (und spätestens täglich) ausgeführt wird.

Es wird vorausgesetzt, dass rsnapshot,  sudo und notify-send installiert und eingerichtet sind. Und dass man einen libnotify-kompatiblen Notification-Daemon auf seinem Desktop laufen hat (KDE, Gnome und XFCE haben so etwas eingebaut).

Advertisements

Android Notifier

Android Notifier ist eine App für Android, die es ermöglicht, über verschiedene Ereignisse (z.B. Anrufe oder SMS) an seinem PC (oder Mac) informiert zu werden. Das ist besonders praktisch, wenn man sein Telefon in einem Raum am Ladekabel hängen hat (was bei meinem Akku-Wunder eigentlich ständig der Fall ist) und in einem anderen Raum am Rechner sitzt.

Zunächst braucht man die App auf seinem Telefon:

Android Notifier im Market

Und dann die dazugehörige Desktop-Anwendung auf seinem Linux– oder Windows-PC bzw. auf seinem Mac.

Diese startet man dann (sowohl die App auf dem Telefon, als auch die Anwendung auf dem Desktop) und geht zunächst in die Settings. Dort ist eigentlich das meiste selbsterklärend. Was man nicht versteht braucht man wahrscheinlich auch nicht ändern.

Man kann auch auswählen, worüber man sich benachrichtigen lassen möchte. Zur Auswahl stehen: Klingeln, SMS, MMS, Batteriestatus, Voicemail, Ping und „Third-party“.

Third-party Apps müssen allerdings schon explizit Android Notifier unterstützen. Bislang sind mir keine bekannt, die das auch machen.

Nachrichten verschlüsseln

Ich würde jedoch empfehlen, die Notifications zu verschlüsseln. Weil sie sonst jeder im Netzwerk mitlesen kann (und zwar in jedem Wlan, in dem man mit seinem Telefon ist). Es ist auch nicht allzu schwer, die Verschlüsselung zu aktivieren.

Im Telefon geht man dazu in den Einstellungen auf „Security“ und macht einen Haken bei „Encrypt notifications“ und tippt danach auf „Passphrase“. Darauf poppt ein Fenster auf, in das man den Schlüssel eintragen kann. Das kann eine beliebige Zeichenkette sein. Man sollte sie sich allerdings merken, weil man sie gleich noch am Computer eintragen muss.

Am Rechner macht man quasi das gleiche: In den Einstellungen einen Haken bei „Decrypt notifications“ machen und bei „Passphrase“ den Schlüssel von eben eintragen.

In den Einstellungen am Telefon kann man jetzt noch „Send test notification“ wählen um das Ganze zu testen.