potshock
Goto Top

Frage zu Rsync Option -delete

Hallo Shell user,

gegeben ist ein unter Windows mit NTFS formatierter USB Stick an einem Ubuntu PC. Auf diesem liegt das Script "StickRsync.sh" um das es hier geht.
Ziel des Scripts ist es, den Stick, welcher später an Windows PCs eingesetzt wird, mit bestimmten Verzeichnissen des Linux Servers zu synchronisieren.

Zuerst hier erst mal mein bisheriger funktionierender Code:
Anmerkung: ich habe die Portnr. der ssh Verbindung und den Namen meines Keys durch Dummynamen ersetzt.

#!/bin/bash
# Erstelle ggf. das Verzeichnis und synchronisiere /Win10/Scripts
sudo mkdir -p ./Win10/Scripts
rsync -avrh  -e "ssh -p MeinPort -i /home/tacky/.ssh/MeinKey" 192.168.104.11:/var/www/html/Test/Win10/Scripts/*.ps1 ./Win10/Scripts  
# Erstelle ggf. das Verzeichnis und synchronisiere /Win10/Conf
sudo mkdir -p ./Win10/Conf
rsync -avrh -e "ssh -p MeinPort -i /home/tacky/.ssh/MeinKey" 192.168.104.11:/var/www/html/Test/Win10/Conf/* ./Win10/Conf  

Dabei haben sich jedoch 2 Probleme ergeben, bei denen ich Eure Unterstützung benötige.

1.) Ich brauche Hilfe für die delete Option bei rsync um im Quellverzeichnis nicht mehr vorhandene Daten auch im Ziel zu löschen.
Laut man-page soll der Befehl "--delete" sein. Aber egal wo/wie ich diese Option setze es funktioniert nicht.
Google Suche hat mir immer nur Bsp. Code gezeigt bei dem es keine -e "ssh -p MeinPort -i /home/tacky/.ssh/MeinKey" Option gab
Meine Versuche sehen z.B. so aus:
rsync -avrh  --delete -e "ssh -p MeinPort -i /home/tacky/.ssh/MeinKey" 192.168.104.11:/var/www/html/Test/Win10/Scripts/*.ps1 ./Win10/Scripts  
rsync -avrh  -e --delete "ssh -p MeinPort -i /home/tacky/.ssh/MeinKey" 192.168.104.11:/var/www/html/Test/Win10/Scripts/*.ps1 ./Win10/Scripts  
rsync -avrh  -e --delete -e "ssh -p MeinPort -i /home/tacky/.ssh/MeinKey" 192.168.104.11:/var/www/html/Test/Win10/Scripts/*.ps1 ./Win10/Scripts  
rsync -avrh  -e "--delete" "ssh -p MeinPort -i /home/tacky/.ssh/MeinKey" 192.168.104.11:/var/www/html/Test/Win10/Scripts/*.ps1 ./Win10/Scripts  

2.) Unter /Win10/Conf/ liegt u.a. der Powershell Export einer GPO: {42BF9826-C959-4440-8EA5-E5E3C373BC72}
Dieser wird immer wieder neu geschrieben, obwohl sich im Quellverzeichnis nichts geändert hat, warum?

Edit zu 2.) Problem gelöst: die Option -a durch die Option -c ersetzt!
rsync -cvrh -e "ssh -p MeinPort -i /home/tacky/.ssh/MeinKey" 192.168.104.11:/var/www/html/Test/Win10/Conf/* ./Win10/Conf  
Viele Grüße
Potshock

Content-ID: 667149

Url: https://administrator.de/forum/frage-zu-rsync-option-delete-667149.html

Ausgedruckt am: 22.12.2024 um 11:12 Uhr

148121
Lösung 148121 31.05.2021 aktualisiert um 16:37:52 Uhr
Goto Top
1.) Ich brauche Hilfe für die delete Option bei rsync um im Quellverzeichnis nicht mehr vorhandene Daten auch im Ziel zu löschen.
Also hier läuft das Löschen damit testweise einwandfrei
rsync -avh --delete-after --force -e "ssh -p MeinPort -i /home/tacky/.ssh/MeinKey" 192.168.104.11:/var/www/html/Test/Win10/Scripts/*.ps1 ./Win10/Scripts/  
Gruß w.
potshock
potshock 15.06.2021 aktualisiert um 09:25:28 Uhr
Goto Top
Hi 148121,

danke für dein Feedback!
Sorry, daß ich mich erst jetzt zurück melde, hatte meine Frage hier irgendwie aus den Augen verloren.

Der delete Schalter funktioniert laut man page gar nicht mit einem wildcard Filter.

Ich habe das problem umschifft indem ich per --exclude Ordner ausgeschlossen habe.

Viele Grüße
Potshock