rsync из Linux в Windows 7 создает файлы, к которым у меня нет прав доступа - PullRequest
0 голосов
/ 27 июля 2011

Я использую rsync в Cygwin для синхронизации папок с музыкой и изображениями на двух машинах.У меня есть полный контроль над обеими этими папками на компьютере с Windows, и разрешения на компьютере с Linux обычно -rw -------, принадлежащие мне.Когда я использую, например, rsync -rvu --delete rsync://fraxtil@linuxmachine:/music/ /cygdrive/d/Music/, он создает файлы и папки в D: \ Music \, но у меня нет разрешения на доступ к ним, и в результате rsync не может перейти во вновь созданные каталоги.

Я пытался добавить --chmod=a+rwx,g+rwx,o+rwx к команде, добавить noacl к записи fstab в cygwin для / cygdrive / и удалить read only = yes из Linux rsyncd.conf, но ни один из них не решил проблему.

Мой rsyncd.conf:

log file = /var/log/rsync.log
timeout = 300
[music]
comment = Music
path = /home/fraxtil/music
#read only = yes
list = yes
uid = fraxtil
gid = fraxtil
auth users = fraxtil
secrets file = /etc/rsyncd.secrets
[pictures]
(mostly the same as above)

cygwin's / etc / fstab:

none /cygdrive cygdrive noacl,binary,posix=0,user 0 0

Я заметил, что когда я просматриваю D: \ из bash под cygwin, большинствофайлов имеют режим 0200 или 0000. Это может быть связано с моей проблемой.Тем не менее, недавно созданные файлы, как ни странно, имеют режим 0270, который сбивает с толку, потому что это те, к которым я не могу получить доступ, но у них больше прав.

Есть идеи?

Ответы [ 2 ]

2 голосов
/ 19 декабря 2011

Первоначально он был опубликован в качестве редактирования моего первоначального вопроса, но теперь, когда существует другой ответ, мне нужно принять что-то, чтобы сохранить мой процент принятия:

Я только что удалил бит --chmod изКоманда rsync, и теперь у меня снова есть соответствующие разрешения.Я пробовал --chmod с noacl и без --chmod с acl, но еще не пробовал --chmod с noacl.Последнее работает для меня.Я оставлю это открытым, если кто-то захочет объяснить, почему это происходит именно так.

0 голосов
/ 14 ноября 2011

Спасибо за решение. Я застрял в rsyncing между диском и USB-диском. rsync также создал странные разрешения NTFS для папки.

Добавление --chmod = a + rwx, g + rwx, o + rwx позволяет мне выполнять rsync локально. Окончательная команда: rsync -rv --delete --exclude "Dropbox /" --chmod = a + rwx, g + rwx, o + rwx / cygdrive / d / source / cygdrive / h / destination

...