linux下目录传输多种方法及测试(debian)

简介:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
我的博客已迁移到xdoujiang.com请去那边和我交流
基础环境说明及安装
1、服务器
serverA=192.168.1.124(debian7.8)
serverB=192.168.1.122(debian6.0.10)
 
2、需要将serverB下的目录testtransfer(4.5G)下全部远程复制到serverA下
 
3、需要用到软件
1)apt-cache search pigz
pigz - Parallel Implementation of GZip(多线程压缩)
2)apt-cache search pv | grep  "^pv"
pv - Shell pipeline element to meter data passing through
3)apt-cache search netcat
netcat - TCP /IP  swiss army knife -- transitional package
4)apt-get -y  install  pigz
5)apt-get -y  install  pv
6)apt-get -y  install  netcat
7)apt-get -y  install  wget
8)apt-get -y  install  rsync
9)apt-get -y  install  vsftpd
10)apt-get -y  install  lftp
11)apt-get -y  install  python
 
一、 ssh + tar + gzip (pigz)
1、使用 ssh + tar + gzip 方式( ssh 协议)在(serverB)上
time  tar  czf - testtransfer/| ssh  -q jimmy@192.168.1.124  "tar zxf - -C /tmp"
real    13m20.771s
user    4m43.186s
sys     1m55.239s
 
2、使用 ssh + tar +pigz方式( ssh 协议)在(serverB)上
time  tar  cf - testtransfer/|pigz| ssh  -q jimmy@192.168.1.124  "pigz -d|tar xf - -C /tmp"
real    12m7.335s
user    4m12.200s
sys     1m46.455s
 
参数说明
-d, --decompress     Decompress the compressed input
 
二、nc+ tar + gzip (pigz)
1、使用nc+ tar + gzip 方式(tcp协议)
nc -lp 55555| tar  -zxf - -C  /tmp (serverA)
time  tar  -zcf - testtransfer/|pv|nc -w 1 192.168.1.124 55555(serverB)
real    11m31.341s
user    4m25.589s
sys     1m35.162s
 
2、使用nc+ tar +pigz方式(tcp协议)
nc -lp 55555|pigz -d| tar  xf - -C  /tmp (serverA)
time  tar  -cf - testtransfer/|pigz|pv|nc -w 1 192.168.1.124 55555(serverB)
real    10m42.789s
user    4m9.968s
sys     1m6.860s
 
参数说明
-w secs   timeout  for  connects and final net reads
 
三、python或web服务器
1、python web服务在(serverB)上
nohup  python -m SimpleHTTPServer 50000 &
2、在(serverA)上使用wget去下载
wget -r -q 192.168.1.122:50000
real    4m35.531s
user    0m0.360s
sys     0m33.218s
 
参数说明
-m module-name Searches sys.path  for  the named module and runs the 
corresponding .py  file  as a script.
 
四、 rsync ( rsync 协议)
1、服务端配置(serverB)
1)配置rsyncd.conf
cat  rsyncd.conf 
[aaa]
     path =  /opt/testtransfer
     use chroot =  yes
     read  only =  yes
     uid = jimmy
     gid = jimmy
     auth  users  = www-data
     secrets  file  /etc/rsyncd .secrets
2)配置验证密码
cat  /etc/rsyncd .secrets
www-data:123456
3)权限
chmod  600  /etc/rsyncd .secrets
 
2、客户端配置(serverA)
1)配置密码
cat  /etc/rsyncd .secrets
123456
2)开始传输
time  rsync  -az --password- file = /etc/rsyncd .secrets www-data@192.168.1.122::aaa  /opt/111
real    9m46.331s
user    0m5.600s
sys     1m0.448s
 
参数说明
-a, --archive  This  is equivalent to -rlptgoD. 
-z, --compress With  this  option,  rsync  compresses the  file  data as it is 
sent to the destination machine,  which  reduces the amount of data being 
transmitted -- something that is useful over a slow connection.
 
五、 ftp ( ftp 协议)
1、服务端配置(serverB)
1)配置vsftpd.conf
cat  /etc/vsftpd .conf
listen=YES
local_enable=YES
pam_service_name=vsftpd
 
