我有一台运行 Apple smb 的老旧 mac os X 10.7.5 服务器。我想将文件共享从它安装到新的文件服务器 (ubuntu 16.04.2),并将旧 mac 共享中的所有内容 rsync 到新服务器。我可以使用以下 mount 命令成功安装共享:
sudo mount -t cifs //ServerIP/Groups /mnt/Server_backup -o "ro,credentials=/root/.secret_smbpw"
并可以浏览共享及其目录。
但是,运行:
sudo rsync -a /mnt/Server_backup /New_Groups_Share
失败Permission denied (13)
我尝试将 ubuntu 用户添加到拥有 Mac 上文件共享的组,但仍然出现问题。
当我在 ubuntu 机器上运行 mount 命令时(共享已挂载后),我可以看到现有的挂载选项:
/mnt/Server_backup type cifs (ro,relatime,vers=1.0,cache=strict,username=Ubuntu_User,domain=Mac_host_name,uid=0,noforceuid,gid=0,noforcegid,addr=ServerIP,file_mode=0755,dir_mode=0755,nounix,mapposix,rsize=61440,wsize=65536,actimeo=1)
我的最终目标是让 rsync 每晚运行,以将旧文件服务器和新服务器上的共享同步,直到我可以安排办公室切换到新服务器的日期。
提前致谢,
马克
答案1
显然,rsync 进程必须对同步到的文件系统具有 POSIX 读/写权限. 首先检查显而易见的问题:rsync 以什么用户身份运行,该用户是否具有读/写权限?
父目录
由于 rsync 正在创建临时文件(除非你使用 --inplace),因此该过程还必须具有父目录中的写权限. 在上面的例子中,rsync 应该对 /my/path/ 具有写权限。
答案2
看起来您在挂载命令中将共享挂载为只读。尝试以 rw 方式挂载