一、解压 vsftpd-3.0.3.tar.gz 并进入到解压后的目录:
[root@RicenOS ftp]# tar xvf vsftpd-3.0.3.tar.gz
[root@RicenOS ftp]# cd vsftpd-3.0.3
针对 64 位系统,需要修改 vsf_findlibs.sh 文件:
[root@RicenOS vsftpd-3.0.3]# vi vsf_findlibs.sh
输入命令::%s?lib/?lib64/?
然后保存。接着,修改相关的 lib 链接:
[root@RicenOS vsftpd-3.0.3]# rm -rf /lib/libpam.so.0
[root@RicenOS vsftpd-3.0.3]# ln -s /lib64/libpam.so.0 /lib/libpam.so.0
对于 32 位系统,上述步骤可以省略。
二、编译:
[root@RicenOS vsftpd-3.0.3]# make
针对 6.5 版本的 RHEL,这里编译完以后,是没有加载到 libpam.so.0 这一动态库文件,这会导致虚拟用户 530 登录失败。可以使用如下命令来查看是否成功加载了 libpam.so.0 这一动态库文件:
[root@RicenOS vsftpd-3.0.3]# ldd vsftpd
针对 6.5 版本 RHEL 的这一问题,只需要安装 pam-devel 软件包,然后重新编译下即可。
[root@RicenOS softwares]# rpm -ivh pam-devel-1.1.1-17.el6.x86_64.rpm
三、拷贝相关的文件:
[root@RicenOS vsftpd-3.0.3]# cp vsftpd /usr/local/sbin/vsftpd
[root@RicenOS vsftpd-3.0.3]# mkdir -pv /usr/local/man/man5
[root@RicenOS vsftpd-3.0.3]# mkdir -pv /usr/local/man/man8
[root@RicenOS vsftpd-3.0.3]# cp vsftpd.conf.5 /usr/