iis服务器助手广告广告
返回顶部
首页 > 资讯 > 操作系统 >Linux中怎么使用SCP命令安全传输文件
  • 414
分享到

Linux中怎么使用SCP命令安全传输文件

2023-06-16 04:06:02 414人浏览 八月长安
摘要

linux中怎么使用SCP命令安全传输文件,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。SCP(安全复制Secure Copy)是 Linux 和 Unix 之

linux中怎么使用SCP命令安全传输文件,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

SCP(安全复制Secure Copy)是 Linux 和 Unix 之类的系统中的命令行工具,用于通过网络安全地跨系统传输文件和目录。当我们使用 scp 命令将文件和目录从本地系统复制到远程系统时,则在后端与远程系统建立了 ssh 连接。换句话说,我们可以说 scp 在后端使用了相同的 SSH 安全机制,它需要密码或密钥进行身份验证。

在本教程中,我们将讨论 14 个有用的 Linux scp 命令示例。

scp 命令语法:

# scp <选项> <文件或目录> 用户名@目标主机:/<文件夹> # scp <选项> 用户名@目标主机:/文件 <本地文件夹>

scp 命令的第一个语法演示了如何将文件或目录从本地系统复制到特定文件夹下的目标主机。

scp 命令的第二种语法演示了如何将目标主机中的文件复制到本地系统中。

下面列出了 scp 命令中使用最广泛的一些选项,

  • -C 启用压缩

  • -i 指定识别文件或私钥

  • -l 复制时限制带宽

  • -P 指定目标主机的 ssh 端口号

  • -p 复制时保留文件的权限、模式和访问时间

  • -q 禁止 SSH 警告消息

  • -r 递归复制文件和目录

  • -v 详细输出

现在让我们跳入示例!

示例:1)使用 scp 将文件从本地系统复制到远程系统

假设我们要使用 scp 命令将 jdk 的 rpm 软件包从本地 Linux 系统复制到远程系统(172.20.10.8),请使用以下命令,

[root@linuxtechi ~]$ scp jdk-linux-x64_bin.rpm root@linuxtechi:/optroot@linuxtechi's passWord:jdk-linux-x64_bin.rpm                          100%   10MB  27.1MB/s   00:00[root@linuxtechi ~]$

上面的命令会将 jdk 的 rpm 软件包文件复制到 /opt 文件夹下的远程系统。

示例:2)使用 scp 将文件从远程系统复制到本地系统

假设我们想将文件从远程系统复制到本地系统下的 /tmp 文件夹,执行以下 scp 命令,

[root@linuxtechi ~]$ scp root@linuxtechi:/root/Technical-Doc-RHS.odt /tmproot@linuxtechi's password:Technical-Doc-RHS.odt                         100% 1109KB  31.8MB/s   00:00[root@linuxtechi ~]$ ls -l /tmp/Technical-Doc-RHS.odt-rwx------. 1 pkumar pkumar 1135521 Oct 19 11:12 /tmp/Technical-Doc-RHS.odt[root@linuxtechi ~]$

示例:3)使用 scp 传输文件时的详细输出(-v)

scp 命令中,我们可以使用 -v 选项启用详细输出。使用详细输出,我们可以轻松地发现后台确切发生了什么。这对于调试连接、认证和配置等问题非常有用。

root@linuxtechi ~]$ scp -v jdk-linux-x64_bin.rpm root@linuxtechi:/optExecuting: program /usr/bin/ssh host 172.20.10.8, user root, command scp -v -t /optOpenSSH_7.8p1, OpenSSL 1.1.1 FIPS  11 Sep 2018debug1: Reading configuration data /etc/ssh/ssh_configdebug1: Reading configuration data /etc/ssh/ssh_config.d/05-redhat.confdebug1: Reading configuration data /etc/crypto-policies/back-ends/openssh.configdebug1: /etc/ssh/ssh_config.d/05-redhat.conf line 8: Applying options for *debug1: Connecting to 172.20.10.8 [172.20.10.8] port 22.debug1: Connection established.&hellip;&hellip;&hellip;&hellip;debug1: Next authentication method: passwordroot@linuxtechi's password:

示例:4)将多个文件传输到远程系统

可以使用 scp 命令一次性将多个文件复制/传输到远程系统,在 scp 命令中指定多个文件,并用空格隔开,示例如下所示

[root@linuxtechi ~]$ scp install.txt index.html jdk-linux-x64_bin.rpm root@linuxtechi:/mntroot@linuxtechi's password:install.txt                                      100%    0     0.0KB/s   00:00index.html                                       100%   85KB   7.2MB/s   00:00jdk-linux-x64_bin.rpm                            100%   10MB  25.3MB/s   00:00[root@linuxtechi ~]$

示例:5)在两个远程主机之间传输文件

使用 scp 命令,我们可以在两个远程主机之间复制文件和目录,假设我们有一个可以连接到两个远程 Linux 系统的本地 Linux 系统,因此从我的本地 Linux 系统中,我可以使用 scp 命令在这两个系统之间复制文件,

命令语法:

# scp 用户名@远程主机1:/<要传输的文件> 用户名@远程主机2:/<文件夹>

