文档章节

Linux主机之间传输文件的几种方法对比

SoneWinstone
 SoneWinstone
发布于 2016/11/15 22:17
字数 980
阅读 13
收藏 0

1.scp传输

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

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

配置scp在Linux或Unix之间传输文件无需密码  http://www.linuxidc.com/Linux/2015-01/111894.htm

Linux之cp/scp命令+scp命令详解 http://www.linuxidc.com/Linux/2014-09/107127.htm

CentOS 不能使用scp命令 解决方法 http://www.linuxidc.com/Linux/2014-09/106569.htm

两台Linux主机之间scp复制文件 http://www.linuxidc.com/Linux/2014-04/99979.htm

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

rsync -av /backup/ -e ssh root@192.168.1.110:/bak
#-a: archive归档模式,表示以递归方式传输文件,并保持所有文件属性,链接等,等于-rlptgoD

rsync——remote sync。rsync是Linux系统下的文件同步和数据传输工具,它采用“rsync”算法,可以将一个客户机和远程文件服务器之间的文件同步,也可以在本地系统中将数据从一个分区备份到另一个分区上。如果rsync在备份过程中出现了数据传输中断,恢复后可以继续传输不一致的部分。rsync可以执行完整备份或增量备份。它的主要特点有:
1.可以镜像保存整个目录树和文件系统;
2.可以很容易做到保持原来文件的权限、时间、软硬链接;无须特殊权限即可安装;
3.可以增量同步数据,文件传输效率高,因而同步时间短;
4.可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接;
5.支持匿名传输,以方便进行网站镜象等;
6.加密传输数据,保证了数据的安全性;

Rsync实现文件备份同步详解 http://www.linuxidc.com/Linux/2014-09/106967.htm

Rsync同步两台服务器 http://www.linuxidc.com/Linux/2014-09/106574.htm

CentOS 6.5下Rsync远程同步 http://www.linuxidc.com/Linux/2014-05/101084.htm

Ubuntu Linux下用Rsync进行数据备份和同步配制 http://www.linuxidc.com/Linux/2014-03/97592.htm

Linux使用Rsync客户端与服务端同步目录进行备份 http://www.linuxidc.com/Linux/2014-02/97068.htm

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

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

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

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

#使用dd结合nc命令网络克隆磁盘分区
主机:
dd if=/dev/vda | gzip -c | nc -l 50522
待恢复机:
nc 192.168.215.63 50522 | gzip -dc | dd of=/dev/sda

#dd命令克隆/dev/vda磁盘,并使用gzip压缩,把数据流重定向到本机50522端口,待恢复机上使用nc连接主机50522端口,就能接收主机50522端口的比特数据流,然后使用gzip解压缩,并恢复到/dev/sda磁盘

#dd命令读取的是磁盘扇区,所以不论磁盘文件系统,或者分区表,磁盘MBR信息,dd都能够复制,可以使用bs,count参数控制要克隆的大小
#例如dd bs=512 count=1 if=/dev/vda of=mbr.img 只复制磁盘vda的第一个扇区512K字节数据(引导程序和分区表)

5.建立文件服务器

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

挂载ftp服务器
yum install curlftpfs
mkdir /data/ftp
curlftpfs username:password@ftp.yourdomain.com /data/ftp

本文转载自:http://www.linuxidc.com/Linux/2015-05/117028.htm

共有 人打赏支持
SoneWinstone
粉丝 1
博文 17
码字总数 3992
作品 0
兰州
不用FTP使用SecureCRT上传下载文件,并解决rz、sz command not found异常

使用SSH终端操作Linux/UNIX时,很多时候需要传一些文件到服务器上,或说从服务器上下载一些文件,这类文件传输动作一般使用FTP即可,但是需要架设FTP Server,每次传输不太方便,还要另外使用...

thinkyoung
2014/12/22
0
0
怎样将文件从window系统复制到远程linux系统上

怎样将文件从window系统复制到远程linux系统上 怎样将文件从window系统复制到linux系统上,其实有几种方法,比如,将windows上的文件共享出来,通过cifs协议mount到linux本地来,然后再cp一下...

学思
2014/11/10
0
0
通过python模块实现服务器和本地机器之间快速拷贝文件

在实际的开发过程中,很多时候我们都不直接在本机上开发,一般都在远程服务器上开发并运行程序。 比如三胖在实际开发中就会使用到很多台服务器:我有一台笔记本电脑,通过 ssh 连接着很多台服...

blackfoxya
07/30
0
0
每天一个linux命令(26):用SecureCRT来上传和下载文件

用SSH管理linux服务器时经常需要远程与本地之间交互文件.而直接用SecureCRT自带的上传下载功能无疑是最方便的,SecureCRT下的文件传输协议有ASCII、Xmodem、Zmodem。 文件传输协议: 文件传输...

长平狐
2013/06/17
81
0
文件批量传输组件直接使用说明

文件批量传输组件 文件批量传输组件适用于后台服务器之间文件批量传输,能对某个文件夹进行自动监控、多线程批量传输、文件md5对比、错误重传,也能满足中转传输情况(外网服务器把文件传至中...

hxt168
2016/07/21
88
0

没有更多内容

加载失败,请刷新页面

加载更多

如何通过 J2Cache 实现分布式 session 存储

做 Java Web 开发的人多数都会需要使用到 session (会话),我们使用 session 来保存一些需要在两个不同的请求之间共享数据。一般 Java 的 Web 容器像 Tomcat、Resin、Jetty 等等,它们会在...

红薯
今天
3
0
C++ std::thread

C++11提供了std::thread类来表示一个多线程对象。 1,首先介绍一下std::this_thread命名空间: (1)std::this_thread::get_id():返回当前线程id (2)std::this_thread::yield():用户接口...

yepanl
今天
3
0
Nignx缓存文件与动态文件自动均衡的配置

下面这段nginx的配置脚本的作用是,自动判断是否存在缓存文件,如果有优先输出缓存文件,不经过php,如果没有,则回到php去处理,同时生成缓存文件。 PHP框架是ThinkPHP,最后一个rewrite有关...

swingcoder
今天
2
0
20180920 usermod命令与用户密码管理

命令 usermod usermod 命令的选项和 useradd 差不多。 一个用户可以属于多个组,但是gid只有一个;除了gid,其他的组(groups)叫做扩展组。 usermod -u 1010 username # 更改用户idusermod ...

野雪球
今天
3
0
Java网络编程基础

1. 简单了解网络通信协议TCP/IP网络模型相关名词 应用层(HTTP,FTP,DNS等) 传输层(TCP,UDP) 网络层(IP,ICMP等) 链路层(驱动程序,接口等) 链路层:用于定义物理传输通道,通常是对...

江左煤郎
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部