系統環境
[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,沒有下面這個文件的自行創建就行
|