[Gelöst] Ordner in regelmäßigen Abständen sichern.

Du suchst ein Programm für einen bestimmten Zweck?
willy4711

Re: Ordner in regelmäßigen Abständen sichern.

Beitrag von willy4711 » 06.03.2019 15:20:23

@ottonormal:

Na ist denn der Cron Befehl anders, als das Skript?
Das Verstehe ich nun wieder nicht.

Dieses Skript irgendwo speichern und ausführbar machen.
Dann entweder einen Starter erstellen oder das Skript in den Autostart packen.

Den Starter (bild) habe ich noch etwas "verfeinert"
Bild
Bild


Debiankdocker Packt das Skript in den Systemtray (Benachrichtigungs Fläche)
Debianxterm ,damit ich das Skript jederzeit beenden kann, und es nicht weiter stört.

Ohne Starter könnte der Befehl für den Autostart also so aussehen:

Code: Alles auswählen

kdocker xterm -e /home/willy/Dokumente/Skripte/copy_Skripte
ohne xterm hatte ich ein Problem, den Prozess zu stoppen (nicht gefunden)

der würde im Autostart analog so aussehen:

Code: Alles auswählen

 /home/willy/Dokumente/Skripte/copy_Skripte

Code: Alles auswählen

#! /bin/sh

#hier wird eine Sequenz festgelegt, wie oft das skript durchlaufen wird
# siehe:man seq
for i in `seq 1 50`; do 

#Hier wird eine Variable (d) festgelegt, die Kopie deines Ordners wird unter 
#unter diesem "Namen" abgespeichert ($d) siehe auch man date

d=`date +%Y-%m-%d-%H-%M`

# Das ist der eigentliche Befehl, den du ja verstehst.
cp -R /home/ottonormal/Arbeit /mnt/Daten-1/Backups/"$d"

#3600 Sekunden Pause
sleep 3600s

#wenn (wie hier 50 mal) durchlaufen heißt es "done" und das Skript
#wird beendet
done
Na jetzt hast du ja Genügend Auswahl :mrgreen:

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Ordner in regelmäßigen Abständen sichern.

Beitrag von uname » 06.03.2019 15:59:17

Mein Script kann man auch in eine Zeile schreiben:

Code: Alles auswählen

l="/home/user/backup/"$(date --date="@$(($(date +%s) - 3600))" "+%Y%m%d-%H");rsync -avR --link-dest="$l" /home/user/Tmp /home/user/backup/$(date +%Y%m%d-%H)
Update:

Code: Alles auswählen

rsync -avR --link-dest="/home/user/backup/"$(date --date="@$(($(date +%s) - 3600))" "+%Y%m%d-%H") /home/user/Tmp /home/user/backup/$(date +%Y%m%d-%H)
Zuletzt geändert von uname am 06.03.2019 16:17:43, insgesamt 1-mal geändert.

Benutzeravatar
ottonormal
Beiträge: 3404
Registriert: 20.01.2014 22:25:29

Re: Ordner in regelmäßigen Abständen sichern.

Beitrag von ottonormal » 06.03.2019 16:13:22

Ach Leute, es ist hoffnungslos. Zuletzt hatte ich das probiert:

Code: Alles auswählen

*/4 * * * * ottonormal /bin/tar -cvf /mnt/Daten-1/Backups/Test-Sicherung$(date +%Y%m%d_%H%M).tar /home/ottonormal/Test
Nix Erfolg. Ich gebe es (mal wieder!) auf. Vielen Dank trotzdem für Eure Bemühungen. Ich hab' irgendwie 'ne totale Blockade. :(

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: [Aufgegeben] Ordner in regelmäßigen Abständen sichern.

Beitrag von uname » 06.03.2019 16:19:18

Funktioniert der Befehl denn direkt als Benutzer? Denk daran, dass du es den gewünschten CRON-Befehl immer direkt im HOME-Verzeichnis ausführst. Vielleicht liegt es an der Kombination von Zeichenkennten und Befehlsausgaben $(). Was sagt denn CRON? Kannst ja mal meinen Befehl bei dir in CRON eintragen ;-)

