我必须在 FTP 服务器上传输一些视频和照片。
为此,远程计算机上的人员向我提供了我必须传输的那台计算机的 IP 地址。他告诉我通过FTP传输。他向我提供了相同的用户名和密码。
他期望我本地有 Windows 操作系统,所以他告诉我如何在本地机器上安装 FTP 应用程序。但实际上我这里有Ubuntu13.04。
现在,我打开一个终端并输入ftp
远程盒子的 IP 地址。我已连接没有提示输入用户名和密码。然后我通过FTP传输文件。
两天后,我ftp
登录到那台机器,我可以看到我传输的文件。但是,远程用户告诉我他没有收到任何信息!
到目前为止,我一直认为他没有正确检查他的机器是他的错误,因为我 100% 确定这些文件在他的系统中,正如我之前通过 FTP 到该机器所确认的那样。
今天我想到他也可能是对的,问题是他没有看到这些文件可能与他发给我的用户名和密码有关。
由于我没有使用他的用户名(他提供给我的用户名)通过 FTP 登录,这是否是他期望文件上传到与我传输的位置不同的特定位置的原因?换句话说,文件上传的位置是否取决于我使用的用户名,即位置取决于用户名?
如果是这样,那么如何使用ftp
指定特定的用户名?
答案1
看来FTP服务器允许匿名FTP:FTP,其中用户名是常规的anonymous
,并且接受每个密码。您的 FTP 客户端尝试匿名 FTP 登录,并且成功。这些文件位于匿名用户的默认目录中;这是由 FTP 服务器配置决定的。
匿名 FTP 通常用于公共下载站点。允许匿名用户上传的情况很少见,并且存在网站被用于恶意软件分发的风险。您应该建议服务器所有者禁用匿名 FTP 或至少禁用匿名用户的上传。
以下是使用用户名和密码登录的一些方法,而不是尝试匿名登录。有些方法并不适用于所有 FTP 客户端。
创建一个
.netrc
您的主目录中包含该行的文件machine server.example.com login ravi
运行或以用户身份登录。
ftp [email protected]
ftp ftp://[email protected]/
ravi
运行
ftp -n
选项以禁用此会话的自动登录。
答案2
请阅读联机帮助页man 1 ftp
。
在那里你会找到选项-n