Lascia la gestione ACL su Windows con Cygwin rsync


10

Sto eseguendo un rsynccomando, copiando i miei file da un server sul mio computer Windows come:

rsync -rt --partial-dir=".rsync" --del rsync://server/a/ a/

Ogni volta che questo comando crea una directory, tende a creare una directory con ACL / permessi pazzi. Per me, tende a creare dieci <not inherited>voci, con una voce negata per l'utente che ha eseguito il rsynccomando, e anche le altre non hanno molto senso. Questo succede anche usando l' --chmod=ugo=rwXopzione, suggerita da un thread simile .

Cosa posso fare per impedire rsyncdi provare a impostare le autorizzazioni (e lasciare le autorizzazioni all'eredità ACL in Windows)?

Risposte:


12

Montare la directory in questione con l' noaclopzione, come descritto nel manuale .

(E se vuoi sapere perché la mappatura delle autorizzazioni Unix agli ACL di Windows non è semplice, vedi qui .)


noaclimpedisce i permessi folli, ma dal momento che finge permessi con il bit "sola lettura", ottengo un mucchio di strane directory parziali di sola lettura. Questo è un miglioramento.
Palswim,

1
In realtà, sembra che ottenga quel sintomo "parziale in sola lettura" su qualsiasi directory (che sia stata rsynccreata o meno). Sembra che Windows stia dicendo che le directory non hanno proprietà di sola lettura .
Palswim,

2
La risposta di ak2 è stata molto utile, ma ci sono voluti un po 'di ricerche su google per scoprire come impostare noaclcorrettamente in / etc / fstab. Ho trovato questo link abbastanza utile. Utilizzando noaclrisolto i miei problemi rsync - grazie.
miking

1
@miking ha già dato un bel suggerimento con quel link e l' noaclopzione. Non ha funzionato per me con MobaXterm (portatile), poiché sembra ricrearsi /etc/fstabad ogni avvio. Ho parzialmente aggirato quel posizionamento mount -c /drives -o binary,posix=0,user,auto,noaclnel mio .bashrc. "Parzialmente" poiché ciò riguarda solo le "lettere di unità di Windows" (e non ad es /home.).
Izzy,

1
@SimonEast - Trovato questo mentre hai risposto. Potresti provare questo e rispondere? - developers.redhat.com/blog/2018/02/07/… - # Se la tua distribuzione non ha un file fstab, che è tipico per cwRsync, è facilmente risolvibile. Crea il file $MY_RSYNC_DIST_DIR/etc/fstabe incolla il seguente contenuto:none /cygdrive cygdrive binary,posix=0,user,noacl 0 0
Alex S,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.