Nähere dich langsam an das Problem an. Was sagt z. B. folgender Versuch mit CRON:

Code: Alles auswählen

*/4 * * * * ottonormal /bin/tar -cvf /mnt/Daten-1/Backups/Test-Sicherung-123.tar /home/ottonormal/Test
Vielleicht wendest du CRON auch generell falsch an. Welche CRON-Konfigurationsdatei nutzt du denn überhaupt, wahrscheinlich /etc/crontab. Funktioniert es denn generell?

Benutzeravatar
ottonormal
Beiträge: 3404
Registriert: 20.01.2014 22:25:29

Re: [Aufgegeben] Ordner in regelmäßigen Abständen sichern.

Beitrag von ottonormal » 06.03.2019 16:56:31

uname hat geschrieben: ↑ zum Beitrag ↑
06.03.2019 16:19:18
Welche CRON-Konfigurationsdatei nutzt du denn überhaupt, wahrscheinlich /etc/crontab. Funktioniert es denn generell?
Ja, /etc/crontab, und es funktioniert generell auch.
Danke auch für Deinen Versuchsbefehl. Der funktioniert! Es ist nur so, dass dann alle 4 Minuten die letzte Test-Sicherung.tar überschrieben wird. Dann müsste wohl jeweils ein anderer Name oder eine Nummerierung her?

TomL

Re: [Aufgegeben] Ordner in regelmäßigen Abständen sichern.

Beitrag von TomL » 06.03.2019 17:50:30

Das funktioniert hier tadellos:

Code: Alles auswählen

su -
crontab -e

*/1 * * * * /bin/tar -cvf /mnt/Daten-1/Backups/$(date '+\%Y\%m\%d_\%H\%M\%S').tar /home/thomas/TestDirs/
Einige Minuten später:

Code: Alles auswählen

# ls /mnt/Daten-1/Backups

insgesamt 248K
drwxr-xr-x 2 root   root   4,0K 2019-03-06 17:49 .
drwxr-xr-x 3 thomas thomas 4,0K 2019-03-06 17:33 ..
-rw-r--r-- 1 root   root    40K 2019-03-06 17:44 20190306_174401.tar
-rw-r--r-- 1 root   root    40K 2019-03-06 17:45 20190306_174501.tar
-rw-r--r-- 1 root   root    40K 2019-03-06 17:46 20190306_174601.tar
-rw-r--r-- 1 root   root    40K 2019-03-06 17:47 20190306_174701.tar
-rw-r--r-- 1 root   root    40K 2019-03-06 17:48 20190306_174801.tar
-rw-r--r-- 1 root   root    40K 2019-03-06 17:49 20190306_174901.tar
-rw-r--r-- 1 root   root    40K 2019-03-06 17:50 20190306_175001.tar

Code: Alles auswählen

# journalctl -b | grep /bin/tar

Mär 06 17:44:01 thomaspc CRON[4628]: (root) CMD (/bin/tar -cvf /mnt/Daten-1/Backups/$(date '+%Y%m%d_%H%M%S').tar /home/thomas/SHome/System/TestDirs/)
Mär 06 17:45:01 thomaspc CRON[4638]: (root) CMD (/bin/tar -cvf /mnt/Daten-1/Backups/$(date '+%Y%m%d_%H%M%S').tar /home/thomas/SHome/System/TestDirs/)
Mär 06 17:46:01 thomaspc CRON[4658]: (root) CMD (/bin/tar -cvf /mnt/Daten-1/Backups/$(date '+%Y%m%d_%H%M%S').tar /home/thomas/SHome/System/TestDirs/)
Mär 06 17:47:01 thomaspc CRON[4680]: (root) CMD (/bin/tar -cvf /mnt/Daten-1/Backups/$(date '+%Y%m%d_%H%M%S').tar /home/thomas/SHome/System/TestDirs/)
Mär 06 17:48:01 thomaspc CRON[4686]: (root) CMD (/bin/tar -cvf /mnt/Daten-1/Backups/$(date '+%Y%m%d_%H%M%S').tar /home/thomas/SHome/System/TestDirs/)
Mär 06 17:49:01 thomaspc CRON[4696]: (root) CMD (/bin/tar -cvf /mnt/Daten-1/Backups/$(date '+%Y%m%d_%H%M%S').tar /home/thomas/SHome/System/TestDirs/)
Mär 06 17:50:01 thomaspc CRON[4704]: (root) CMD (/bin/tar -cvf /mnt/Daten-1/Backups/$(date '+%Y%m%d_%H%M%S').tar /home/thomas/SHome/System/TestDirs/)
Mär 06 17:51:01 thomaspc CRON[4710]: (root) CMD (/bin/tar -cvf /mnt/Daten-1/Backups/$(date '+%Y%m%d_%H%M%S').tar /home/thomas/SHome/System/TestDirs/)

