Windows客户端访问FTP应用服务器出现
乱码。
这是由于UTF-8与GBK不兼容而头疼的引起的,采用
源码方式编译安装就可将此问题解决。
乱码解决过程:
1、首先使用rpm-evsftpd卸载系统安装的默认VSFTPD应用服务器:
[root@localhost~]#rpm-evsftpd
2、从http://vault.centos.org/6.3/updates/Source/SPackages/网站下载vsftpd-2.2.2-11.el6_3.1.src.rpm源码包。
3、使用rpm-ivhvsftpd-2.2.2-11.el6_3.1.src.rpm对该包进行安装:
[root@localhostbirdofprey]#rpm-ivhvsftpd-2.2.2-11.el6_3.1.src.rpm
安装过程中系统会提示类似如下错误:
warning:vsftpd-2.2.2-11.el6_3.1.src.rpm:HeaderV3RSA/SHA1Signature,keyIDc105b9de:NOKEY
1:vsftpdwarning:usermockbuilddoesnotexist-usingroot
###########################################[100%]
warning:usermockbuilddoesnotexist-usingroot
warning:groupmockbuilddoesnotexist-usingroot
warning:usermockbuilddoesnotexist-usingroot
warning:groupmockbuilddoesnotexist-usingroot
warning:usermockbuilddoesnotexist-usingroot
warning:groupmockbuilddoesnotexist-usingroot
此时需要使用addusermockbuild命令创建mockbuild用户:
[root@localhostbirdofprey]#addusermockbuild
4、重新使用rpm-ivhvsftpd-2.2.2-11.el6_3.1.src.rpm对该包进行安装:
[root@localhostbirdofprey]#rpm-ivhvsftpd-2.2.2-11.el6_3.1.src.rpm
warning:vsftpd-2.2.2-11.el6_3.1.src.rpm:HeaderV3RSA/SHA1Signature,keyIDc105b9de:NOKEY
1:vsftpd###########################################[100%]
5、使用命令cd/root/rpmbuild/SOURCES/vsftpd/SOURCES进入vsftpd源码包目录,并使用tar-zxvfvsftpd-2.2.2.tar.gz解压vsftpd-2.2.2.tar.gz源码包:
[root@localhostSOURCES]#tar-zxvfvsftpd-2.2.2.tar.gz
6、使用命令cdvsftdp-2.2.2进入vsfftpd-2.2.2源码目录:
[root@localhostSOURCES]#cdvsftpd-2.2.2
7、使用命令vifeatures.c修改features.c文件;将行内容为:vsf_cmdio_write_raw(p_sess,"UTF8\r\n");
修改为://vsf_cmdio_write_raw(p_sess,"UTF8\r\n")。
8、使用命令viopts.c修改opts.c文件;
将handle_opts函数修改成如下:
复制代码