笔者刚接触到服务器这个概念,所以就类似于一个在深山老林中的人刚接触电脑一样,所以首先想介绍一下啥是服务器。然后再记录一下scp的用法

一、科普

  • 服务器是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机(如PC机、智能手机、ATM等终端甚至是火车系统等大型设备)提供计算或者应用服务。服务器具有高速的CPU运算能力、长时间的可靠运行、强大的I/O外部数据吞吐能力以及更好的扩展性。根据服务器所提供的服务,一般来说服务器都具备承担响应服务请求、承担服务、保障服务的能力。服务器作为电子设备,其内部的结构十分的复杂,但与普通的计算机内部结构相差不大,如:cpu、硬盘、内存,系统、系统总线等。根据不同的用途,服务器也分为好多种(笔者搜“服务器百度百科”,然后下面就出来:网络服务器、云服务器、电脑服务器……)百度知道上面也有:web服务器,dns服务器,存储服务器,代理服务器,防火墙系统,email系统,ftp服务器……
  • 超算、服务器、个人PC的区别:超级计算机指得是具有很强计算能力的计算机集群,一般包括好几千颗高性能的cpu,计算能力是最强的。而服务器的范围很广,但说白了也是一台高性能的电脑,用来专门对外提供网页,查询,存储或初级计算服务等等功能,可以是多cpu,也可以是单cpu,但规模和超级计算机比起来要差很多。而个人电脑就是只有一颗或多颗(很少有用多cpu作个人电脑的,费电)的普通电脑,可以完成上网,编程,看电影,玩游戏等。计算能力差,不适合作科学计算。

好了,现在笔者知道了,服务器、超算都是电脑,它们只不过性能更高。可以简单将服务器、超算、个人PC的性能做如下比较:

  • 性能:个人PC<服务器<超算
  • 价格:个人PC<服务器<超算
  • 规模:个人PC<服务器<超算

ps:一分钱一分货的道理彰显无遗。

二、scp 简单使用

1、cp

超算和服务器一般都是linux系统,linux系统中拷贝文件的指令是cp(copy file),其用法简单介绍如下所示:

cp [options] source dest  #or
cp [options] source... directory
#example
cp -r test/ newtest #dir
cp ./a.sh ../       #file

参数说明:

  • -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
  • -d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
  • -f:覆盖已经存在的目标文件而不给出提示。
  • -i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
  • -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
  • -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
  • -l:不复制文件,只是生成链接文件。

【注】r和R参数的区别:-r 的作用是递归,可复制目录,如果复制目录必须加此选项。-R 的作用仅仅是复制目录。两者功能上是等价的。

2、scp

Linux scp(secure copy) 命令用于 Linux 之间复制文件和目录;scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。

scp [options] file_source file_target
#example
scp usr1@IP1:dir/a.sh ./   #file
scp ./a.sh usr1@IP1:dir/   #file
scp -r usr1@IP1:dir/ ./    #dir

关于file_source

[[user@]host1:]file1

关于file_target

[[user@]host2:]file2

关于file_sourcefile_target间的空格:可加...,也可不加

关于options

[-1246BCpqrv]
[-c cipher]
[-F ssh_config]
[-i identity_file]
[-l limit]
[-o ssh_option]
[-P port]
[-S program]

参数说明:

  • -1: 强制scp命令使用协议ssh1
  • -2: 强制scp命令使用协议ssh2
  • -4: 强制scp命令只使用IPv4寻址
  • -6: 强制scp命令只使用IPv6寻址
  • -B: 使用批处理模式(传输过程中不询问传输口令或短语)
  • -C: 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
  • -p:保留原文件的修改时间,访问时间和访问权限。
  • -q: 不显示传输进度条。
  • -r: 递归复制整个目录。
  • -v:详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。
  • -c cipher: 以cipher将数据传输进行加密,这个选项将直接传递给ssh。
  • -F ssh_config: 指定一个替代的ssh配置文件,此参数直接传递给ssh。
  • -i identity_file: 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。
  • -l limit: 限定用户所能使用的带宽,以Kbit/s为单位。
  • -o ssh_option: 如果习惯于使用ssh_config(5)中的参数传递方式,
  • -P port:注意是大写的P, port是指定数据传输用到的端口号
  • -S program: 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。

3、一个小问题:

笔者在写这篇博文之前曾经遇到一个小问题,问题描述如下:笔者现在有两个服务器的号,

A  IP1:usr1
B  IP2:usr2

然后笔者想通过scp跨服务器拷贝文件,然后笔者尝试了如下命令:

在A端
scp a.sh usr2@IP2:dir2/    #can't
ping IP2                   #can't
在B端
scp b.sh usr1@IP1:dir1/    #can
ping IP1                   #can

也就是说,A的【开放性】要优于B,在B端将B的文件拷贝到A端可以,反之,从A端将A的文件拷贝到B端不可以。那么如何将A的文件拷贝到B端呢?可以在B端将A的文件拷贝到B端,命令如下:

