web-dev-qa-db-ja.com

vsftpdが起動しない: "systemd [1]:vsftpd.service:メインプロセスが終了しました、コード= exited、ステータス= 2 / INVALIDARGUMENT"

Arch LinuxがインストールされたRapsberry Pi B +を持っています。 unameレポートバージョン:

[computer@computer001 ~]$ uname -a
Linux computer001 3.18.3-3-Arch #1 PREEMPT Mon Jan 26 20:10:28 MST 2015 armv6l GNU/Linux

pacman -S vsftpd経由でFTPサーバーをインストールしましたが、インストールはエラーなしで成功しました。それから私はそれを設定しようとしました、それは以下のvsftpd.confをもたらしました:

anonymous_enable=NO
local_enable=YES
write_enable=YES
#local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
chown_username=computer
#xferlog_file=/var/log/vsftpd.log
#xferlog_std_format=YES
#idle_session_timeout=600
#data_connection_timeout=120
#nopriv_user=ftpsecure
#async_abor_enable=YES
#ascii_upload_enable=YES
#ascii_download_enable=YES
ftpd_banner=Welcome to personal ftp service.
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd.banned_emails
#chroot_local_user=YES
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
ls_recurse_enable=YES
listen=YES
#listen_ipv6=YES

vsftpdを再起動しようとすると、次のようになります。

[computer@computer001 etc]$ Sudo systemctl restart vsftpd.service && systemctl status -l vsftpd.service
* vsftpd.service - vsftpd daemon
   Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Thu 1970-01-01 06:32:24 UTC; 112ms ago
  Process: 350 ExecStart=/usr/bin/vsftpd (code=exited, status=2)
 Main PID: 350 (code=exited, status=2)

以下は、Sudo journalctl | grep -i vsftpの出力でもあります。

Jan 01 06:32:24 computer001001 Sudo[347]: computer001 : TTY=pts/0 ; PWD=/etc ; USER=root ; COMMAND=/usr/bin/systemctl restart vsftpd.service
Jan 01 06:32:24 computer001001 systemd[1]: Starting vsftpd daemon...
Jan 01 06:32:24 computer001001 systemd[1]: Started vsftpd daemon.
Jan 01 06:32:24 computer001001 systemd[1]: vsftpd.service: main process exited, code=exited, status=2/INVALIDARGUMENT
Jan 01 06:32:24 computer001001 systemd[1]: Unit vsftpd.service entered failed state.
Jan 01 06:32:24 computer001001 systemd[1]: vsftpd.service failed.

ユニットスクリプト/usr/lib/systemd/system/vsftpd.serviceは次のとおりです。

[Unit]
Description=vsftpd daemon
After=network.target

[Service]
ExecStart=/usr/bin/vsftpd
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process

[Install]
WantedBy=multi-user.target

Sudo /usr/bin/vsftpdを実行すると、次のエラーが発生します。

500 OOPS: config file not owned by correct user, or not a file

/etc/vsftpd.confを介してSudo chown root:root /etc/vsftpd.confのファイル権限を修正し、手動でサーバーを起動しました。また、日付/時刻が正しくないことも認識しています。まだ設定していません。何が欠けていますか?

4
KernelPanic

/etc/vsftpd.confの権限をroot:rootを介してSudo chown root:root /etc/vsftpd.confにリセットしました。これでvsftpdサーバーがSudo systemctl restart vsftpd.serviceを介して開始され、Sudo /usr/bin/vsftpdを介して手動で実行できます。

1
KernelPanic

ステップ1:vsftpd.confを確認

listen=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem

ステップ2:どのFTPサービスが実行されているかを表示するには

$ lsof -i | grep ftp 

ステップ3:xinetdを停止するには

$ Sudo service xinetd stop

ステップ4:xinetdを停止した後、次のように入力してvsftpdサービスを再起動します

$ /etc/init.d/vsftpd restart
3
Siva Jack