6.5 scp:远程文件复制

scp命令

  用于在不同的主机之间复制文件,它采用SSH协议来保证复制的安全性。scp命令每次都是全量完整复制,因此效率不高,适合第一次复制时使用,增量复制建议使用rsync命令替代。
 
 
scp [option]     [[user@]host1:]file    [[user@]host2:]file2
scp [选项]       [用户@主机1:文件1]       [用户@主机2;文件2]

scp命令的参数选项及说明

-C        压缩传输
-l        指定传输占用的带宽,单位Kbit/s
-P port   大写的P,指定传输的端口号
-p        小写的p,传输后保留文件原始属性
-q        不显示传输进度条
-r        递归复制整个目录
 
[root@cs6 ~]# ll -h /etc/services    #<==这是将要复制的文件。
-rw-r--r--. 1 root root 626K Mar 22  2017 /etc/services
[root@cs6 ~]# scp /etc/services 10.0.0.55:/tmp    #<==scp 传送的文件名目标主机IP地址:想要传到的目录。
The authenticity of host '10.0.0.55 (10.0.0.55)' can't be established.
RSA key fingerprint is 29:a1:b8:14:6d:10:4c:c4:34:d3:8b:06:4b:a5:27:46.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.0.0.55' (RSA) to the list of known hosts.
root@10.0.0.55's password:
services                                                                                                  100%  626KB 626.0KB/s   00:00    
 
[root@cs7-mini ~]# ll /tmp/services    #<==远程主机
-rw-r--r--. 1 root root 641020 May 14 13:00 /tmp/services
#<==可以看到赋值后的文件时间有变化,更新为现在了。
 
[root@cs6 ~]# scp -p /etc/services 10.0.0.55:/tmp    #<==使用-p选项保持文件属性传输。
root@10.0.0.55's password:
services    
[root@cs7-mini ~]# ll -h /tmp/services
-rw-r--r--. 1 root root 626K Mar 22  2017 /tmp/services
                                                                                              100%  626KB 626.0KB/s   00:00    
[root@cs6 ~]# scp -p /tmp 10.0.0.55:/tmp    #<==不能直接复制目录。
root@10.0.0.55's password:
/tmp: not a regular file
[root@cs6 ~]# scp -pr /tmp 10.0.0.55:/tmp    #<==使用—r选项复制目录,选项记忆方法:人品rp。
root@10.0.0.55's password:
anaconda-ks.cfg                                                                                           100% 1092     1.1KB/s   00:00    
install.log                                                                                               100% 8081     7.9KB/s   00:00    
yum.log                                                                                                   100%    0     0.0KB/s   00:00    
.......
5.html                                                                                                    100%    0     0.0KB/s   00:00    
3.html                                                                                                    100%    0     0.0KB/s   00:00    
6.html                                                                                                    100%    0     0.0KB/s   00:00    
10.html                                                                                                   100%    0     0.0KB/s   00:00    
1.html                                                                                                    100%    0     0.0KB/s   00:00    
8.html                                                                                                    100%    0     0.0KB/s   00:00    
services.zip                                                                                              100%  124KB 124.4KB/s   00:00    
services                                                                                                  100%  626KB 626.0KB/s   00:00    

推送(从本地服务器复制到远程服务器)文件或目录 

从远程服务器将数据复制到本地服务器(拉取)。
[root@cs6 tmp]# scp 10.0.0.55:/etc/services .
root@10.0.0.55's password:
services 
从上面的实验中还可以看到,本地服务器本身即使有这些文件,但是还会再消耗带宽来复制文件,因此也证明了scp是全量复制。
posted @ 2019-05-14 14:18  Fadewalk  阅读(531)  评论(0编辑  收藏  举报