Ik heb een probleem met het kopieren van bestanden binnen een windows netwerk naar een NTFS volume, waar Cygwin met de permissions knoeit. Wie kan mij helpen?
De situatie
Ik maak wekelijks een incremental backup met Rsync van een Windows 10 computer met Cygwin naar een externe NAS. Deze Windows 10 computer deelt zijn HDD (NTFS) met andere PC's in het interne netwerk. Omdat de backup met Rsync naar een NAS op een fysiek externe locatie gaat, gebruik ik in het script de volgende commando's:
chmod -R 700 /cygdrive/e/video
RSYNC -ahv --chmod=a+rwx --delete --stats --progress --timeout=120 --exclude=".*" --log-file="[logbestand]" -e 'ssh -p [port]' /cygdrive/e/video "[doel]"
chmod -R 777 /cygdrive/e/video
De reden van de chmod aanpassing is dat ik niet wil dat andere gebruikers van de externe NAS deze video's kunnen bekijken/veranderen/enz, maar dat ik deze zelf lokaal wel kan gebruiken. Ik pas dus eerst de permissions aan, kopieer vervolgens de bestanden inclusief de aangepaste permissions, en verander daarna de permissions weer terug. Dit werkt naar wens, maar heeft blijkbaar een neveneffect.
Het probleem
Ik ontdek dat dit gevolgen heeft voor de permissions van nieuw te kopieren bestanden naar deze directory op de Windows 10 server. Windows geeft nieuwe bestanden automatisch de permission 070, terwijl dat afwijkt van de oorspronkelijke permissions van het bestand.
Het ongewenste effect
Het gevolg is dat ik deze video's niet meer kan bekijken (tenzij ik handmatig met cygwin de permissions weer aanpas). Voor andere gebruikers op het netwerk is dit onwerkbaar, aangezien ik niet met elke nieuwe video de permissions kan aanpassen. Meerdere Kodi systemen (Rpi's) kunnen de nieuwe video's niet vinden/afspelen na het plaatsen van de video's op de betreffende locatie, maar ook op andere windows 10 systemen kunnen de video's niet worden afgespeeld (en dus ook niet op de windows 10 systeem waar het bestand op staat).
Wat ik heb ontdekt
Het lijkt er sterk op dat cygwin een conflict heeft met de NTFS permissions van de directory. ACL heet dat, meen ik. Ik heb commando's gevonden als 'setfacl' en 'getfacl', maar ik heb geen idee hoe ik dat in deze situatie moet toepassen. Wie kan mij helpen?
De situatie
Ik maak wekelijks een incremental backup met Rsync van een Windows 10 computer met Cygwin naar een externe NAS. Deze Windows 10 computer deelt zijn HDD (NTFS) met andere PC's in het interne netwerk. Omdat de backup met Rsync naar een NAS op een fysiek externe locatie gaat, gebruik ik in het script de volgende commando's:
chmod -R 700 /cygdrive/e/video
RSYNC -ahv --chmod=a+rwx --delete --stats --progress --timeout=120 --exclude=".*" --log-file="[logbestand]" -e 'ssh -p [port]' /cygdrive/e/video "[doel]"
chmod -R 777 /cygdrive/e/video
De reden van de chmod aanpassing is dat ik niet wil dat andere gebruikers van de externe NAS deze video's kunnen bekijken/veranderen/enz, maar dat ik deze zelf lokaal wel kan gebruiken. Ik pas dus eerst de permissions aan, kopieer vervolgens de bestanden inclusief de aangepaste permissions, en verander daarna de permissions weer terug. Dit werkt naar wens, maar heeft blijkbaar een neveneffect.
Het probleem
Ik ontdek dat dit gevolgen heeft voor de permissions van nieuw te kopieren bestanden naar deze directory op de Windows 10 server. Windows geeft nieuwe bestanden automatisch de permission 070, terwijl dat afwijkt van de oorspronkelijke permissions van het bestand.
Het ongewenste effect
Het gevolg is dat ik deze video's niet meer kan bekijken (tenzij ik handmatig met cygwin de permissions weer aanpas). Voor andere gebruikers op het netwerk is dit onwerkbaar, aangezien ik niet met elke nieuwe video de permissions kan aanpassen. Meerdere Kodi systemen (Rpi's) kunnen de nieuwe video's niet vinden/afspelen na het plaatsen van de video's op de betreffende locatie, maar ook op andere windows 10 systemen kunnen de video's niet worden afgespeeld (en dus ook niet op de windows 10 systeem waar het bestand op staat).
Wat ik heb ontdekt
Het lijkt er sterk op dat cygwin een conflict heeft met de NTFS permissions van de directory. ACL heet dat, meen ik. Ik heb commando's gevonden als 'setfacl' en 'getfacl', maar ik heb geen idee hoe ik dat in deze situatie moet toepassen. Wie kan mij helpen?