我正在练习 ftp 但遇到了一个问题: ls 命令在 ftp> 上不起作用。为什么?我检查了 2 个远程服务器,但 ls 对任何一个服务器都不起作用,并且在执行 ls 时给出了不同的输出。请参阅下面的 2 个遥控盒。
下面显示了我今天安装 vsftpd 的远程服务器。
ravbholua@ravbholua-Aspire-5315:~$ ftp rs
Connected to ravi.com.
220 (vsFTPd 3.0.2)
Name (rs:ravbholua):
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257 "/home/ravbholua"
ftp> ls
500 Illegal PORT command.
ftp: bind: Address already in use
ftp>
Run Code Online (Sandbox Code Playgroud)
以下是我必须发送一些文件的另一台远程机器。但是由于 ftp> 上的 ls 不起作用,我将如何将文件从本地盒子传输到该盒子,因为没有 ls 无法确认文件是否已传输。
ravbholua@ravbholua-Aspire-5315:~$ ftp 125.21.153.140
Connected to 125.21.153.140. …Run Code Online (Sandbox Code Playgroud) 我有一个安装有虚拟用户的纯 ftpd 的 debian。
我在我的设置中使用了文档,所以纯 ftpd 的本地帐户是 ftpuser:ftpgroup 当用户上传文件时,该文件归 ftpuser:ftpgroup 所有。我希望上传的文件归另一个系统用户(mylocaluser)所有。我以这种方式添加了我的虚拟用户:
pure-pw useradd uploadimages -u mylocaluser -d /var/www/mysite/current/images
Run Code Online (Sandbox Code Playgroud)