Benutzeravatar
ottonormal
Beiträge: 3404
Registriert: 20.01.2014 22:25:29

Re: [Aufgegeben] Ordner in regelmäßigen Abständen sichern.

Beitrag von ottonormal » 06.03.2019 18:27:55

TomL hat geschrieben: ↑ zum Beitrag ↑
06.03.2019 17:50:30
Das funktioniert hier tadellos:

Code: Alles auswählen

su -
crontab -e

*/1 * * * * /bin/tar -cvf /mnt/Daten-1/Backups/$(date '+\%Y\%m\%d_\%H\%M\%S').tar /home/thomas/TestDirs/
Ja, vielen Dank. :THX:
Hier funktioniert es auch. Genau so wollte ich es haben.
Also geht es doch mit einem "einfachen" Befehl in der crontab. :wink:

Benutzeravatar
novalix
Beiträge: 1909
Registriert: 05.10.2005 12:32:57
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: elberfeld

Re: [Gelöst] Ordner in regelmäßigen Abständen sichern.

Beitrag von novalix » 06.03.2019 21:14:35

Bis auf die Kleinigkeit, dass die Sicherung aus Deinem home jetzt root gehört und der restore damit etwas kniffeliger wird, ist also alles in Butter. :mrgreen:
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.

TomL

Re: [Gelöst] Ordner in regelmäßigen Abständen sichern.

Beitrag von TomL » 06.03.2019 21:56:18

novalix hat geschrieben: ↑ zum Beitrag ↑
06.03.2019 21:14:35
Bis auf die Kleinigkeit, dass die Sicherung aus Deinem home jetzt root gehört und der restore damit etwas kniffeliger wird, ist also alles in Butter.
Das Tarfile selber gehört root, aber die Files drinnen haben alle die vorherigen Rechte, also bei meinem Test meine. Und wenn ich das Tarfile mit dem Midnight-Commander öffne und rauskopiere, was ich brauche oder notwendig ist, haben die Dateien auch wieder meine Rechte. Eigentlich ist das doch richtig so... oder mach ich da was falsch? :?

Benutzeravatar
ottonormal
Beiträge: 3404
Registriert: 20.01.2014 22:25:29

Re: [Gelöst] Ordner in regelmäßigen Abständen sichern.

Beitrag von ottonormal » 06.03.2019 22:45:47

Hab' ich gerade mal nachgeschaut. Also bei mir bin eindeutig ICH der Besitzer der .tar-Dateien. Nix root.

Benutzeravatar
novalix
Beiträge: 1909
Registriert: 05.10.2005 12:32:57
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: elberfeld

Re: [Gelöst] Ordner in regelmäßigen Abständen sichern.

Beitrag von novalix » 07.03.2019 07:20:21

ottonormal hat geschrieben: ↑ zum Beitrag ↑
06.03.2019 22:45:47
Also bei mir bin eindeutig ICH der Besitzer der .tar-Dateien. Nix root.
Dann wird bei Dir der Cronjob auch unter der Benutzerkennung "ICH" ausgeführt und nicht unter root. Das ist in diesem Fall ja auch richtig. So richtig doof wird es, wenn man mit "cp" oder "rsync" als root Backups macht und die jeweiligen rechteerhaltenden Optionen nicht setzt.
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.

Antworten