`
xinklabi
  • 浏览: 1587805 次
  • 性别: Icon_minigender_1
  • 来自: 吉林
文章分类
社区版块
存档分类
最新评论

linux scp命令参数及用法详解--linux远程复制拷贝命令使用实例

 
阅读更多

转自:http://blog.csdn.net/jiangkai_nju/article/details/7338177

 

一般情况,本地网络跟远程网络进行数据交抱,或者数据迁移,常用的有三种方法,一是ftp,二是wget /fetch 三是,rsync 大型数据迁移用rysync,其次用fetch/wget ,最次是ftp,最慢是ftp.这几天,在忙数据迁移时,用到ssh的scp方法来迁移数据。速度与效果都很好。特别是现在许多服务器为了安全,都会改ssh默认的22端口,改成一个特殊的端口。所以。在scp或者sftp时,就要指定通过什么端口来迁移。现在,特记下这个特殊端口来scp的命令

Linux scp命令用于Linux之间复制文件和目录,具体如何使用这里好好介绍一下,从本地复制到远程、从远程复制到本地是两种使用方式。这里有具体举例:

==================

Linux scp 命令

==================

scp 可以在 2个 linux 主机间复制文件;

命令基本格式:

scp [可选参数] file_source file_target

======

从 本地 复制到 远程

======

* 复制文件:

* 命令格式:

scp local_file remote_username@remote_ip:remote_folder

或者

scp local_file remote_username@remote_ip:remote_file

或者

scp local_file remote_ip:remote_folder

或者

scp local_file remote_ip:remote_file

第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;

第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;

* 例子:

scp /home/space/music/1.mp3 root@www.cumt.edu.cn:/home/root/others/music

scp /home/space/music/1.mp3 root@www.cumt.edu.cn:/home/root/others/music/001.mp3

scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music

scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music/001.mp3

* 复制目录:

* 命令格式:

scp -r local_folder remote_username@remote_ip:remote_folder

或者

scp -r local_folder remote_ip:remote_folder

第1个指定了用户名,命令执行后需要再输入密码;

第2个没有指定用户名,命令执行后需要输入用户名和密码;

* 例子:

scp -r /home/space/music/ root@www.cumt.edu.cn:/home/root/others/

scp -r /home/space/music/ www.cumt.edu.cn:/home/root/others/

上面 命令 将 本地 music 目录 复制 到 远程 others 目录下,即复制后有 远程 有 ../others/music/ 目录

======

从 远程 复制到 本地

======

从 远程 复制到 本地,只要将 从 本地 复制到 远程 的命令 的 后2个参数 调换顺序 即可;

例如:

scp root@www.cumt.edu.cn:/home/root/others/music /home/space/music/1.mp3

scp -r www.cumt.edu.cn:/home/root/others/ /home/space/music/

最简单的应用如下 :

scp 本地用户名 @IP 地址 : 文件名 1 远程用户名 @IP 地址 : 文件名 2

[ 本地用户名 @IP 地址 :] 可以不输入 , 可能需要输入远程用户名所对应的密码 .

可能有用的几个参数 :

-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 .

-C 使能压缩选项 .

-P 选择端口 . 注意 -p 已经被 rcp 使用 .

-4 强行使用 IPV4 地址 .

-6 强行使用 IPV6 地址 .

Linux scp命令的使用方法应该可以满足大家对Linux文件和目录的复制使用了。

 

关于scp的安全方面

 

copy 本地的档案到远程的机器上
scp /etc/lilo.conf k@net67.ee.oit.edu.tw:/home/k
会将本地的 /etc/lilo.conf 这个档案 copy 到 net67.ee.oit.edu.tw,使用者 k 的家目录下。
copy远程机器上的档案到本地来
scp k@net67.ee.oit.edu.tw:/etc/lilo.conf /etc
会将 net67.ee.oitdu.tw 中 /etc/lilo.conf 档案 copy 到本地的 /etc 目录下。
保持从来源 host 档案的属性
scp –p k@net67.ee.tw:/etc/lilo.conf /etc

如果想使用特定端口 使用 scp –p(大写) 如 scp –p 1234 k@net67.ee.tw:/etc/lilo.conf /etc


在此必须注意使用者的权限是否可读取远程上的档案,若想知道更多关于 scp 的使用方法,可去看看 scp 的使用手册。
ssh-keygen
产生公开钥 (pulib key) 和私人钥 (private key),以保障 ssh 联机的安性, 当 ssh 连 shd 服务器,会交换公开钥上,系统会检查 /etc/ssh_know_hosts 内储存的 key,如果找到客户端就用这个 key 产生一个随机产生的session key 传给服务器,两端都用这个 key 来继续完成 ssh 剩下来的阶段。

它会产生 identity.pub、identity 两个档案,私人钥存放于identity,公开钥 存放于 identity.pub 中,接下来使用 scp 将 identity.pub copy 到远程机器的家目录下.ssh下的authorized_keys。 .ssh/authorized_keys(这个 authorized_keys 档案相当于协议的 rhosts 档案), 之后使用者能够不用密码去登入。RSA的认证绝对是比 rhosts 认证更来的安全可靠。
执行:
scp identity.pub k@linux1.ee.oit.edu.tw:.ssh/authorized_keys

若在使用 ssh-keygen 产生钥匙对时没有输入密码,则如上所示不需输入密码即可从 net67.ee.oit.edu.tw 去登入 linux1.ee.oit.edu.tw。在此,这里输入的密码可以跟帐号的密码不同,也可以不输入密码。

scp命令的一个实例

 

Linux下scp的用法

scp就是secure copy,一个在linux下用来进行远程拷贝文件的命令。

有时我们需要获得远程服务器上的某个文件,该服务器既没有配置ftp服务器,也没有做共享,无法通过常规途径获得文件时,只需要通过简单的scp命令便可达到目的。

一、将本机文件复制到远程服务器上

#scp /home/administrator/news.txt root@192.168.6.129:/etc/squid

/home/administrator/ 本地文件的绝对路径

news.txt 要复制到服务器上的本地文件

root 通过root用户登录到远程服务器(也可以使用其他拥有同等权限的用户)

192.168.6.129 远程服务器的ip地址(也可以使用域名或机器名)

/etc/squid 将本地文件复制到位于远程服务器上的路径

如图通过root用户登录远程服务器,输入yes表示同意建立ssh连接

按提示输入root用户的密码

 

如图所示建立连接后开始传输文件,显示百分比、实际时间和传送速度等信息

二、将远程服务器上的文件复制到本机

#scp remote@www.abc.com:/usr/local/sin.sh /home/administrator

remote 通过remote用户登录到远程服务器(也可以使用其他拥有同等权限的用户)

www.abc.com 远程服务器的域名(当然也可以使用该服务器ip地址)

/usr/local/sin.sh 欲复制到本机的位于远程服务器上的文件

/home/administrator 将远程文件复制到本地的绝对路径

注意两点:

1.如果远程服务器防火墙有特殊限制,scp便要走特殊端口,具体用什么端口视情况而定,命令格式如下:

#scp -p 4588 remote@www.abc.com:/usr/local/sin.sh /home/administrator

2.使用scp要注意所使用的用户是否具有可读取远程服务器相应文件的权限。

分享到:
评论

相关推荐

    Linux使用scp命令进行文件远程拷贝详解

    以下是scp命令的一些关键知识点和使用方法。 **一、scp命令的基本语法** ```bash scp [参数] [源路径] [用户名@目标主机:]目标路径 ``` 这里,`源路径`是你想要复制的文件或目录的路径,`目标主机`是接收文件的...

    Linux之间文件远程复制.docx

    Linux scp 命令是 Linux 系统下的一种安全的远程文件拷贝命令,基于 ssh 登陆协议,用于在 Linux 服务器之间进行文件和目录的复制。scp 是 secure copy 的缩写,顾名思义,scp 命令可以对文件和目录进行安全的远程...

    scp 将数据从一台linux服务器复制到另一台linux服务器

    ### scp 命令详解:实现 Linux 服务器之间的数据安全复制 #### 一、scp 命令简介 scp(Secure Copy)是一个基于 SSH 协议的安全文件传输工具,主要用于在 Linux 或 Unix 系统之间进行文件或目录的远程复制。与传统...

    Linux常用文件传输方法

    本文将详细介绍Linux环境中常用的文件传输方法,包括FTP、rcp和scp等,并通过具体使用实例及优缺点分析,帮助读者更好地理解并选择合适的文件传输工具。 #### 二、FTP (File Transfer Protocol) FTP是一种标准的...

    Linux本机与服务器文件互传及Linux服务器文件上传下载命令写法

    ### Linux本机与服务器文件互传及Linux服务器文件上传下载命令详解 #### 一、Linux下的文件互传:SCP命令实例 **SCP**(Secure Copy)命令是Linux系统中用于安全地在不同主机间拷贝文件的工具。它利用SSH协议进行...

    高可用mongodb集群搭建

    3. 使用`scp`命令将解压后的`mongodb`文件夹复制到其他两台服务器的`/usr/`目录下。 ###### 2.2.2 创建目录 在每台服务器上,我们需要创建以下目录: - `/data/mongodbtest/mongos/log`:用于存储mongos的日志文件...

    Hadoop_HDFS安装和管理

    - 可以在ost2上修改后,使用`scp`命令复制到其他节点。 ##### 3.4 HDFS部署 - **步骤**: 1. 以`hdfs`用户登录,并在主目录下创建子目录`hdfsinstall`。 2. 解压缩`forlink-hadoop.tar.gz`至`hadoop-0.18.1`目录。...

    数据守护搭建.pdf

    使用 `scp` 命令将备份文件复制到备库所在机器,例如 `scp -r BACKUP_FILE_01/ dameng@192.168.192.182:/dmdata/data/BACKUP_FILE_01`。 - **执行脱机数据库还原与恢复**: - **还原**:使用 `dmrman` 工具的 `...

    Tomcat上部署SolrCloud.txt

    ### Tomcat上部署SolrCloud知识点详解 #### 一、SolrCloud与Tomcat简介 - **SolrCloud**:Apache Solr的一个分布式部署模式,主要用于处理大规模数据搜索和索引场景。它提供了高可用性和容错性,适用于生产环境中...

    Kafka集群搭建1

    1. 使用`scp`命令将Kafka实例复制到其他节点。例如,从172.16.15.6上的`/usr/local/kafka_2.10-0.10.0.0`复制到172.16.15.7上。 2. 在目标机器上执行相同的配置步骤,并确保`myid`文件中的标识符与该节点在集群中的...

    mysql数据库备份策略

    `mysqlhotcopy`是一个Perl程序,由Tim Bunce开发,它通过使用`LOCK TABLES`、`FLUSH TABLES`和`cp`或`scp`等命令实现了快速的数据库备份。这个工具非常适合备份MyISAM表,并且特别适用于小型数据库。为了使用`...

    arcgis工具

    arcgis工具总结 1. 要素的剪切与延伸 实用工具 TASK 任务栏 Extend/Trim feature 剪切所得内容与你画线的方向有关。 2. 自动捕捉跟踪工具 ...例如,使用包含(Contain)方法,即使湖泊的边界和包含该...

Global site tag (gtag.js) - Google Analytics