rsync 同步失败报 writefd_unbuffered failed

今天做 RSYNC 同步遇到一个奇怪的问题 , 现象是一开始可以正常同步, 过一段时间后就断开并报错 :
rsync: connection timeout
rsync: connection unexpectedly closed (xxxx bytes received so far)
rsync error: error in rsync protocol data stream (code 12) at io.c(463)
rsync: writefd_unbuffered failed to write 4092 bytes [generator]: Broken pipe
rsync error: unexplained error (code 255) at io.c(1119) [generator=2.6.8]

一开始怀疑是服务器网络问题,造成不稳定, 不停重试之下问题依旧:

以下为排查过程:

1. 找个备用机对该服务器做 rsync 同步没发生任何问题, 证明服务器可能没问题

2. 修改 rsync 参数至最简单的 rsync -av

问题依旧, google 后说是 MAC 地址变更造成, 我确实有改过 MAC 地址, 想想觉得不对, 继续查

最终定位到内核参数上, 前段时间修改 lvs 的 hash table size 编译内核的时候改了 arp 相关的配置:

net.ipv4.conf.all.arp_ignore = 0
net.ipv4.conf.default.arp_ignore = 0
net.ipv4.conf.eth0.arp_ignore = 0
net.ipv4.conf.lo.arp_ignore = 0

问题解决, 坑爹 ....

 

你可能感兴趣的:(rsync 同步失败报 writefd_unbuffered failed)