红联Linux门户
Linux帮助

Linux两主机之间快速传输大量小文件

发布时间:2017-03-15 11:42:37来源:linux网站作者:xiaoyi23000
1、两主机之间传输文件可以通过SCP命令进行传送,scp就是secure copy,用于将文件和目录从一个Linux系统传递至另一个Linux系统,scp传输数据用的是SSH协议。
1.远程复制到本地系统
scp 远程用户名@ip地址:本地绝对路径文件名称
2.本地文件和路径复制到远程系统上
scp 本地系统文件 远程用户名@ip地址:远程文件系统路径
 
2,在网络环境中传输时,可以再结合nc命令,通过管道和tcp端口进行传输。
nc和tar可以用来快速的在两台机器之间传输文件和目录,比ftp和scp要来得简单的多。
由于nc是一个超轻量的命令,所以一般busybox都会集成它。当一个linux终端,比如linux pda,通过usblan的方式连接到另一台linux主机的时候,这样的嵌入式终端上一般不会集成ftp server, ssh server这样比较笨重的服务,这个时候, nc可能成为唯一的上传手段。
比如将A主机(192.168.0.10)上的文件传送到 B主机(192.168.0.11)上,只需要:
在B主机上,用nc来监听任意一个端口,随便就好,只要不被占用并且A、B两主机之间的端口防火墙开通即可;
并且将收到的数据用tar展开。-l代表监听模式。
在B主机(192.168.0.11)启动nc的端口监听,并将接收到的文件包解压
nc -l 8888 |tar -zxf -  -C /home
然后在A主机上使用tar命令打包
tar -zcf -  /home/mytest | nc 192.168.0.11 8888  #- 一定不要忽略,表示使用内存,不落地
tar: Removing leading `/' from member names   #不是错误,是tar删除了绝对路径最开始 / 而进行的提示
等待传输完毕即可。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/29200.html