服务器多次用io删除文件,解决rsync同步时报IO错误导致无法删除文件的问题

文章介绍了作者在使用rsync同步文件时遇到的IO错误导致无法删除文件的问题。通过分析,发现是rsync在遇到权限不足错误后误报IO错误。解决方案是使用`--ignore-errors`选项,确保rsync在出现错误时仍进行文件删除。此外,还提供了rsync的常用参数供参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2012年3月22日更新:

终于找到问题的根源了,其实算是rsync的一个bug,就是如果收到过多的报告权限不足无法同步的错误后,rsync就会报IO错误跳过删除文件的操作。

要解决这个问题,要么保证不会出现权限不足无法同步的情况,要么,就还是按照我下面的方法来解决。

今天,我在服务器上发现通过rsync同步的文件有问题,在镜像服务器这边的文件没有同步删除,于是在终端手工运行了一下命令,发现有以下报错:

---

IO error encountered -- skipping file deletion

---

看样子是提示IO错误,因此跳过了文件删除选项。于是赶忙到服务器上检查是否真的存在IO错误,结果答案是,根本就没有IO问题,主服务器和镜像服务器的对应文件夹下创建和删除文件,都没问题。

于是仔细查看了一下rsync的参数,发现有一个选项是:

---

--ignore-errors 即使出现 I/O 错误也进行删除

---

于是加上了这个参数,再次执行同步,问题解决了。

但是至于为什么rsync会误报这个错误,目前我还没有找到原因,如果有哪一位知道的话,欢迎解惑。

下面,顺便附上rsync的常用参数选项,方便大家参考:

选项

说明

-a, --archive

归档模式,表示以递归方式传输文件,并保持所有文件属性,等价于 -rlptgoD (不包括 -H)

-r, --recursive

对子目录以递归模式处理

-l, --links

保持符号链接文件

-H, --hard-links

保持硬链接文件

-p, --perms

保持文件权限

-t, --times

保持文件时间信息

-g, --group

保持文件属组信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值