linux/centos中如何使用SCP命令搬迁网站数据

SCP(安全副本)是一个命令行实用程序,允许用户在两个位置之间安全地复制文件和目录。下面本篇文章就来带大家了解一下SCP命令,介绍使用SCP命令是如何安全地传输文件,希望对大家有所帮助。

linux/centos中如何使用SCP命令搬迁网站数据

linux SCP命令

SCP命令是一个linux下进行远程拷贝文件的命令,允许用户在两个位置之间安全地复制文件和目录。

使用SCP命令,用户可以复制文件(或目录):

● 从本地系统到远程系统。

● 从远程系统到本地系统。

● 在本地系统的两个远程系统之间。

使用scp传输数据时,文件和密码都是加密的,这样任何窥探流量的人都不会得到任何敏感信息。

SCP命令的基本语法:

scp [OPTION] [user@]SRC_HOST:]file1 [user@]DEST_HOST:]file2

● OPTION: scp选项,如密码,ssh配置,ssh端口,限制,递归复制..等。

● [user@]SRC_HOST:]file1:源文件。

● [user@]DEST_HOST:]file2 : 目标文件。

本地文件应使用绝对或相对路径指定,而远程文件名应包括用户和主机规范。

SCP提供了许多选项来控制其行为的各个方面。最广泛使用的选项有:

● -P 指定远程主机ssh端口。

● -p 保留文件修改和访问时间。

● -q 如果要禁止进度表和非错误消息,请使用此选项。

● -C。此选项将强制scp在将数据发送到目标计算机时压缩数据。

● -r 此选项将告诉scp以递归方式复制目录。

说明:开始使用SCP命令时

因为scp命令依赖ssh进行数据传输,所以在远程系统上进行身份验证需要ssh密钥或密码。

冒号(:)是SCP如何区分本地和远程位置的。

为了能够复制文件,用户必须至少拥有源文件的读取权限和目标系统的写入权限。

在两个系统上复制共享相同名称和位置的文件时要小心,scp会在没有警告的情况下覆盖文件。

如何使用SCP复制两个系统之间的文件和目录?

1、使用scp命令将本地文件复制到远程系统

要将文件从本地复制到远程系统,请运行以下命令:

scp file.txt remote_username@10.10.0.2:/remote/directory

说明:file.txt是我们要复制的文件名,remote_username是远程服务器上的用户名,10.10.0.2是服务器IP地址;/remote/directory是要将文件复制到的目录的路径,如果不指定远程目录,文件将被复制到远程用户主目录。

系统将提示用户输入用户密码,然后将开始传输过程。

输出:

remote_username@10.10.0.2's password:
file.txt                             100%    0     0.0KB/s   00:00

从目标位置省略文件名会使用原始名称复制文件。如果要以不同的名称保存文件,则需要指定新名称:

scp file.txt remote_username@10.10.0.2:/remote/directory/newfilename.txt

如果远程主机上的SSH正在侦听默认端口22以外的端口,则可以使用以下-P参数指定端口:

ssh -P 2322 file.txt remote_username@10.10.0.2:/remote/directory

要将目录从本地复制到远程系统,请使用以下-r选项:

scp -r /local/directory remote_username@10.10.0.2:/remote/directory

2、使用scp命令将远程文件复制到本地系统

要将文件从远程系统复制到本地系统,需要使用远程位置作为源,使用本地位置作为目标。

例如,要从IP为10.10.0.2的远程服务器复制名为file.txt的文件,需要运行以下命令:

scp remote_username@10.10.0.2:/remote/file.txt /local/directory

注:如果用户没有设置远程计算机的“无密码ssh登录”,将要求输入用户密码。

3、使用scp命令在两个远程系统之间复制文件

使用scp时,用户无需登录到其中一台服务器,就可以将文件从一台远程计算机传输到另一台远程计算机。

例如,以下命令可以将文件/files/file.txt从远程主机host1.com复制到远程主机host2.com上的目录/files上。

scp user1@host1.com:/files/file.txt user2@host2.com:/files

系统将提示用户输入两个远程帐户的密码;数据将直接从一个远程主机传输到另一个。

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!

 

主题测试文章,只做测试使用。发布者:云大使,转转请注明出处:https://www.xp8.net/server/3389.html

(0)
打赏 微信扫一扫 微信扫一扫
云大使的头像云大使
上一篇 2019年3月23日 下午11:21
下一篇 2019年3月23日 下午11:21

相关推荐

  • centos及linux负载过高的解决方法

    linux越来越普及、各种面板的出现。造成了很多新手朋友都在使用linux 但是 出了问题不知道如何处理 今天把负载这块整理出来。仅供大家参考。使用uptime命令查看机器负载。 uptime //输出 up 1 day, 23:14, 2 users, load averages: 1.69 2.21 2.09 平均负载表示1、5、15分钟进程队列中的平均…

    服务器运维 2018年10月21日
    6.5K00
  • OneinStack自动部署Let’s Encrypt证书 | Linux教程

    Let’s Encrypt是一个由电子前哨基金会、Mozilla基金会、Akamai、密歇根大学、思科联合发起的一个项目。它旨在为站长提供一个免费的、完全自动化的证书申请过程,从而让整个互联网都能享受到HTTPS加密。Let’s Encrypt的证书申请过程非常简单、安全、快速、自动化并且免费。Let’s Encrypt是一个中间CA,它的CA证…

    服务器运维 2018年11月21日
    2.6K00
  • 有关Linux中的wget命令详细操作教程方法

    如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624商祺云-阿里代理、景安代理、西部代理 这篇文章主要为大家详细介绍了Linux的wget命令,教大家如何使用wget,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 Linux wget是一个下载文件的工具,它用在命令行下。对于Linux用户是必不可少的工具,尤其对于网络管理员,…

    服务器运维 2019年1月4日
    2.8K00
  • Linux下MySQL无法访问问题排查的基本步骤-linux教程

    问题说明 本文说明云服务器 ECS Linux 上 MySQL 无法访问问题的一般排查步骤。 处理办法 查看 Linux 操作系统是否已经安装了 MySQL $ rpm -qa mysql mysql-4.1.7-4.RHEL4.1 # 说明已经安装了 MySQL 检查状态 检测 MySQL 运行状态: service mysqld status 启动服务:…

    数据库运维 2019年1月1日
    2.6K00
  • CentOS如何磁盘挂载

    [v_error]注意:本文中的磁盘/dev/xvdb 为作者测试服务器上的命名,在您的服务器中可能是 /dev/sdb /dev/vdb 等等,请按您的磁盘名称修改开源地址[/v_error] mkdir -p /www 1、确认是否有没有分区的磁盘,如下图,没有分区的磁盘是 /dev/xvdb ,在您的服务器中可能是 /dev/vdb 请注意按实际名称修…

    2018年5月6日
    10.5K10

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

工作时间:周一至周五,9:30-18:30,节假日休息

添加微信
添加微信
分享本页
返回顶部
---------官方优惠叠加渠道折扣:通过我们购买腾讯云/阿里云,价格更低,服务更优。更有专业配置指导与服务。微信同步:18838889666----