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-Key: 667149

Url: https://administrator.de/contentid/667149

Printed on: July 27, 2024 at 11:07 o'clock

Mitglied: 148121
Solution 148121 May 31, 2021 updated at 14:37:52 (UTC)
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.
Member: potshock
potshock Jun 15, 2021 updated at 07:25:28 (UTC)
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