主要原因是因為windows和linux端檔案名編碼不同導緻的!
rsync在3.0版本之後,提供了一個選項,可以進行檔案編碼的轉換,格式如下:
--iconv=<local>,<remote>
local指本地編碼,remote指遠端機器編碼,參考示例如下:
從linux sersync推到windows時:
linux端sersync confxml.xml配置<commonparams params="-avzp --iconv=gbk,utf-8"/>
windows端rsyncd.conf配置檔案中添加charset = utf-8
windows端從linux端拉過來時:
windows端cwrsync要有--iconv=utf-8,gbk選項
linux端rsyncd.conf要添加charset = gbk
遇到問題:從linux推到windows端時,中英文的檔案都正常,但是如果在linux端删掉檔案,windows端的中文檔案不會被删除!