转自:http://www.ha97.com/4169.html

scp命令跟cp命令类似,只不过cp命令是在同一台机器上用的,scp是在两台机器上复制传输数据的命令。scp实质相当于利用SSH协议来传输数据的cp命令。

用法举例:

1、复制远程服务器的文件到本地:
scp -P888 root@120.18.50.33:/data/ha97.zip /home/
2、复制远程服务器的目录到本地:
scp -vrp -P888 root@120.18.50.33:/data/ha97/ /home/
3、复制本地的文件到远程服务器:
scp -P888 /home/ha97.zip root@120.18.50.33:/data/
4、复制本地的目录到远程服务器:
scp -vrp -P888 /home/ root@120.18.50.33:/data/

SCP 命令语法
scp [-1245BCpqrv] [-c cipher] [F ssh_config] [-I identity_file] [-l
limit] [-o ssh_option] [-P port] [-S program] [[user@]host1:] file1 […]
[[suer@]host2:]file2

SCP 命令说明
Scp在主机间复制文件。他使用 ssh(1)作为数据传输。而且用同样认证和安全性。 scp将在认证中请求输入密码所有的文件可能需要服务器和用户的特别描述来指明文件将被复制到/从某台服务器。两个远程登录的服务器间的文件复制是允许的。

SCP 命令选项
-1 强制scp 用协议1
-2 强制scp 用协议2
-4 强制scp用IPV4的网址
-6 强制scp用IPV6的网址
-B 选择批处理模式(防止输入密码)
-C 允许压缩。 标注-C到ssh(1)来允许压缩
-c cipher
选择cipher来加密数据传输。这个选项直接传递到ssh(1)
-F ssh_config
设定一个可变动的用户配置给ssh.这个选项直接会被传递到ssh(1)
-i identity_file
选择被RSA认证读取私有密码的文件。这个选项可以直接被传递到ssh(1)
-l limit
限制传输带宽,也就是速度 用Kbit/s的速度
-o ssh_option
可以把ssh_config中的配置格式传到ssh中。这种模式对于说明没有独立的scp文件中断符的scp很有帮助。关于选项的如下。而他们的值请参看ssh_config(5)
-P port
指定连接远程连接端口。注意这个选项需要写成大写的模式。因为-p已经早保留了次数和模式
-S program
指定一个加密程序。这个程序必须可读所有ssh(1)的选项。
-p 指定修改次数,连接次数,还有对于原文件的模式
-q 把进度参数关掉
-r 递归的复制整个文件夹
-S program
指定一个加密程序。这个程序必须可读所有ssh(1)的选项。
-V 冗余模式。 让 scp 和 ssh(1) 打印他们的排错信息, 这个在排错连接,认证,和配置中非常有用。

SCP 命令诊断
scp 返回0 成功时,不成功时返回值大于0

SCP 命令不需要输入用户密码的使用方法

在两台机器的两个用户之间建立安全的信任关系后,可实现执行scp命令时不需要输入用户密码。

1. 在机器A上root用户执行 ssh-keygen 命令,生成建立安全信任关系的证书。

[root@A root]# ssh-keygen -b 1024 -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): <– 直接输入回车
Enter passphrase (empty for no passphrase): <– 直接输入回车
Enter same passphrase again: <– 直接输入回车
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is: ……


注意:在程序提示输入 passphrase 时直接输入回车,表示无证书密码。
上述命令将生成私钥证书 id_rsa 和公钥证书 id_rsa.pub,存放在用户目录的 .ssh 子目录中。

2. 将公钥证书 id_rsa.pub 复制到机器B的root目录的.ssh子目录中,同时将文件名更换为authorized_keys

[root@A root]# scp -p .ssh/id_rsa.pub root@机器B的IP:/root/.ssh/authorized_keys
root@192.168.3.206’s password: <– 输入机器B的root用户密码


在执行上述命令时,两台机器的root用户之间还未建立安全信任关系,所以还需要输入机器B的root用户密码。
经过以上2步,就在机器A的root和机器B的root之间建立安全信任关系。下面我们看看效果:

[root@A root]# scp -p test root@机器B的IP地址:/root

成功了!真的不再需要输入密码了。

