除了标题中的内容之外,我还能够成功地将ncftp转换成不同的服务器。 但在服务器A上,我得到了这个
无法连接到xxx.xxx.xxx.xxx – 稍后重试:连接超时。
无限期。 这些是Ubuntu 10.04,64位服务器。 是否有一些服务器端的设置,我需要在服务器A上更改以使其工作? (如果有人想知道,我需要ncftp,因为它允许我上传一个子目录的目录,而(s)ftp显然没有办法做到这一点。)
ssh和sftp使用端口22 / tcp在远程主机上使用ssh守护程序进行连接,而FTP是完全独立的协议/服务,使用其他端口。 要允许ncftp正常工作,必须确保远程服务器使用正确configuration的FTP守护程序(例如proftpd,vsftpd,ncftpd),并且防火墙策略不会阻止您正在连接的任何一台计算机上的/传出访问,或者服务器。
在你的情况下,你可能想使用scp ,在ssh工具箱中的另一个工具。 它允许你通过sshrecursion复制目录。 只要使用这个语法:
scp -r folder/ [email protected]:
它将以recursion方式将名为folder的文件folder复制到remote.host上的用户帐户user 。 它的重要性包括:在主机名之后,它的scp希望看到它,否则它会尝试将文件夹复制到源/本地计算机上名为[email protected]的文件中。
您也可以使用scp复制单个文件,当然。
这听起来像你没有安装在你的Ubuntu服务器上的FTP服务器。 尽pipe它们看起来有多相似,SFTP和FTP是两个不兼容的协议。 如果您想使用ncftp连接到服务器,则需要在服务器上安装FTP服务器。 apt-get install vsftpd将在Ubuntu上安装vsftp服务器。
sftp本身不是“ftp”,而是一个提供命令行FTP-ish接口的文件传输应用程序。 ncftp是一个“真正的”ftp客户端,它使用FTP协议。 您将需要打开ftp服务。 看看这个区别: http : //en.wikipedia.org/wiki/Secure_file_transfer_program
这里是关于vsftpd的Ubuntu文档:
最后我检查了一下,ncftp通过标准的ftp协议进行通信。 默认情况下,SFTP通信vi ssh协议。
更有可能的是,机器上没有安装FTP服务器。 你可能需要安装,虽然我可能会build议你只要坚持使用SFTP,如果你可以帮助它,因为FTP传输数据清除。