Le problème que j'ai reproduit sur de nombreuses versions de MacOS X (Mountain Lion, Mavericks, Yosemite, El Capitan) qui utilisent une version beaucoup trop ancienne de rsync
(2.6.9) et avec des versions plus récentes construites avec Macports (3.x) est résolu avec la version 3.1.2.
Échec de rsync 2.6.9 standard de MacOS X
••On_my_Mac••% /usr/bin/rsync -avE example example2
building file list ... done
._example
example/color-profile-1
example/._color-profile-1
example/index.xml.gz
example/Contents/
rsync: recv_generator: mkdir "/Users/Shared/tmp/example2/example/Contents" failed: Permission denied (13)
*** Skipping everything below this failed directory ***
example/QuickLook/
rsync: recv_generator: mkdir "/Users/Shared/tmp/example2/example/QuickLook" failed: Permission denied (13)
*** Skipping everything below this failed directory ***
rsync: mkstemp "/Users/Shared/tmp/example2/example/.color-profile-1.zFdjjF" failed: Permission denied (13)
rsync: mkstemp "/Users/Shared/tmp/example2/example/.._color-profile-1.ySmazZ" failed: Permission denied (13)
rsync: mkstemp "/Users/Shared/tmp/example2/example/.index.xml.gz.zB0WUl" failed: Permission denied (13)
copyfile(/dev/null, example/Contents, COPYFILE_METADATA) failed:2
copyfile(/dev/null, example/QuickLook, COPYFILE_METADATA) failed:13
sent 157793 bytes received 120 bytes 315826.00 bytes/sec
total size is 461293 speedup is 2.92
rsync error: some files could not be transferred (code 23) at /SourceCache/rsync/rsync-45/rsync/main.c(992) [sender=2.6.9]
••On_my_Mac••%
Réalisé rsync 3.1.2 avec succès
••On_my_Mac••% type rsync
rsync is /opt/local/bin/rsync
••On_my_Mac••% rsync --version
rsync version 3.1.2 protocol version 31
Copyright (C) 1996-2015 by Andrew Tridgell, Wayne Davison, and others.
Web site: http://rsync.samba.org/
Capabilities:
64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
append, ACLs, xattrs, iconv, symtimes, no prealloc, file-flags,
HFS-compression
rsync comes with ABSOLUTELY NO WARRANTY. This is free software, and you
are welcome to redistribute it under certain conditions. See the GNU
General Public Licence for details.
••On_my_Mac••%
••On_my_Mac••% /usr/bin/sudo rm -rf example2
••On_my_Mac••% /opt/local/bin/rsync -avAX --fake-super example example2
sending incremental file list
created directory example2
example/
example/color-profile-1
example/index.xml.gz
example/Contents/
example/Contents/PkgInfo
example/QuickLook/
example/QuickLook/Preview.pdf
example/QuickLook/Thumbnail.jpg
sent 462,152 bytes received 167 bytes 924,638.00 bytes/sec
total size is 461,293 speedup is 1.00
••On_my_Mac••%
2 détails clés à noter :
- le site
-E
l'option a été modifiée en -AX
(ACL et attributs étendus)
- l'utilisation de
--fake-super
pour pouvoir copier le fichier en lecture seule lecture seule
Comment l'utiliser sur différents Macs
Si vous voulez faire un rsync sur un Mac distant, vous devrez appeler explicitement la fonction construite rsync
sur le Mac distant avec le --rsync-command
option :
/opt/local/bin/rsync -avAX --fake-super --rsync-command=/opt/local/bin/rsync example remote_MAC:/tmp/example2
0 votes
Qu'est-ce qui est différent sur ces fichiers ? juste le .jpg ou d'autres ?
2 votes
Deux suggestions. Tout d'abord, essayez de lire les attributs étendus avec une autre commande, juste pour vous assurer qu'ils fonctionnent bien à l'extérieur.
rsync
par exemplels -al@ "/Volumes/Scotts Stuff/Backgrounds/chalkboard-black.jpg"
devrait imprimer les noms et les valeurs des attributs pour ce fichier. Est-ce que le nom de l'attribut ou des attributs est correct ? Ensuite, vous pouvez exécuter rsync avec plusieurs paramètres "v" de type verbeux pour obtenir plus de détails sur l'erreur.rsync -aXvvv /Volumes/Scotts\ Stuff/Backgrounds ~/Desktop/Temp
. Cela pourrait vous aider à identifier la source du problème.0 votes
J'ai essayé la commande ls -al@ qui affiche les noms et les tailles des attributs étendus. La plupart des attributs étendus font moins de 300 octets, sauf com.apple.ResourceFork qui fait plus de 87k. Les fichiers qui ont été copiés avec rsync ont aussi com.apple.ResourceFork mais ils ne font que 2 octets. Je ne sais pas si la taille de la fourchette de ressources fait partie du problème.
0 votes
Un point que je n'avais pas mentionné à l'origine est que le volume réseau en question est un volume NAS de Synology. Je ne sais pas si le fait d'être un montage SMB a quelque chose à voir avec cela.