解決centos中vsftpd中文亂碼


系統環境

[root@augusite yum.repos.d]# cat /etc/redhat-release

CentOS Linux release 7.2.1511 (Core)

軟件版本

[root@augusite yum.repos.d]# vsftpd -v

vsftpd: version 3.0.2

ftp服務器文件上傳之后,部分中文字體會變成亂碼

 

1、首先在http://vault.centos.org/上下載和自己系統相符的vsftpd的源碼包

使用wget http://vault.centos.org/7.4.1708/os/Source/SPackages/vsftpd-3.0.2-22.el7.src.rpm進行文件下載

 

 

2、使用useradd mockbuild 命令先建一個mockbuild用戶,因為待會安裝的時候會默認使用使用這個用戶

3、用戶建立后再使用rpm -ivh vsftpd-3.0.2-22.el7.src.rpm進行源碼的安裝

4、安裝完成后當前目錄會產生一個名為rpmbuild的目錄,進入rpmbuild/SOURCES中,解壓vsftpd-3.0.2.tar.gz文件

 

 

5、解壓完成后進入vsftpd-3.0.2目錄中,使用vi 修改features.c文件,將底部使用vsf_cmdio_write_raw(p_sess, " UTF8\r\n");注釋掉。

 

 

6、修改完成后再修改opt.c文件

 

 

7、修改完成后返回上一層,使用 tar -zcvf vsftpd-3.0.2.tar.gz vsftpd-3.0.2/命令對vsftpd-3.0.2目錄進行壓縮

8、壓縮完成后返回上一層,進入SPECS/目錄下rpmbuild -bb vsftpd.spec命令生成新的vsftpd rpm安裝包

在打包之前先使用yum -y install rpm-build和 yum -y install rpmdevtools安裝打包環境

使用rpmbuild -bb vsftpd.spec進行打包

此時會出現如下依賴錯誤,然后只要使用yum分別安裝它們就好了

 

yum -y install pam-devel libcap-devel openssl-devel tcp_wrappers-devel

 

 

最后使用rpmbuild -bb vsftpd.spec再進行打包操作就OK了(一定要確認已經安裝gcc)

打包完成后就可以在rpmbuild/RPMS/x86_64目錄下看到新生成的vsftpd包了

9、使用rpm -ivh vsftpd-3.0.2-22.el7.centos.x86_64.rpm安裝新生成的vsftpd軟件包

10、修改Linux系統字符集為zh_CN.GB18030,沒有下面這個文件的自行創建就行

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM