首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >rsync“未能在”XYZ“上设置时间:没有这样的文件或目录(2)

rsync“未能在”XYZ“上设置时间:没有这样的文件或目录(2)
EN

Stack Overflow用户
提问于 2013-08-25 21:06:00
回答 1查看 2.6K关注 0票数 2

我在RAID1中有一个Dlink NAS (dns-323),用于备份家庭照片、视频和其他数据。每当我们向NAS添加大量新文件时,我也会手动地将rsync转到Atom Linux小框上的专用备份驱动器上。我最终在NAS上失去了一次驾驶,并通过我自己的一个失误,也失去了整个卷。没问题,这就是备份驱动器的目的。在替换坏驱动器并创建新的RAID卷后,我反向使用相同的rsync命令将文件还原到NAS。这很有效,只是在命令完成后,我注意到它没有保存时间戳。时间戳保存在NAS->备份方向,而不是备份->NAS方向。

我使用以下选项在Atom Linux框上运行rsync命令(这确实保留了时间戳):

代码语言:javascript
复制
rsync --archive --human-readable --inplace --numeric-ids --delete /mnt/dns-323 /mnt/dlink_backup --progress --verbose --itemize-changes

从备份(没有保留时间戳)恢复卷的反向命令非常类似:

代码语言:javascript
复制
rsync --archive --human-readable --inplace --numeric-ids --delete /mnt/dlink_backup/dns-323/ /mnt/dns-323/ --progress --verbose --itemize-changes

它实际上恢复了文件,但是给出了许多错误,例如:

代码语言:javascript
复制
rsync: failed to set times on "/mnt/dns-323/Rich/Code/.emacs": No such file or directory (2)

整个下午我都在谷歌搜索,尝试不同的东西,但到目前为止还没有解决我的问题。我使用“触摸”命令成功地修改了NAS上一个或两个文件的时间,只是为了证明这是可以完成的,因为我认为rsync必须这样做。我已经尝试过作为我的用户和根用户来执行此操作。我的意思是,我运行了sudo rsync .....rsync --rsync-path='/usr/bin/sudo /usr/bin/rsync' .....,其中.是前面提到的所有参数。我的/etc/fstab分别为NAS和备份驱动器提供了以下条目:

代码语言:javascript
复制
# the dns-323
//192.168.1.202/Volume_1 /mnt/dns-323 cifs guest,rw,uid=1000,gid=1000,nounix,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
# the dlink_backup drive
/dev/sdb /mnt/dlink_backup ext3 defaults 0 0

如果不能简单地保存时间戳并不是绝对重要的,但它似乎应该是可能的--我只是有点困惑。

提前谢谢。如果我能提供更多的信息,请告诉我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-09 15:58:10

因为这次我赢得了我的“卷尾草”徽章。拍背

我学到的是:

我的解决方案

1)从dns-323中删除左侧硬盘驱动器,这是RAID1卷的一半。

2)安装(ext3)这个驱动器使用适配器到我运行rsync的机器上。

3)执行上述还原的rsync命令。我删除了--删除选项,这实际上不应该在那里,我添加了一个选项--只有大小。只有大小的选项使得时间戳基本上是唯一被恢复的东西,因为文件已经恢复正常。

4)从Atom机器卸载左侧驱动器,并将该驱动器返回到dns-323,同时也移除右侧驱动器。正确的驱动器需要被删除,以便dns-323识别RAID卷被降级。

5)将正确的驱动器重新添加到dns-323中,并告诉它重建RAID卷。

6)现在所有的时间戳都是好的。

一种可能的替代解决方案:

我已经阅读了很多关于rsync和NFS/Samba/cifs的文章,了解到这个问题可能与NFS服务器(dns-323)的权限有关。在内部,dns-323中的用户/组ids是501/501。我在Atom框上挂载dns-323的方式不会允许rsync正确地设置时间戳。不过,我确实相信,将我在Atom框上的用户帐户更改为拥有501/501的uid/gid将是有效的。我的用户拥有默认的1000/1000,根用户拥有0/0的IIRC。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18433709

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档