[] rsync Backup von /home/user - Script von MSfree
Re: [] rsync Backup von /home/user - Script von MSfree
Hier bitte nur "rsync Backup von /home/user - Script von MSfree"
Automatische Datensicherung: Backup-Script mit rsync bei Einstecken einer externen Festplatte
bitte da ------------>
viewtopic.php?t=183277#p1292918
Automatische Datensicherung: Backup-Script mit rsync bei Einstecken einer externen Festplatte
bitte da ------------>
viewtopic.php?t=183277#p1292918
Re: [] rsync Backup von /home/user - Script von MSfree
Ich nutze Dolphin zum unmounten, also keine Kommandozeile.MSfree hat geschrieben:17.01.2022 10:35:06Weil sync praktisch immer überflüssig ist. Ich sehe zwar hier im Forum, öfter mal, daß auf manche Befehle sync empfohlen wird, z.B. beim Schreiben eines netinstaller Images mit dd, aber auch hier ist sync überflüssig, weil dd selbst bereits intern sync aufruft.AxelMD hat geschrieben:17.01.2022 08:53:15Warum haben die Scripte von MSfree keinen "sync" Befehl enthalten damit im Schreibpuffer des Linux-Kernels befindliche Daten auf den Datenträger geschrieben werden?
Ansonsten wird auf jeden Fall sync ausgeführt, wenn man einen Datenträger unmountet. Wer also den Datenträger nicht blind abzieht sondern die Mechanismen zum (sicheren) Auswerfen im Dateimanager bzw. umount von der Kommanzeile nutzt, bekommt auf jeden Fall einen sauber gesyncten Datenträger.
Kann ich ein "sync" am Ende des Scripts anfügen?
Bei langsamen USB Stick*s scheint es erforderlich zu sein.
Wie kann ich das Script rsync-msfree-4.sh im Ordner /home/axel/rsnyc direkt aufrufen?
https://qastack.com.de/ubuntu/427818/ho ... -full-path
Geht das nicht einfacher?
Re: [] rsync Backup von /home/user - Script von MSfree
Kann man machen, schadet nicht, ist aber überflüssig.
Nein, es ist selbst dann unnötig. Wenn man umount ausführt, dauert es halt dann länger, bis alle Puffer und Caches rausgeschrieben sind. Aber wenn umount fertig ist, ist das Medium garantiert gesynct.Bei langsamen USB Stick*s scheint es erforderlich zu sein.
Auch Dolphin sollte erst dann zur Bereitschaft zurückkehren, wenn dort "Auswerfen", also der umount-Prozeß, vollständig durchgelaufen ist. Vorher darf man der Stick/die Platte halt nicht abziehen.
Re: [] rsync Backup von /home/user - Script von MSfree
Die Fertigmeldung "USB Medium kann entfernt" bekomme ich von Dolphin manchmal zu früh.Auch Dolphin sollte erst dann zur Bereitschaft zurückkehren, wenn dort "Auswerfen", also der umount-Prozeß, vollständig durchgelaufen ist. Vorher darf man der Stick/die Platte halt nicht abziehen.
Nach oben
Besonders oft wenn große Dateien kopiert werden.
Normalerweise ist im Terminal bei Eingabe von "sync" der Cursor sofort wieder verfügbar.
Unmounte ich mit Dolphin, bekomme die Nachricht USB kann weg, mache schnell ein "sync", arbeitet "sync"
oft noch. Das ist besonders auffällig bei langsamen USB-Flasch-Speicher der Fall.
Re: [] rsync Backup von /home/user - Script von MSfree
Was aber ein Bug im Dolphin wäre -> Bugreport.AxelMD hat geschrieben:18.01.2022 14:40:36Die Fertigmeldung "USB Medium kann entfernt" bekomme ich von Dolphin manchmal zu früh.
Wie gesagt, es schadet nicht, wenn man ans Ende dass Backupskripts noch sync anhängt, dann ist man auf der sicheren Seite.
Re: [] rsync Backup von /home/user - Script von MSfree
kann ich das an rsnyc-msfree-4.sh Script unten anhängen?
https://pastebin.com/LpdNRssj
Zeile 125
https://pastebin.com/LpdNRssj
Zeile 125
Code: Alles auswählen
rsync
Re: [] rsync Backup von /home/user - Script von MSfree
Ich erhebe kein Urheberrecht auf das Skript. Ob du da nu noch was dranhängst, bedarf keiner Genehmigung meinerseits.
Ich hatte ja weiter oben schon geschrieben, daß es kein Fehler ist, das ans Dateiende zu hängen.
Re: [gelöst] rsync Backup von /home/user - Script von MSfree
https://pastebin.com/PvibG52j
Line 125
sync ## hinzugefügt
rsync-msfree-5.sh
Welche Rechte sollte man hdd1 zuweisen?
Bei meinem rdiff-backup System hat nur root Schreibrechte und axel nur Leserechte.
axel kann nichts kaputt machen, Verschlüsselungstrojaner vermutlich auch nicht.
Sollte man das beim rsync-msfree-5.sh auch so einstellen?
Zur Zeit darf axel alles auf hdd1.
Line 125
sync ## hinzugefügt
rsync-msfree-5.sh
Code: Alles auswählen
#/bin/bash
#=====================================================
# customize SRC, DSTDIR, HTMLLOGDIR, PREFIX:
#
# SRC = Hostname und Freigabename der Quelle
SRC=quellrechner::pub
# DSTDIR = Vereichnis, unter dem die Backups auf dem Ziel angelegt werden
DSTDIR=/volume1/backup
# HTMLLOGDIR = Vereichnis, unter dem die Logs auf dem Ziel angelegt werden
HTMLLOGDIR=/volume1/RSyncLog
# PREFIX: "Vorsilbe", die den täglichen Unterverzeichnisnamen vorgehängt wird
PREFIX=daily
#=====================================================
# automatische Variablen, keine Anpssung nötig
#=====================================================
# aktuelles Datum
DATE=`date +%d.%m.%y`
# Zielverzeichnis
DST=$DSTDIR/$PREFIX-$DATE
# temporäres Verzeichnis
BUS=$DSTDIR/.running-$DATE
# Logdateiname
LOG=$DSTDIR/log/log-$DATE.log
# HTML-Logdatei
HTMLLOG=$HTMLLOGDIR/log-$DATE.html
# gestriges Verzeichnis
PREV=`ls -rtd $DSTDIR/$PREFIX-* 2> /dev/null | tail -1`
#=====================================================
# anlegen der Ausgabeverzeichnisse
#=====================================================
if test ! -d $DSTDIR
then
mkdir $DSTDIR
fi
if test ! -d $DSTDIR/log
then
mkdir $DSTDIR/log
fi
if test ! -d $HTMLLOGDIR
then
mkdir $HTMLLOGDIR
fi
#=====================================================
# prüfen, ob rsync mit --link-dest laufen soll
#=====================================================
if test -z "$PREV"
then
HARDLINK=""
else
HARDLINK=--link-dest=$PREV
fi
#=====================================================
# Kopf der Logdate erzeugen
#=====================================================
CURRENTTIME=`date -u`
echo "================================================" > $LOG
echo "Started at " $CURRENTTIME >> $LOG
echo "================================================" >> $LOG
echo "Fetching from " $SRC >> $LOG
echo "Storing at " $DST >> $LOG
echo "Hardlinking from " $PREV >> $LOG
echo "================================================" >> $LOG
#=====================================================
# rsync aufrufen und bei Fehler neu starten
# die Sicherung wird hier erstmal in ein temporäres
# Verzeichnis geschrieben
#=====================================================
while ! \
rsync -av $HARDLINK $SRC $BUS >> $LOG 2>&1
do
sleep 60
done
#=====================================================
# Sicherungsverzechnis in endgültigen Namen umbenennen
# und mit touch auf die aktuelle Uhrzeit setzen
#=====================================================
mv $BUS $DST
touch $DST
#=====================================================
# Ende der Logdate erzeugen
#=====================================================
CURRENTTIME=`date -u`
echo "================================================" >> $LOG
echo "Finished at " $CURRENTTIME >> $LOG
echo "================================================" >> $LOG
#=====================================================
# Logdate HTML umsetzen, damit man sie leichter in
# einem Browser lesen kann.
#=====================================================
awk '
BEGIN {
print "<!DOCTYPE html>"
print "<html>"
print " <head>"
print " <meta charset="UTF-8">"
print " <title>TimAchine Backup Log</title>"
print " </head>"
print " <body>"
}
{
print " "$0"<br>"
}
END{
print " </body>"
print "</html>"
}' $LOG > $HTMLLOG
#=====================================================
# originale Logdate komprimieren, um Platz zu sparen
#=====================================================
gzip -9 $LOG
sync
Bei meinem rdiff-backup System hat nur root Schreibrechte und axel nur Leserechte.
axel kann nichts kaputt machen, Verschlüsselungstrojaner vermutlich auch nicht.
Sollte man das beim rsync-msfree-5.sh auch so einstellen?
Zur Zeit darf axel alles auf hdd1.
Re: [gelöst] rsync Backup von /home/user - Script von MSfree
Wenn das Skript unter dem Benutzer "axel" ausgeführt wird, ist das auch sinnvoll und nötig. Anderenfalls könnte es sein, daß du einige Dateien gar nciht schreiben darfst.
Re: [] rsync Backup von /home/user - Script von MSfree
https://www.pragmaticlinux.com/2021/05/ ... -in-linux/
rsync Option:
Hallo MSfree, kennst Du die Option?
MfG
AxelMD
rsync Option:
Code: Alles auswählen
--info=progress2
MfG
AxelMD
-
- Beiträge: 5525
- Registriert: 30.12.2004 15:31:07
- Wohnort: Wegberg
Re: [] rsync Backup von /home/user - Script von MSfree
Ja, ich kenne im Prinzip die Optionen, mit denen man den Fortschritt ausgeben kann. Allerdings sind solche Fortschrittsausgaben in meinem Anwendungsfall nicht sinnvoll. Ich lasse das Skript per cron laufen, also im Hintergrund ohne Terminalausgabe, da interessiert mich der Erfolg erst, wenn es fertig ist oder fehlerhaft abgebrochen ist.
Re: [] rsync Backup von /home/user - Script von MSfree
Danke euch.
@MSfree
https://pastebin.com/PvibG52j
Line 79
abgeändert in
Line 79
sind da irgendwelche Problem zu erwarten, bzw. weitere Anpassungen vor zu nehmen?
MfG
AxelMD
@MSfree
https://pastebin.com/PvibG52j
Line 79
Code: Alles auswählen
rsync -av $HARDLINK $SRC $BUS >> $LOG 2>&1
Line 79
Code: Alles auswählen
rsync -av --info=progress2 $HARDLINK $SRC $BUS >> $LOG 2>&1
MfG
AxelMD
Re: [] rsync Backup von /home/user - Script von MSfree
Soweit ich das sehe wir dein Progress dennoch in die Datei $LOG geschrieben und erscheint somit nicht auf dem Bildschirm.AxelMD hat geschrieben:31.01.2022 11:29:03Line 79sind da irgendwelche Problem zu erwarten, bzw. weitere Anpassungen vor zu nehmen?Code: Alles auswählen
rsync -av --info=progress2 $HARDLINK $SRC $BUS >> $LOG 2>&1
Re: [] rsync Backup von /home/user - Script von MSfree
Der Fortschritt wird normalerweise per stdout auf das Terminal geschrieben. Mit dem ">>" wird diese Ausgabe an die Datei $LOG angehängt.AxelMD hat geschrieben:31.01.2022 11:29:03Line 79sind da irgendwelche Problem zu erwarten,Code: Alles auswählen
rsync -av --info=progress2 $HARDLINK $SRC $BUS >> $LOG 2>&1
Das bringt zwar keine Probleme, die Logdatei wird dadurch aber mit Fortschrittsausgaben geflutet. Auf dem Terminal selbst siehst du also nichts. Fortschritt in eine Datei umzuleiten, ist also sinnlos. Das Log selbst ist hinterher mit unnötigen Fortschrittsausgaben zugemüllt, der eigentliche Inhalt unübersichtlich irgendwo dazwischen.
Re: [] rsync Backup von /home/user - Script von MSfree
Das gefällt mir nicht, gut das ich gefragt habe, danke.
Was wäre eine gute Lösung, wenn ich den aktuellen Status gerne sehen möchte?
Ober evtl. doch darauf verzichten, weil es verkompliziert?
Was wäre eine gute Lösung, wenn ich den aktuellen Status gerne sehen möchte?
Ober evtl. doch darauf verzichten, weil es verkompliziert?
Re: [] rsync Backup von /home/user - Script von MSfree
Ich glaube, du kannst nur entweder eine Fortschrittsanzeige ausgeben lassen oder ein Log mit Dateinamen, die kopiert wurden.AxelMD hat geschrieben:31.01.2022 12:22:46Was wäre eine gute Lösung, wenn ich den aktuellen Status gerne sehen möchte?
Für die Ausgabe eines Logs ist das Skript gemacht worden.
Wenn du eine Fortschrittsanzeige willst, mußt du die Ausgabe ins Log aus dem Skript ausbauen.
Ich kann es nachvollziehen, wenn du zwischendurch wissen willst, wie lange es noch dauern könnte. Für mich spielt das halt keine Rolle, da rödelt ein eigenständiger Rechner vollautomatisch vor sich hin. Mittlerweile weiß ich auch, daß mein täglicher Lauf 10-20 Minuten dauert, das sehe ich, wenn ich in das Log schaue und die protokolierte Startzeit und Endzeit ansehe.
Sammel doch erstmal mit ein paar Backups Erfahrungen. Dann weißt du auch, wie lange das dauern wird und brauchst nicht ungeduldig auf das Terminal zu starren und auf das Ende des Skripts zu warten.
Du kannst auch in einem zweiten Terminal das bisher erstellte Log mit
Code: Alles auswählen
tail -f <Logdateiname>
Re: [] rsync Backup von /home/user - Script von MSfree
https://www.oehl.tv/udev-systemd/
http://jasonwryan.com/blog/2014/01/20/udev/
Hallo Forum,
wie muss ich herangehen, wenn ich das Script von MSfree mit einsteken einer USB Hdd ausführen möchte?
Es sollen drei unerschiedliche HDDs in drei Gehäusen genutzt werden.
Wie stelle ich die udev Regeln auf?
MfG
AxelMD
http://jasonwryan.com/blog/2014/01/20/udev/
Hallo Forum,
wie muss ich herangehen, wenn ich das Script von MSfree mit einsteken einer USB Hdd ausführen möchte?
Es sollen drei unerschiedliche HDDs in drei Gehäusen genutzt werden.
Wie stelle ich die udev Regeln auf?
MfG
AxelMD