在B端
scp usr1@IP1:dir1/a.sh ./

这样问题就迎刃而解了。


另外笔者发现,在windows下用cmd也可以scp;关于【开放性】,笔者暂认为:个人PC<服务器<超算。

要用scp的话,考虑的优先级为:
个人PC>服务器>超算

关于IP查询:

ipconfig #cmd,找ipv4
ifconfig    #linux,找inet

Linux scp 跨服务器拷贝 + 服务器简介相关推荐

  1. linux scp 跨服务器,scp跨服务器拷贝,后台运行

    [转载]原文:https://blog.csdn.net/u013091013/article/details/68941250 通常情况下,我门在同一台服务器拷贝数据最常用的命令便是cp,如果要在不 ...

  2. Linux SCP跨服务器传输文件

    SCP跨服务器传输文件 注: 1.跨服务器传输文件或文件夹需确保两台服务器之间的22端口是互通的 2.sh脚本自动删除本机原有文件或文件夹然后在从其他服务器上拷贝文件或文件夹到本机 一.sh脚本定时自 ...

  3. linux命令跨进程拷贝文件,linux scp命令安全远程文件复制程序

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

  4. scp跨主机拷贝工具

     参考:http://www.cnblogs.com/hitwtx/archive/2011/11/16/2251254.html SSH上A机,要将10.1.17.95机/tpdata/shell_ ...

  5. linux主机之间使用密钥对无密码登录/SCP无密码拷贝服务器文件

    一.使用密钥对无密码登录Linux服务器 1. 用ssh-keygen生成密钥对 为了减少文件移动操作,建议在客户端操作. ssh-keygen -t rsa 建议不要输入密码passphrase, ...

  6. linux服务器拷贝目录文件夹,linux两台服务器之间文件/文件夹拷贝

    linux两台服务器之间文件/文件夹拷贝 跨服务器拷贝需要用到的命令是scp. ----------------------拷贝文件夹--------------------------------- ...

  7. Linux拷贝服务器文件夹到本地

    方法1:scp命令 scp命令是用于通过 SSH 协议安全地将文件复制到远程系统和从远程系统复制文件到本地的命令.Linux SCP 命令是一种在两个远程节点之间传输文件的便捷且安全的方式,使用 SS ...

  8. jenkins最完整自动打包编译备份,跨服务器拷贝,git自动触发构建

    jenkins自动构建vue项目(自动打包.备份.上传.跨服务器拷贝.git自动触发构建) 一:环境准备: 首先,在安装jenkins之前,我们要先在linux中必须安装jdk,本次我们使用的是jdk ...

  9. 从Linux 服务器拷贝文件到Windows 本地

    数据库备份文件拷贝到本地 下载PuTTY软件,并在C盘安装目录中,找到pscp.exe文件,将pscp.exe的路径加入到系统环境变量Path中,                          官 ...

最新文章

  1. 【HDU】3308 LCIS
  2. [hive] hive 内部表和外部表
  3. 太赞了!华为工程师总结的Linux笔记,提供下载
  4. 怎样使用Mendeley高效地管理中文文献
  5. 初心大陆----python宝典(意外发生篇)
  6. 【MFC】带图标的工具栏
  7. 构造函数必须没有代码
  8. oracle找到表的位置,查看Oracle表中的指定记录在数据文件中的位置
  9. Java中String相关类型的区别
  10. poi导出Excel(分行单元格颜色设置,字体设置,合并单元格,插入图片)
  11. 解决警告“ld: warning: directory not found for option”
  12. 《深入理解Java虚拟机》第6章 类文件结构
  13. 卓岚APP远程采集正泰单相电子式电能表 ZLAN5144J的应用分享
  14. html 页面只能打印一半,打印机只能打印一部分-打印机只能打印一半是什么问?打印机只能打印 – 手机爱问...
  15. 常用计算机病毒防治办法,计算机病毒防治方法
  16. Span 介绍及使用(一)
  17. Moon Modeler v1.6.5功能和特点
  18. HTML5期末考核大作业,个人网站—— 程序员个人简历模板下载HTML+CSS+JavaScript
  19. “char”知多少。
  20. 陆小曼给徐志摩的挽联

热门文章

  1. 基于STM32单片机驱动HX711的代码分享,仅供参考
  2. 哈希树(HashTree)
  3. 项目-病例步态的分析研究跟进-使用霍尔特双参数指数平滑法来平滑关节数据的过程中的错误处理Error27error C3861: 'cvPoint': identifier not foundd
  4. 与非门实现异或与同或运算
  5. 2018 CCCC天梯赛 L2 04 秀恩爱分得快
  6. vuecli3打包规范
  7. jq循环tr获取第一个td的值
  8. R语言survival包的survfit函数拟合生存曲线数据、survminer包的ggsurvevents函数可视化生存时间分布图、设置normalized参数归一化比例结果
  9. OpenGL实现可交互的三维三次贝塞尔曲线(实现鼠标控制)
  10. 杰理之蓝牙发射器的搜索设备的时间修改方法【篇】