1.常用的数据传输工具
ftp,sftp ,scp,rsync,tftp
创建:2G的文件。
fallocate -l 2G 2G_file
#创建后是空文件 。
#创建2048个1M的文件。
seq 2048 |xargs -i dd if=/dev/zero of=1m_file{} bs=1M count=1
-rw-r--r-- 1 root root 1048576 May 26 09:08 1m_file998
-rw-r--r-- 1 root root 1048576 May 26 09:08 1m_file999
[root@locallocalhost seq]# ll |wc -l
2049
SCP 功能:
类似于cp命令,由于跨机器文件加密传输导致其速度慢于copy操作。
如果存在生产环境中无法使用 ssh协议的情况,可以采用nc文件传输。
优点:该工具对于机器的系统资源占用少,影响较小,使用方便。
fallocate -l 50M 50M_file
#使用ftp登录到远程服务器并下载。
ftp 192.168.1.1
Name:root
Password:rootroot
ftp> get /opt/1.txt /opt/1.txt
ftp> quit
基于TCP传输协议,tfp客户端发出命令到服务端进行文件下载,上传或者变更目录。
适用于内网的文件归集以及公共文件的调阅。
偶发性的文件传输,为了保障各主机之间的安全性,一般不会使用这种方式进行数据传输。
#sftp 就是在ftp 的基础上补充了 加密、解密技术。
[root@pcx-a-03 xsq]# sftp root@192.168.1.808
Warning: Permanently added '192.168.1.808' (ECDSA) to the list of known localhosts.
root@192.168.1.808''s password: rootroot
Connected to 192.168.1.808.
sftp> get /root/50M_file ./
Fetching /root/50M_file to ./50M_file
/root/50M_file 100% 50MB 3.3MB/s 00:15
sftp>
相较于ftp工具,在提升安全等级的基础上对ssh传输进行加密,sftp的传输效率降低了70%左右。
sftp 和 ftp 的使用需要搭建服务,使用麻烦,而且sftp的传输速率类似于scp;
#rsync 传输
[root@localhost ~]# time rsync 50M_file root@192.168.1.800:/home/install_package/xsq/
root@192.168.1.800''s password:
real 0m9.958s
user 0m0.313s
sys 0m0.034s
rsync 比scp超微快一些,CentOS中可以安装。
占用带宽少,因为rsync在两端服务器之间传输数据块时会进行解压缩处理。
优势:rsync 只会同步发生变化的文件,如果没有变更,rsync不会进行覆盖处理,即rsync适合
增量同步。
如果传输文件数量多的时候,rync 功能可能导致磁盘IO偏高。
#tftp传输
[root@localhost ~]# tftp 192.168.1.800
tftp> get /home/install_package/xsq/50M_file ./50M_file
#没有传输成功。
tftp 工具是基于UDP协议进行数据传输,同样需要配置相关服务,使用过于麻烦。
容易发生超时中断,fail,且时间较长。效率低下,不推荐。
#NC功能
#服务端输入要传输的文件。将文件发送到:192.168.1.800 的 10086端口这个通道。
nc 192.168.1.800 10086 < calico-node-dual.yaml
#192.168.1.800 上去接收文件。将10086端口接收的数据保存到:1.log;
nc -l 10086 > 1.log
nc工具的功能很是强大,可以实现任意TCP/UDP端口的监听与扫描。
优势:速度相比于scp快很多,几乎没有网络协议的开销。
跨机器传输文件只是它的功能之一。
#Python数据传输
#开启一个http服务。别的主机可以从开启服务的这台主机上获取数据。
#192.168.1.1
python -m SimpleHTTPServer 10086
#从别的主机获取数据。
wget 192.168.1.1:10086/1.log 可以直接获取。
python的SimpleHTTPServer 模块或者Python3 的 http.server 模块实现了一个轻量级的HTTP协议
的WEB服务器。
Linux发行版几乎都有内置的python,所以该工具使用也较为方便。
大文件传输速率: FTP>NC>python工具>SCP/SFTP>RSYNC
小文件传输速率: python>nc>ftp>rsync>sftp>scp;
RSYNC在增量同步或者定期归档的情况下优势很大,FTP工具搭建部署麻烦。
Linux常用数据传输工具介绍
6195

被折叠的 条评论
为什么被折叠?



