今天在整理文件时遇到了下面的错误:
rsync: mkstemp "/abc/def.txt.dm1u5x" failed: Operation not permitted (1)
说说我的情况,我的 /abc 目录是一个独立的 mount point,只有200M大小,空的;而需要备份的源文件共190M左右。在同步文件时,我使用的命令是:
rsync -av --progress /src/ /abc/
结果就出现了文章开头的错误提示,现象是所有目录都建立成功了,但文件没有同步。
最初我也十分不解为什么会出现这样的错误,非常奇怪,一时也没有头绪,甚至放弃了rsync直接使用了cp -Rv解决问题,但想来想去就是不爽啊!!!
上网搜索了一下这个错误提示,结果一篇ubuntu论坛的帖子的回复给我带来决定性的启发!
[url]http://ubuntuforums.org/showthread.php?t=87038[/url]
+-------------------
-------------------------------------
Re: backup using rsync to usb disk (vfat) problem
First of all, what is 'mkstemp' - do you mean 'mktemp'?
Are you sure that you have r/w permissions for your vfat partition?
__________________
When someone says 'I cannot do this in Linux, the limitation is not in the software, but simply in their knowledge.'
Linux User - 380191
+-------------------
-------------------------------------
是啊,mkstemp 是什么呢?从字面理解是创建临时文件,oh my god!
马上查看了 rsync 的命令帮助,果然发现了指定临时目录的参数,于是重新使用 rsync 同步文件:
rsync -av --progress --temp-dir=/tmp /src/ /abc/
文件同步成功啦!
回过头来分析一下错误,应该是 rsync 默认以同步的目标目录作为缓存区创建临时文件以实现同步操作过程中的各种判断、比较、分析等后台操作。
但是,我要同步的目标目录只有200M,却要复制190M的文件进去,很可能 rsync 是要将所有文件先复制为 tmp 形式,再转换成正式文件,因此,目标区域应该至少是源文件体积的2倍才合适。
因此,我采用的解决方法是将 tmp 转移到其它存储位置,这样就解决了目标文件夹空间不足的问题。
(*注:以上分析没有实验或深入研究证实)
分享到:
相关推荐
今天在同步数据的时候提示rsync: failed to set times on “xxxx”: Operation not permitted,一般来说要不是服务器时间不对或者权限没有设置好
ranger-2.1.0-usersync.tar.gz
rsync-3.0.9.tar.gz linux 文件远程同步工具; 适用于centos,red hat
Rsync version 3.0.7 has been released. This is a bug-fix release. See the release NEWS for the details of what changed since 3.0.6. The latest manpages are also available for both rsync and rsyncd....
rsync-3.1.3.tar.gz source收藏 rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH、rsync主机同步。
linux系统文件实时同步工具,小巧好用,占用资源少。今天使用到了,在CSDN上没有找到,找到后即可上传,供大家使用
linux系统备份软件rsync-3.0.4.tar.gz
ranger-2.2.0-usersync编译结果包,其他包可搜ranger-2.2.0相关信息
Rsync version 3.2.3
rsync的安装版本
rsync参数详解 rsync [OPTION]... SRC DEST rsync [OPTION]... SRC [USER@]HOST:DEST rsync [OPTION]... [USER@]HOST:SRC DEST rsync [OPTION]... [USER@]HOST::SRC DEST rsync [OPTION]... SRC [USER@]HOST::...
rsync,提供目录或文件的同步服务。可以用于linux系统,使用方法可以百度。
linux文件同步工具,
MacOSX系统技巧:用Rsync备份文件.docx
window Git完美使用rsync.assets.7z
安装Inotify+rsync并测试.doc安装Inotify+rsync并测试.doc安装Inotify+rsync并测试.doc
Apache Ranger™是一个框架,用于在整个Hadoop平台上启用,监视和管理全面的数据安全性。 Ranger的愿景是在Apache Hadoop生态系统中提供全面的安全性。随着Apache YARN的出现,Hadoop平台现在可以支持真正的数据湖...
用于服务器之间的数据同步和备份