示例如下:

# scp root@linuxtechi:~/backup-Oct.zip root@linuxtechi:/tmp# ssh root@linuxtechi "ls -l /tmp/backup-Oct.zip"-rwx------. 1 root root 747438080 Oct 19 12:02 /tmp/backup-Oct.zip

示例:6)递归复制文件和目录(-r)

scp 命令中使用 -r 选项将整个目录从一个系统递归地复制到另一个系统,示例如下所示:

[root@linuxtechi ~]$ scp -r Downloads root@linuxtechi:/opt

使用以下命令验证 Downloads 文件夹是否已复制到远程系统,

[root@linuxtechi ~]$ ssh root@linuxtechi "ls -ld /opt/Downloads"drwxr-xr-x. 2 root root 75 Oct 19 12:10 /opt/Downloads[root@linuxtechi ~]$

示例:7)通过启用压缩来提高传输速度(-C)

scp 命令中,我们可以通过使用 -C 选项启用压缩来提高传输速度,它将自动在源主机上启用压缩并在目标主机上解压缩。

root@linuxtechi ~]$ scp -r -C Downloads root@linuxtechi:/mnt

在以上示例中,我们正在启用压缩的情况下传输下载目录。

示例:8)复制时限制带宽(-l)

scp 命令中使用 -l 选项设置复制时对带宽使用的限制。带宽以 Kbit/s 为单位指定,示例如下所示:

[root@linuxtechi ~]$ scp -l 500 jdk-linux-x64_bin.rpm  root@linuxtechi:/var

示例:9)在 scp 时指定其他 ssh 端口(-P)

在某些情况下,目标主机上的 ssh 端口会更改,因此在使用 scp 命令时,我们可以使用 -P 选项指定 ssh 端口号。

[root@linuxtechi ~]$ scp -P 2022 jdk-linux-x64_bin.rpm  root@linuxtechi:/var

在上面的示例中,远程主机的 ssh 端口为 “2022”。

示例:10)复制时保留文件的权限、模式和访问时间(-p)

从源复制到目标时,在 scp 命令中使用 -p 选项保留权限、访问时间和模式。

[root@linuxtechi ~]$ scp -p jdk-linux-x64_bin.rpm  root@linuxtechi:/var/tmpjdk-linux-x64_bin.rpm                            100%   10MB  13.5MB/s   00:00[root@linuxtechi ~]$

示例:11)在 scp 中以安静模式传输文件(-q)

scp 命令中使用 -q 选项可禁止显示 ssh 的传输进度、警告和诊断消息。示例如下所示:

[root@linuxtechi ~]$ scp -q -r Downloads root@linuxtechi:/var/tmp[root@linuxtechi ~]$

示例:12)在传输时使用 scp 中的识别文件(-i)

在大多数 Linux 环境中,首选基于密钥的身份验证。在 scp 命令中,我们使用 -i 选项指定识别文件(私钥文件),示例如下所示:

[root@linuxtechi ~]$ scp -i my_key.pem -r Downloads root@linuxtechi:/root

在上面的示例中,my_key.pem 是识别文件或私钥文件。

示例:13)在 scp 中使用其他 ssh_config 文件(-F)

在某些情况下,你使用不同的网络连接到 Linux 系统,可能某些网络位于代理服务器后面,因此在这种情况下,我们必须具有不同的 ssh_config 文件。

通过 -F 选项在 scp 命令中指定了不同的 ssh_config 文件,示例如下所示:

[root@linuxtechi ~]$ scp -F /home/pkumar/new_ssh_config -r Downloads root@linuxtechi:/rootroot@linuxtechi's password:jdk-linux-x64_bin.rpm                     100%   10MB  16.6MB/s   00:00backup-Oct.zip                            100%  713MB  41.9MB/s   00:17index.html                                100%   85KB   6.6MB/s   00:00[root@linuxtechi ~]$

示例:14)在 scp 命令中使用其他加密方式(-c)

默认情况下,scp 使用 AES-128 加密方式来加密文件。如果你想在 scp 命令中使用其他加密方式,请使用 -c 选项,后接加密方式名称。

假设我们要在用 scp 命令传输文件时使用 3Des-cbc 加密方式,请运行以下 scp 命令:

[root@linuxtechi ~]# scp -c 3des-cbc -r Downloads root@linuxtechi:/root

使用以下命令列出 sshscp 支持的加密方式:

[root@linuxtechi ~]# ssh -Q cipher localhost | paste -d , -s -3des-cbc,aes128-cbc,aes192-cbc,aes256-cbc,root@linuxtechi,aes128-ctr,aes192-ctr,aes256-ctr,root@linuxtechi,root@linuxtechi,root@linuxtechi[root@linuxtechi ~]#

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网操作系统频道,感谢您对编程网的支持。

--结束END--

本文标题: Linux中怎么使用SCP命令安全传输文件

