Hallo zusammen,
 
ich habe mal ein paar Versuche mit 7zip gemacht. Folgendes funktioniert:
 
/usr/bin/time -a --format="%C,\t%E real,\t%u user,\%S sys" -o /path/backup.log 7za a -t7z -v5M -pMyPassword /path/backup-file.7z /dir-to-backup
 
Wichtig ist "/usr/bin/time" zu verwenden, da die Shell einen eigenen Time-Befehl hat, der jedoch andere Parameter erwartet. Mit "/usr/bin/time" greift die Shell auf den GNU-Befehl "time" am angegebenen Ort zu.
 
Für Windows wäre der o. a. Befehl ausreichend, da hier mit wenig oder keinen Zugriffsrechten gearbeitet wird. Unter Linux möchte ich die Zugriffsrechte jedoch speichern. Das geht mit folgendem Befehl:
 
tar -cf - directory | 7za a -si -t7z -v5M -pMyPassword /path/backup-file.7z /dir-to-backup
 
Soweit habe ich den Befehl verstanden. ABER:
Frage 1: Was bedeutet der einzelne Strich "-" zwischen "tar -cf" und "directory"?
Normalerweise ist die tar-Syntax "tar -cf achive.tar file1, file2, ... Ich meine mich zu erinnern, dass in der bash der einzelne Strich "-" bedeutet "verwende stdout". Stimmt das? Dann nämlich würde auch der "-si" Switch Sinn ergeben, denn der liest von "stdin". Frage 2: Gilt das nur für die Bash oder gilt das für Linux generell?
 
Zum Hintergrund:
Ich will eine Backuplösung für die Speicherung meiner Backups in der Cloud. Dabei sollen folgende Anforderungen erfüllt werden:
1. Komprimierung der Dateien
2. Verschlüsselung des Archivs
3. Differentielle Backups
4. Übertragbarkeit über schmale Bandbreite (derzeit 500 kb/s Upstream)
5. Backuploesung mit Standard Software Tools
6. Software muss Beta-Status überschritten haben
7. Software muss sich aktiv in der Entwicklung/Wartung befinden
7. Software muss unter Linux und Windows laufen
8. Backup ohne die Notwendigkeit, Daten zwischenspeichern zu müssen
9. Wiederaufsetzen, wenn Datenverbindung unvorhergesehen abreisst
 
Dadurch sind Duplicity und Duplicati leider nicht verwendbar, da Duplicity sich noch im Beta-Status befindet und nicht mehr aktiv weiter entwickelt wird (afaik) und Duplicati hat derzeit kein GUI, da es auf .NET aufgesetzt hat und die Windows Forms durch Windows Presentation Foundation ersetzt wurde und Windows Presentation Foundation in Mono derzeit nur rudimentär implementiert ist. rsync ist prima, kann aber nicht mit verschlüsselten Archiven umgehen.
 
7zip habe ich deshalb in die engere Auswahl gezogen und teste das jetzt. 7z erfüllt alle o. a. Anforderungen. 7z kann differentielle Backups. Ob das auch über eine schmale Internetverbindung in die Cloud funktioniert, muss ich testen. Testen muss ich auch, ob differentielle Backups auf gesplitteten Archiven möglich sind. Hierzu habe ich in Google noch keine Informationen gefunden.
 
Das Weiterlaufen lassen von Prozessen im Raspi hat mit screen und dem oben genannten Befehl nicht funktioniert.
 
screen /usr/bin/time -a --format="%C,\t%E real,\t%u user,\%S sys" -o /path/backup.log 7za a -t7z -v5M -pMyPassword /path/backup-file.7z /dir-to-backup
 
geht leider nicht. Es wird zwar der Prozess mit screen -ls angzeigt, aber re-attachen mit screen -r geht nicht. Hier meldet screen, dass kein Prozess vorhanden ist, der attached werden könnte. In der Prozesstabelle wird mit ps -A auch kein Prozess angezeigt.
 
nohup werde ich noch testen. Mir ist allerdings unklar warum ich "</dev/null" an nohup senden soll.
Frage 3: Was bewirkt "</dev/null" in diesem Kontext?
 
Wenn das alles mal fertig ist, kann ich automatisiert verschlüsselte, differentielle Backups in der Cloud über eine schmale Upstream Verbindung speichern. Dann wären die o. g. Requirements erfüllt, mit Ausnahme von Requirement 9 Wiederaufsetzen nach unterbrochener Verbindung.
 
Viele Grüße
 
Georg
 
PS: Wünschen würde ich mir jedoch folgendes: Ein Dateisystem, in dem einzelne Dateien immer komprimiert und verschlüsselt gespeichert werden. Große Container wie von TrueCrypt finde ich unpraktisch. Wenn der Container einen Fehler hat, sind alle Dateien dahin. Und den über schmale Verbindungen zu übertragen, ist schwierig. Für mich ist es OK, dass auf dem Backup Server die Dateistruktur für einen Angreifer lesbar wäre. Jedenfalls würde es das Backup in die Cloud enorm vereinfachen. Performance sollte in der heutigen Zeit für Kompression/Dekompression sowie Verschlüsselung weniger ein Thema sein, zumal Microsoft mit dem xml-Format für Office-Dateien zeigt, dass standardmäßige Kompression gut funktioniert. Über die Art und Weise der Speicherung des Passwortes im Speicher muesste man noch mal nachdenken. Geht evtl. auch mit Zertifikaten.
 
 
Gesendet: Mittwoch, 04. Juni 2014 um 20:31 Uhr
Von: "Jan Grosser" <[email protected]>
An: [email protected]
Betreff: Re: Fw: Aw: Re: [Trolug] Raspberry Pi: Prozess weiter laufen lassen, wenn ssh geschlossen wird
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hallo Georg,

