ftpd可以';以非根用户身份连接时,请不要更改根目录

ftpd可以';以非根用户身份连接时,请不要更改根目录,ftp,permissions,embedded-linux,busybox,Ftp,Permissions,Embedded Linux,Busybox,我有一个运行linux的嵌入式系统,我安装了用于运行不同服务的busybox。其中一个服务是ftpd,我从etc/init.d/rcS文件开始这样做: tcpsvd 0.0.0.0 21 ftpd -w -v /mnt/flash& 我在系统中有两个用户,root用户和一个普通用户。Root用户可以轻松连接到FTP服务器,但当我尝试使用普通用户的凭据登录时,会出现以下错误: ftpd[678]: can't change root directory to '/mnt/flash':

我有一个运行linux的嵌入式系统,我安装了用于运行不同服务的
busybox
。其中一个服务是
ftpd
,我从
etc/init.d/rcS
文件开始这样做:

tcpsvd 0.0.0.0 21 ftpd -w -v /mnt/flash&
我在系统中有两个用户,root用户和一个普通用户。Root用户可以轻松连接到FTP服务器,但当我尝试使用普通用户的凭据登录时,会出现以下错误:

ftpd[678]: can't change root directory to '/mnt/flash': Operation not permitted
现在,我认为这一定是一个目录权限问题,我首先更改了
/mnt/flash
目录上的权限,但在这不起作用之后,我最终将文件系统中的所有文件(包括
/
)都归这个普通用户所有,并拥有DRWXRWT权限(只是为了找到问题的原因)。但我仍然得到这个错误

我还尝试使用不同的根文件夹启动ftpd,包括
/

我在我的文件系统中也找不到ftpd的任何配置文件,也许我需要手动创建一个?如果是,是哪一个,以及如何告诉ftpd允许用户登录


非常感谢您的帮助。谢谢。

在尝试了一些随机操作后,我发现如果根本不涉及目录更改,用户登录就可以正常工作:

tcpsvd 0.0.0.0 21 ftpd -w -v &
我怀疑
chroot
是以其他方式调用的,用户无权这样做