scp 详细总结的更多相关文章

  1. 详细解析Linux scp命令的应用

    详细解析Linux scp命令的应用 Linux命令有人统计说是有4000多个,Linux scp命令是用于Linux之间复制文件和目录,这里详细介绍scp命令使用和参数. AD: Linux scp ...

  2. 详细解析Linux scp命令的应用(转载)

    转自:http://os.51cto.com/art/201003/187301.htm Linux scp命令用于Linux之间复制文件和目录,具体如何使用这里好好介绍一下,从本地复制到远程.从远程 ...

  3. MySQL主从复制原理及配置详细过程以及主从复制集群自动化部署的实现

    一.复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves)上,并重 ...

  4. Linux学习之三--scp命令

    scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...

  5. 在VMWare中建立Hadoop虚拟集群的详细步骤(使用CentOS)

    最近在学习Hadoop,于是想使用VMWare建立一个虚拟的集群环境.网上有很多参考资料,但参照其步骤进行设置时却还是遇到了不少问题,所以在这里详细写一下我的配置过程,以及其中遇到的问题及相应的解决方 ...

  6. 「转」xtrabackup新版详细说明

    声明:本文由我的同事@fiona514编写,是我看过的最用心的中文说明介绍,强烈推荐大家学习使用. Percona Xtrabackup 2.4.1 编译及软件依赖 centos5,6 需要升级cma ...

  7. linux命令-cp/scp {拷贝}

    一 命令解释 名称:cp 使用权限:所有使用者 使用方式: cp [options] source dest cp [options] source... directory 命令参数: -a 尽可能 ...

  8. linux下不同服务器间数据传输(rcp,scp,rsync,ftp,sftp,lftp,wget,curl)(zz)

    linux下不同服务器间数据传输(rcp,scp,rsync,ftp,sftp,lftp,wget,curl) 分类: linux2011-10-10 13:21 8773人阅读 评论(1) 收藏 举 ...

  9. 每天一个linux命令(60):scp命令

    scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...

随机推荐

  1. 【welcome-file-list】让默认页生效

    <welcome-file-list> <welcome-file>404.html</welcome-file> <welcome-file>/vie ...

  2. Js template engine

    P http://www.jquery4u.com/javascript/10-javascript-jquery-templates-engines/ http://www.creativebloq ...

  3. protues仿真 51点亮点阵

    电路图 程序 /*============================== 点亮点阵心形 ================================*/ #include <REGX5 ...

  4. Memcache仅仅支持简单数据类型

    Memcache仅仅支持简单数据类型 ,复杂数据类型需要应用自己处理 从数据库当中取出数据[User [id=1, username=guowuxin, password=guowuxin], Use ...

  5. 图片生成操作属性导致WP内存溢出解决办法

    在开发的项目中,发现经常会出现异常 “内存溢出,不能再继续执行程序”,通过搜索一些国外的文章,发现原来是由于项目中的图片比较多,而生存操作设为了“内容”.通过设置图片的生成操作为“无”,复制操作为“如 ...

  6. sql里条件is null 在thinkphp里

    $map['字段名'] = array('exp',' is NULL'); 譬如:$condition['url']  = array('exp',' is NULL');

  7. android 服务service开启和关闭

    startService()方法开启一个服务. 服务只会开启一次,如果服务已经创建,并且没有销毁,多次调用startService方法只会执行onStartCommand方法和onStart方法. 服 ...

  8. [状压dp]HDU5045 Contest

    题意: n和人做m道题, 每俩人做的题数不能相差一题以上.(也就是每n道题分别由n个人完成)   给n个人分别做m道题的概率, 求完成m题的最大期望 $1\le N \le 10$ 注意!!! fil ...

  9. codeforces Winner

    /* * Winner.cpp * * Created on: 2013-10-13 * Author: wangzhu */ /** * 先找出所有选手的分数和中最大的分数和,之后在所有选手的分数和 ...

  10. JavaScript获取HTML DOM节点元素详解(转)

    在Web运用程序特别是Web 2.0程序开发中,经常要获取页面中某个元素,然后更新该元素的样式.内容等.如何获取要更新的元素,是首先要处理的疑问. 51CTO推荐阅读:JavaScript DOM文档 ...