Chinaunix首页 | 论坛 | 博客
  • 博客访问: 630313
  • 博文数量: 197
  • 博客积分: 4858
  • 博客等级: 上校
  • 技术积分: 2162
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-06 22:46
文章分类

全部博文(197)

文章存档

2011年(30)

2010年(21)

2009年(25)

2008年(80)

2007年(41)

分类: BSD

2010-01-07 16:37:20

使用iconv参数进行转换,可解决中文文件名乱码问题,使用参数
--iconv=locale_charset,remote_charset
rsync for Linux 3.0 ,rsync for Windows (cwRsync_Server) 2.14以上版本 支持,需要客户端服务端都是新版本
服务端配置文件需要加上:
charset=gb2312
否则客户端无法使用--iconv参数

使用以下命令双向同步:
rsync -rvzt -u --update -i --iconv utf8,gb2312 nobody@91linux.cn::test /data/Test
rsync -rvzt -u --update -i --iconv utf8,gb2312 /data/Test/*

我的服务端是freebsd6.2,要转换字符

#setenv LANG gb2312

#locale
LANG=gb2312
LC_CTYPE="C"
LC_COLLATE="C"
LC_TIME="C"
LC_NUMERIC="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_ALL=

同时rsyncd.conf里边要加上:charset=gb2312

然后/usr/local/etc/rc.d/rsyncd restart

那么客户端使用:

rsync -avzP --iconv=utf-8,gb2312 /test

这样就可以把服务端的中文正确的同步过来。

 
 
顺便看一下这里:Freebsd解决乱码问题。
 
阅读(1349) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~