Linux scp如何快速传文件?

scp基础语法

scp [选项] 源文件路径 目标文件路径
  • 常用选项
    • -P:指定远程SSH端口(默认为22)
    • -r:递归复制整个目录
    • -C:启用压缩传输
    • -i:指定私钥文件(用于密钥认证)

核心操作场景

本地文件 → 远程服务器

scp /本地/文件.txt 用户名@远程IP:/远程/目录/

示例
将本地的report.pdf复制到远程服务器168.1.100/home/user/docs/目录:

scp ~/documents/report.pdf user@192.168.1.100:/home/user/docs/

远程服务器 → 本地

scp 用户名@远程IP:/远程/文件路径 /本地/目录/

示例
下载远程服务器0.113.5上的/var/log/app.log到本地当前目录:

scp admin@203.0.113.5:/var/log/app.log ./

远程服务器之间传输

scp 用户1@源IP:/文件路径 用户2@目标IP:/目标路径/

示例
serverA/data/backup.zip复制到serverB/backups/

scp john@192.168.1.10:/data/backup.zip mary@192.168.1.20:/backups/

递归复制目录(含子文件)

scp -r /本地/目录/ 用户名@远程IP:/目标路径/

示例
上传整个project/目录到远程:

scp -r ~/project/ dev@example.com:/opt/development/

高级配置技巧

  1. 指定非默认SSH端口
    若远程SSH端口为2222

    scp -P 2222 file.txt user@host:/path/
  2. 使用密钥认证免密码
    通过-i指定私钥:

    scp -i ~/.ssh/id_rsa_private file.txt user@host:/path/
  3. 启用传输压缩(大文件推荐)

    scp -C largefile.iso user@host:/backups/

注意事项

  1. 权限问题

    • 确保目标路径有写入权限(远程用户需具备/目标路径/的写权限)。
    • 本地文件需有读权限。
  2. 安全性

    • 所有传输均通过SSH加密,避免使用明文传输工具(如FTP)。
    • 推荐使用密钥登录而非密码(通过ssh-keygen生成密钥对)。
  3. 路径格式

    • 远程路径格式:用户名@主机:路径
    • 特殊字符(如空格)需用引号包裹:"file name.txt"

常见问题解决

  • 连接超时
    检查防火墙是否放行SSH端口,或确认远程IP是否正确:

    ssh user@host  # 先测试SSH连通性
  • Permission denied

    1. 确认远程目录权限:chmod 755 /目标路径
    2. 检查密钥权限:chmod 600 ~/.ssh/id_rsa
  • 命令无响应
    使用-v参数查看详细日志:

    scp -v file.txt user@host:/path/

scp是Linux系统管理员和开发者的核心工具之一,兼顾安全性与效率,通过掌握基础命令与场景化操作,可轻松实现跨服务器文件管理,对于更复杂的传输任务(如增量同步),可进阶学习rsync命令,但scp在简单场景中仍是首选方案。

引用说明基于Linux man-pages的scp文档(v8.4)及OpenSSH官方实践指南,确保信息的准确性与安全性,操作示例已在Ubuntu 22.04/CentOS 7环境中验证。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9973.html

(0)
酷番叔酷番叔
上一篇 2025年8月8日 08:45
下一篇 2025年8月8日 09:01

相关推荐

  • Linux下如何使用FTP?详细操作步骤解析

    在Linux系统中,FTP(File Transfer Protocol,文件传输协议)是一种常用的文件传输方式,主要用于在客户端和服务器之间进行文件的上传、下载等操作,Linux下既可以通过配置FTP服务端实现文件共享,也可以使用客户端工具连接远程FTP服务器,本文将从服务端搭建、客户端使用、常见问题解决等方……

    2025年9月27日
    7400
  • linux如何退出tty

    Linux 中,退出 tty 可以使用 exit 命令或按 `Ctrl + D

    2025年8月18日
    8600
  • Linux休眠与挂起究竟有何区别?

    Linux休眠将系统状态保存到硬盘后完全断电,恢复时从硬盘加载;挂起则保持内存供电进入低功耗状态,可快速唤醒但持续耗电,休眠适合长时间断电,挂起适合短时离开。

    2025年6月18日
    10500
  • Linux忘记root密码怎么办?重置方法有哪些?

    忘记Linux系统的root密码是管理员可能遇到的紧急情况,但通过正确的方法可以安全恢复,本文将分场景详细介绍解决步骤,涵盖本地系统、Live介质救援及云服务器场景,并提供注意事项和FAQs,本地系统可进入GRUB菜单(常见场景)当系统能正常启动到GRUB引导菜单时,可通过修改内核参数进入单用户模式或救援模式……

    2025年9月21日
    6300
  • linux下如何用python文件大小

    Linux下用Python获取文件大小,可使用os.path.

    2025年8月15日
    8000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信