日期:2014-05-16  浏览次数:20709 次

关于在ksh中使用ftp的一个问题
本帖最后由 u010052064 于 2013-03-27 13:43:04 编辑
B服务器上有一个10G左右的文件夹(里面很多子文件夹和文件)
想从A服务器上用ftp连接到B服务器上,将该文件夹拷贝过来。发现ftp只能考文件不能考文件夹,现有的方法是:
现在的方法是在B上新开个客户端,然后用 tar -cvf 和 compress 将整个文件夹打包 , 然后再从A服务器连去B服务器用ftp拷贝。 想问下能不能直接在A服务器上实现对B服务器上的文件夹的打包和压缩 ?
比如:
ftp -n <<EOF
open B 
user xxxxx
cd 文件夹路径
打包,压缩文件夹
mget 
bye
<<EOF

或者大侠们有没有其他更好的方法来实现此功能, 谢谢
unix中使用ftp

------解决方案--------------------
ftp不能在远程执行shell命令,可以先telnet或ssh连接远程主机执行打包命令
------解决方案--------------------
楼上说的对啊,先ssh或者telnet到B 打包好了再ftp上去拿。
------解决方案--------------------
引用:
发现了这样一条命令,不用ssh或者ftp都可直接从B服务器上拷贝整个文件夹到A上:
scp -r user@B:/test/ .
非常有用啊,同大家分享了

如果是一次性的复制,scp就够了。
如果是定期备份,推荐rsync
------解决方案--------------------
引用
我试了下用ssh username@B  但是要我手动输入密码进去后

不管是ssh还是scp,要不要输密码取决于有没有设置好ssh key