文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

SCP命令在不同远程服务器之间发送文件(指定端口、大量小文件操作)

2023-08-22 09:51

关注

在这里插入图片描述

最近想把数据集放在另一个服务器上,但是如果先下载到本地然后再上传过去,则需要浪费好久时间。

特总结下如何快捷的通过命令完成不同远程服务器之间的文件传输,以及遇到的问题。

SCP命令

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

单个文件的传输

scp /home/src/1.py username@xxx.xx.xx.xx:/home/des/

将这些信息换成自己的就可以了。


整个文件夹的传输

scp -r /home/src/ username@xxx.xx.xx.xx:/home/des/

指定端口传输

如果目标服务器是一个docker,也就是需要指定特定端口号,则指定参数-P即可, 如下:

scp -P 18888 -r /home/src/ username@xxx.xx.xx.xx:/home/des/

需要注意的问题

Permission denied, please try again

可通过chmod命令暂时修改权限为766,也就是rwx rw- rw-

chmod 766 xxx.txt

然后再改回来(通常文件默认是rwx r-x r-x)

chmod 755 xxx.txt

传输内容为大量的小文件

当所传输的文件夹中包含大量的小文件,比如数据集(有很多张图片),这时候使用SCP速度会很慢,因为每传输一个文件都需要进行 协议信息确认以及传输结束后的确认信息,这样的开销是非常大的.

因此通常会结合tar命令打包,然后在发送,能够节省很多倍速度

cd 需要打包的文件夹
tar cf - * | ssh -p 10086 username@xxx.xx.xx.xx "cd /home/des/ && tar xf -"

  1. Linux scp命令 ↩︎

来源地址:https://blog.csdn.net/qq_37344125/article/details/128131841

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-服务器
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