本文链接: https://www.lsjlt.com/news/282369.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Linux中怎么使用SCP命令安全传输文件
    Linux中怎么使用SCP命令安全传输文件,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。SCP(安全复制Secure Copy)是 Linux 和 Unix 之...
    99+
    2023-06-16
  • Linux中SSH远程文件/目录传输命令scp怎么用
    这篇文章给大家分享的是有关Linux中SSH远程文件/目录传输命令scp怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、scp是什么?scp是secure copy的简写,用于在Linux下进行远程拷贝文...
    99+
    2023-06-13
  • scp 文件传输命令详解
    1. scp简介 scp(secure copy)是一个基于 SSH 协议在网络之间进行安全传输的命令,其格式为“scp [参数]本地文件 远程账户@远程 IP 地址:远程目录”。scp 不仅能够通过...
    99+
    2023-09-08
    linux 网络 服务器
  • scp命令进行文件传输
    scp命令进行文件传输 一、登录目标服务器二、将本地服务器文件上传到目标服务器三、将目标服务器文件下载到本地服务器 ...
    99+
    2023-10-05
    服务器 linux ssh
  • 怎么使用linux ssh命令传输文件
    使用Linux的ssh命令传输文件有多种方法,以下是其中的两种常见方法: 使用scp命令: scp命令是用于在本地和远程主机之间传...
    99+
    2023-10-22
    ssh linux
  • scp命令----跨服务器传输文件
    scp命令 Linux scp 命令用于 Linux 之间复制文件和目录。 scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。 scp 是加密的,rcp 是不加密的,s...
    99+
    2023-09-25
    服务器 github 运维
  • Linux中SSH的SCP传输命令的使用方法
    这篇文章主要讲解了“Linux中SSH的SCP传输命令的使用方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中SSH的SCP传输命令的使用方法”吧!Linux系统管理员应该很熟悉...
    99+
    2023-06-13
  • 怎么在linux中使用nc命令传输文件
    本篇文章为大家展示了怎么在linux中使用nc命令传输文件,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。目的主机监听 nc -l 监听端口[ 未使用端口] > 要接收的文件名 nc -l 44...
    99+
    2023-06-12
  • 使用安全复制命令scp在Windows系统和Linux系统之间相互传输文件
    现在已经有很多远程控制服务器的第三方软件平台,比如FinalShell,MobaXterm等,半可视化界面,使用起来非常方便和友好,两个系统之间传输文件直接拖就行,当然也可以使用命令方式在两个系统之间相互传递。 目录 命令方式传输文...
    99+
    2023-08-30
    安全 linux 运维
  • linux下怎么用SCP命令进行网络传输
    本篇内容主要讲解“linux下怎么用SCP命令进行网络传输”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux下怎么用SCP命令进行网络传输”吧!早上看到scp 的内容,因为自己偶尔也会用到...
    99+
    2023-06-16
  • 如何在CentOS中使用scp命令进行远程文件传输
    要在CentOS中使用scp命令进行远程文件传输,您可以按照以下步骤操作: 打开终端并输入以下命令来使用scp命令: scp [...
    99+
    2024-04-02
  • Linux中怎么使用ftp命令对文件进行传输
    本篇文章为大家展示了Linux中怎么使用ftp命令对文件进行传输,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。  [root@www ~]# yum install ftp 安装ftp支持 RedH...
    99+
    2023-06-13
  • 怎么在linux中使用 rz 和 sz命令传输文件
    本篇文章给大家分享的是有关怎么在linux中使用 rz 和 sz命令传输文件,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一. 概述     &n...
    99+
    2023-06-09
  • Linux怎么利用sftp命令传输文件
    这篇文章主要讲解了“Linux怎么利用sftp命令传输文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux怎么利用sftp命令传输文件”吧!  sftp是Linux系统中的命令,使用...
    99+
    2023-06-13
  • Linux中scp命令怎么用
    这篇文章主要介绍Linux中scp命令怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Linux scp命令用于Linux之间复制文件和目录,具体如何使用这里好好介绍一下,从本地复制到远程、从远程复制到本地是两种...
    99+
    2023-06-16
  • 怎么在linux中使用scp命令
    今天就跟大家聊聊有关怎么在linux中使用scp命令,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1.命令格式:scp [参数] [原路径] [目标路径]2.命令功能:scp是 se...
    99+
    2023-06-13
  • Linux中如何使用scp命令远程上传下载文件或文件夹
    这篇文章主要介绍“Linux中如何使用scp命令远程上传下载文件或文件夹”,在日常操作中,相信很多人在Linux中如何使用scp命令远程上传下载文件或文件夹问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Lin...
    99+
    2023-06-27
  • Linux中怎么利用scp命令获取远程文件
    这期内容当中小编将会给大家带来有关Linux中怎么利用scp命令获取远程文件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、scp是什么?scp是secure copy的简写,用于在Linux下进行远程...
    99+
    2023-06-09
  • linux中的scp命令怎么用
    小编给大家分享一下linux中的scp命令怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!scp是secure copy的简写, 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。scp 是加密的,r...
    99+
    2023-06-27
  • cp和scp命令怎么在Linux中使用
    cp和scp命令怎么在Linux中使用?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。cp --- 主要是用于在同一台电脑上,在不同的目录之间来回copy文件 s...
    99+
    2023-06-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作