今天在linux redhat7.2下執行service vsftpd start一直不能開啓vsftpd服務,本來懷疑SELINUX的問題(其他ftp下載問題可以看下我的另外一篇博客Linux下ftp常見問題總結),具體錯誤如下
[root@localhost trainborne]# service vsftpd start
Redirecting to /bin/systemctl start vsftpd.service
Job for vsftpd.service failed because the control process exited with error code. See "systemctl status vsftpd.service" and "journalctl -xe" for details.
接着我查看下狀態出現如下這個錯誤[root@localhost trainborne]# service vsftpd status
Redirecting to /bin/systemctl status vsftpd.service
● vsftpd.service - Vsftpd ftp daemon
Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled; vendor preset: disabled)
Active: inactive (dead)
Nov 27 15:33:42 localhost.localdomain vsftpd[9183]: warning: can't get client address: Socket operation on non-socket
Nov 27 15:33:42 localhost.localdomain systemd[1]: vsftpd.service: control process exited, code=exited status=2
Nov 27 15:33:42 localhost.localdomain systemd[1]: Failed to start Vsftpd ftp daemon.
Nov 27 15:33:42 localhost.localdomain systemd[1]: Unit vsftpd.service entered failed state.
Nov 27 15:33:42 localhost.localdomain systemd[1]: vsftpd.service failed.
Nov 27 15:35:01 localhost.localdomain systemd[1]: Starting Vsftpd ftp daemon...
Nov 27 15:35:01 localhost.localdomain systemd[1]: Started Vsftpd ftp daemon.
Nov 27 15:35:37 localhost.localdomain systemd[1]: Stopping Vsftpd ftp daemon...
Nov 27 15:35:37 localhost.localdomain systemd[1]: Stopped Vsftpd ftp daemon.
Nov 27 15:35:38 localhost.localdomain systemd[1]: Stopped Vsftpd ftp daemon.
出現該問題主要是因爲vsftpd.conf配置文件(具體目錄/etc/vsftpd/vsftpd.conf)出現了問題,解決方法:1.修改vsftpd.conf裏面字段listen = NO=> listen=YES
2.將listen_ipv6=YES改爲listen_ipv6=NO或者直接#listen_ipv6=YES屏蔽掉
3.netstat -anp |grep 21(查看下21端口是否被佔用,一般ftp都是21端口,如果佔用,將listen_port改爲其他端口)