我想运行 rsync 将文件从本地 mac 文件夹复制到公司网络驱动器。要访问网络驱动器,我必须使用与本地用户帐户不同的凭据来安装它。
我怎样才能告诉我的 bash 脚本(运行几个不同的 rsync)以其他用户(我的公司网络用户)的身份运行,以避免出现禁止(13)错误
failed: Permission denied (13)
rsync error: some files could not be transferred (code 23) at /SourceCache/rsync/rsync-45/rsync/main.c(992)
编辑:
好的,所以我在 ~/smb/pfimp/ 创建并安装了共享 - 我可以完美地读取文件,它会在文件服务器上创建文件夹,但它无法复制实际文件。
还有其他建议吗?谢谢
MAC:bin mylocaluser$ rsync -azP --exclude=.DS_Store ~/Documents/Work/Master/Scripts/demo/ ~/smb/pfimp/Scripts/demo
building file list ...
38 files to consider
./
external/
external/workflow.py
1225 100% 0.00kB/s 0:00:00 (xfer#1, to-check=35/38)
external/override/
external/override/before.py
3229 100% 3.08MB/s 0:00:00 (xfer#2, to-check=33/38)
rsync: mkstemp "/Users/mylocaluser/smb/pfimp/Scripts/demo/external/.workflow.py.sEm5kg" failed: Permission denied (13)
rsync: mkstemp "/Users/mylocaluser/smb/pfimp/Scripts/demo/external/override/.before.py.iKs9MS" failed: Permission denied (13)
sent 2811 bytes received 82 bytes 385.73 bytes/sec
total size is 31779 speedup is 10.98
rsync error: some files could not be transferred (code 23) at /SourceCache/rsync/rsync-45/rsync/main.c(992) [sender=2.6.9]
答案1
您可以使用mount_afp
将共享实际安装到您的计算机上,然后使用rsync
(或其他命令)将您的文件复制到共享。
用法:
mount_afp afp://yourserver/yourshare/folder mountpoint
如果你使用 smb 协议,你可以使用mount_smbfs
看mount_afp 的手册页和这个是 mount_smbfs
编辑带有该选项的 rsync-a
存在尝试设置权限的问题,但由于 samba 共享而无法设置。使用该-r
选项可以-a
改变该行为。