博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux主机之间传输文件的几种方法对比
阅读量:5787 次
发布时间:2019-06-18

本文共 1231 字,大约阅读时间需要 4 分钟。

1.scp传输

scp -r /data/file root@ip:/data/

scp -C /data/sda.img root@ip:/data/img/
#-r: 支持目录
#-C: 启用压缩传送

scp传输速度较慢,但使用ssh通道保证了传输的安全性

2.rsync差异化传输(支持断点续传,数据同步)

rsync -avz /data/ -e ssh root@192.168.1.110:/data

#-a: archive归档模式,表示以递归方式传输文件,并保持所有文件属性,链接等,等于-rlptgoD

rsync——remote sync。rsync是Linux系统下的文件同步和数据传输工具,它采用“rsync”算法,可以将一个客户机和远程文件服务器之间的文件同步,也可以在本地系统中将数据从一个分区备份到另一个分区上。如果rsync在备份过程中出现了数据传输中断,恢复后可以继续传输不一致的部分。rsync可以执行完整备份或增量备份。它的主要特点有:

a.可以镜像保存整个目录树和文件系统;
b.可以很容易做到保持原来文件的权限、时间、软硬链接;无须特殊权限即可安装;
c.可以增量同步数据,文件传输效率高,因而同步时间短;
d.可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接;
e.支持匿名传输,以方便进行网站镜象等;
f.加密传输数据,保证了数据的安全性;

3.管道传输(降低IO开销)

gzip -c sda.img | ssh root@ip "gunzip -c - > /image/sda.img"

#对sda.img使用gzip压缩,-c参数表示输出到stdout,即通过管道传送
#gunzip -c - 中的"-"表示接收从管道传进的sdtin

4.nc传输(一种网络的数据流重定向)

nc所做的就是在两台电脑之间建立tcp或udp链接,并在两个端口之间传输数据流,是一种网络的数据流重定向

发送端:
cat /data/test.txt | nc -l -p 123456 或者
nc -l -p 12345 < /data/test.txt
接受端:
nc ip 12345 >/data/test1.txt
如上面的操作,即可将文件test.txt从发送端传送到接收端,保存为test1.txt

5.建立文件服务器

除了上面集中传输文件的方式之外,还可以通过简历文件服务器,然后通过网络挂载的方式传输,这种适用于经常性的拷贝,下面是一个挂载ftp服务器的例子

挂载ftp服务器

yum install curlftpfs
mkdir /data/ftp
curlftpfs username:password@ftp.yourdomain.com /data/ftp

PS:具体的内容可以参考:

转载于:https://blog.51cto.com/13718210/2137333

你可能感兴趣的文章
磁盘管理-quota
查看>>
刚毕业从事java开发需要掌握的技术
查看>>
CSS Custom Properties 自定义属性
查看>>
vim
查看>>
linux sort命令详解
查看>>
windows7中如何查看一个端口正在被占用
查看>>
python常用模块
查看>>
主流Java开源商业智能BI框架及其比较
查看>>
MVVM计算器(下)
查看>>
C++中指针和引用的区别
查看>>
簡單分稀 iptables 記錄 udp 微軟 138 端口
查看>>
Java重写equals方法和hashCode方法
查看>>
Spark API编程动手实战-07-join操作深入实战
查看>>
H3C-路由策略
查看>>
centos 修改字符界面分辨率
查看>>
LNMP之Mysql主从复制(四)
查看>>
阅读Spring源代码(1)
查看>>
nagios一键安装脚本,nagios监控被监控主机上的应用服务mysql数据库
查看>>
grep 命令
查看>>
JS二维数组的声明和使用
查看>>