我的 Arch Linux 4.20.2 可以毫无问题地提供文件vsftpd
的默认根目录,/srv/ftp/
.
我对配置文件所做的唯一添加/etc/vsftpd.conf
是
seccomp_sandbox=NO
这可以消除访问文件时 Firefox 中显示的以下错误:
500 失败:priv_sock_get_cmd
这一切都很棒,但我想提供来自不同目录的文件,例如/home/jenkins
.
咨询的手册vsftpd.conf
,我将其添加到/etc/vsftpd.conf
:
anon_root=/home/jenkins/
为了让改变生效,我打电话给systemctl restart vsftpd
。
然而,vsftpd
(我使用的是 3.0.3 版本)仍然在其默认根目录 中提供文件/srv/ftp/
。
这是怎么回事?
答案1
事实证明,systemctl restart vsftpd
并没有使改变生效。
使用pgrep vsftpd
,我观察到生成的三个进程中有两个systemctl start vsftpd
在我调用后仍然存活systemctl restart vsftpd
。这就是为什么旧配置仍在使用的原因。
解决方案是调用
pkill vsftpd; systemctl start vsftpd
现在,提供withvsftpd
中指定的目录下的文件/etc/vsftpd.conf
anon_root=/home/jenkins/
代替默认根目录中的文件/srv/ftp/
。