boah, jetzt habe ich verstanden, was Du machen willst ;-)

Probier mal:

nohup > nohup.log 2> nohup.err </dev/null /usr/bin/time -a
- --format="%C,\t%E real,\t%U user,\t%S sys" -o timelog.txt 7za a -t7z
- -v5M -pMy-Passwd /path/archive.7z /path/directory &

Bei Dir waren zwei kleine Fehler in der 7za-Syntax. Bei mir scheint
das so wie oben zu funktionieren. Viele kleine Zip-Files und alles
schön im Hintergrund ;-)

Ich würde Dir außerdem empfehlen, ein Skript zu schreiben. Dann kannst
Du bspw. auch alle Parameter als Variablen setzen. Das erhöht enorm
die Lesbarkeit und Nachvollziehbarkeit.

Wofür brauchst Du das eigentlich ?!?

Gruß, Jan

Am 04.06.2014 07:34, schrieb [email protected]:
> Hallo zusammen,
>
> insgesamt würde mein Befehl dann so aussehen:
>
> nohup > nohup.log 2> nohup.err </dev/null /usr/bin/time -a
> --format="%C,\t%E real,\t%U user,\t%S sys" -o timelog.txt 7za -a
> -t7z -v5M -pMy-Passwd /path/directory /path/archive.7z &
>
> Korrekt?
>
> Viele Grüße
>
> Georg
>
> *Gesendet:* Mittwoch, 04. Juni 2014 um 07:20 Uhr *Von:*
> [email protected] *An:* [email protected] *Betreff:* Aw: Re: [Trolug]
> Raspberry Pi: Prozess weiter laufen lassen, wenn ssh geschlossen
> wird Hallo Uwe,
>
> danke für die schnelle Antwort. Im Wiki steht:
>
> nohup ./programm > foo.out 2> foo.err < /dev/null &
>
> Soweit habe ich das verstanden. Mir ist allerdings nicht klar warum
> ich hier "< /dev/null" verwenden soll. Was tut das?
>
> Viele Grüße
>
> Georg
>
> *Gesendet:* Mittwoch, 04. Juni 2014 um 06:55 Uhr *Von:* "Uwe
> Ziegenhagen" <[email protected]> *An:* [email protected]
> *Betreff:* Re: [Trolug] Raspberry Pi: Prozess weiter laufen lassen,
> wenn ssh geschlossen wird nohup sollte dies erledigen:
> http://de.wikipedia.org/wiki/Nohup
>
> Uwe
>
> Am 4. Juni 2014 06:23 schrieb <[email protected]>:
>
> Hallo zusammen,
>
> ich habe auf meinem Raspberry Pi einen Prozess gestartet, der ein
> Backup meiner Festplatte im NAS durchführt. Wenn ich die Console
> zum RPI (hier: Putty) schließe, wird auch der Backup Prozess
> geschlossen.
>
> Gibt es eine Möglichkeit, einen gestarteten Prozess auf dem RPI
> weiter laufen zu lassen, auch wenn der Prozess, der ihn gestartet
> hat (hier Putty) beendet wird? Und zwar so, dass ich keinen cron
> Job benötige oder den Prozess in den init-Prozess einbinden muss,
> sondern ihn einfach von der Shell auf dem RPI absetzen kann?
>
> Ich freue mich über Eure Nachrichten.
>
> Viele Grüße
>
> Georg
>
>
> _______________________________________________ Trolug_trolug.de
> mailing list [email protected]
> https://ml01.ispgateway.de/mailman/listinfo/trolug_trolug.de
>
>
>
>
>
> -- Uwe Ziegenhagen <http://www.uweziegenhagen.de>
> _______________________________________________ Trolug_trolug.de
> mailing list [email protected]
> https://ml01.ispgateway.de/mailman/listinfo/trolug_trolug.de
>
>
> _______________________________________________ Trolug_trolug.de
> mailing list [email protected]
> https://ml01.ispgateway.de/mailman/listinfo/trolug_trolug.de
>

- --
/"\
\ / ASCII Ribbon Campaign
X against HTML email & vCards
/ \

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iEYEARECAAYFAlOPZg8ACgkQDvfYEG6rFIb/kgCgkUVB/t5v3ex8hnX42u+8dyvP
xxoAoIobE5QtjJhnTkcwremmAwIsPchm
=KoDO
-----END PGP SIGNATURE-----
_______________________________________________
Trolug_trolug.de mailing list
[email protected]
https://ml01.ispgateway.de/mailman/listinfo/trolug_trolug.de
_______________________________________________
Trolug_trolug.de mailing list
[email protected]
https://ml01.ispgateway.de/mailman/listinfo/trolug_trolug.de

Antwort per Email an