2、客户端配置(serverA)
time  lftp jimmy:redhat@192.168.1.122 -e  "mirror /opt/testtransfer;quit"
real    7m29.727s
user    0m1.252s
sys     0m46.495s
 
PS:serverB上的jimmy用户建立过的,密码是redhat









本文转自 xdoujiang 51CTO博客,原文链接:http://blog.51cto.com/7938217/1656687,如需转载请自行联系原作者
目录
相关文章
|
1月前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
86 3
|
1月前
|
存储 Linux Windows
linux常用目录
/sbin s就是super User的意思,这里存放的是系统管理员使用的系统管理程序。 /home 存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一版该目录名是以用户的账号命名的。 /root 该目录为系统管理员,也称为超级权限者的用户主目录。 /lib 系统开机所需要最基本的动态连接共享库,其作用类似于windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。 /etc 所有的系统管理所需要的配置文件和子目录。 /usr 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program fies目录。 /bo
42 2
|
1月前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
129 3
|
1月前
|
Linux Python
Linux 中某个目录中的文件数如何查看?这篇教程分分钟教会你!
在 Linux 系统中,了解目录下文件数量是常见的需求。本文介绍了四种方法:使用 `ls` 和 `wc` 组合、`find` 命令、`tree` 命令以及编程实现(如 Python)。每种方法都附有详细说明和示例,适合不同水平的用户学习和使用。掌握这些技巧,可以有效提升系统管理和日常使用的效率。
516 6
|
1月前
|
分布式计算 Java Hadoop
linux中HADOOP_HOME和JAVA_HOME删除后依然指向旧目录
通过以上步骤,可以有效地解决 `HADOOP_HOME`和 `JAVA_HOME`删除后依然指向旧目录的问题。确保在所有相关的配置文件中正确设置和删除环境变量,并刷新当前会话,使更改生效。通过这些措施,能够确保系统环境变量的正确性和一致性。
31 1
|
1月前
|
Linux Python
Linux 中某个目录中的文件数如何查看?这篇教程分分钟教会你!
在 Linux 系统中,了解目录下的文件数量是常见的需求。本文介绍了多种方法,包括使用 `ls` 和 `wc` 命令组合、`find` 命令、`tree` 命令以及编程方式(如 Python)。无论你是新手还是有经验的用户,都能找到适合自己的方法。掌握这些技巧将提高你在 Linux 系统中的操作效率。
49 4
|
1月前
|
网络协议 Linux
linux系统重要文件目录
本文介绍了Linux系统中的重要目录及其历史背景,包括根目录、/usr、/etc、/var/log和/proc等目录的结构和功能。其中,/etc目录下包含了许多关键配置文件,如网卡配置、DNS解析、主机名设置等。文章还详细解释了各目录和文件的作用,帮助读者更好地理解和管理Linux系统。
61 2
|
1月前
|
Linux Shell 数据库
文件查找是Linux用户日常工作的重要技能介绍了几种不常见的文件查找方法
文件查找是Linux用户日常工作的重要技能。本文介绍了几种不常见的文件查找方法,包括使用`find`和`column`组合、`locate`和`mlocate`快速查找、编写Shell脚本、使用现代工具`fd`、结合`grep`搜索文件内容,以及图形界面工具如`Gnome Search Tool`和`Albert`。这些方法能显著提升文件查找的效率和准确性。
53 2
|
2月前
|
运维 Linux
Linux查找占用的端口,并杀死进程的简单方法
通过上述步骤和命令,您能够迅速识别并根据实际情况管理Linux系统中占用特定端口的进程。为了获得更全面的服务器管理技巧和解决方案,提供了丰富的资源和专业服务,是您提升运维技能的理想选择。
85 1
|
2月前
|
运维 安全 Linux
Linux文件清空的五种方法总结分享
每种方法各有优势,选择最合适的一种或几种,可以极大提高您的工作效率。更多有关Linux系统管理的技巧与资源,欢迎访问,持续提升您的运维技能。
85 1