ubuntu - Rsync on windows: Permission Denied (13)

04
2013-09
  • crgwbr

    I have a Windows 7 box and an Ubuntu server that I need to sync files between. My plan was to use Rsync running in cygwin on the Windows machine with a script like this:

    cd E:/User/
    rsync -avz --delete -e "ssh -p 2221" Pictures/* [email protected]:/Path/to/Files/
    rsync -avz --delete -e "ssh -p 2221" [email protected]:/Path/to/Files/* Pictures/
    

    However when I attempt this, rsync spits out error's like this for every file or dir

    rsync: recv_generator: fail to stat "/path/to/file/file.jpg": Permission denied (13)
    rsync: recv_generator: mkdir "/path/to/file/": Permission denied (13)
    

    The user I'm ssh'ing into the server as has drwxrwxrwx access to the directory (according to ls -la). Any idea how to fix this?

  • Answers

  • Related Question

    rsync file permissions on windows
  • avguchenko

    I have an rsync service that syncs files from remote machine to a machine that drops them on a network drive.

    I need the copied files to take on the native permissions of the destination folder.

    The sync process runs fine, but after it is finished, I cannot access some of the folders -- Permission Denied.

    I am logged in as domain admin; it won't allow me to modify any permissions on said folders, either. What gives?

    run command:

    rsync.exe  -v -rlt -z --delete "src_path" "dst_path"
    

  • Related Answers
  • avguchenko

    (from http://www.samba.org/ftp/rsync/rsync.html)

    In summary: to give destination files (both old and new) the source permissions, use --perms.

    To give new files the destination-default permissions (while leaving existing files unchanged), make sure that the --perms option is off and use --chmod=ugo=rwX (which ensures that all non-masked bits get enabled).

    If you'd care to make this latter behavior easier to type, you could define a popt alias for it, such as putting this line in the file ~/.popt (the following defines the -Z option, and includes --no-g to use the default group of the destination dir):

        rsync alias -Z --no-p --no-g --chmod=ugo=rwX
    
  • miking

    Cygwin's "posix" security has caused me lots of problems with Windows NTFS file permissions - even using --no-perms with rsync.

    I found that newly-created files/folders don't properly inherit default permissions, but every file/folder ends up with lots of <not inherited> entries in the Windows file/folder Advnanced security tab. (And this problem is not just rsync-related).

    I found this related post and this link both very helpful in how to resolve these problems using the noacl option in cygwin's /etc/fstab file. The downside of this solution is that cygwin loses the ability to set file/folder permissions, but in many cases this is not important.

    (Googling this topic you'll probably find references to setting the CYGWIN=NONTSEC environment variable, but this is for cygwin v1.5 and doesn't work in cygwin v1.7 onwards.)

  • Wernight

    On Windows with DeltaCopy I could make it work with:

    rsync --perms --chmod=a=rw,Da+x ...
    

    It worked even with --recursive