【帮助中心】Linux scp 命令教程,跨服务器传输文件与目录实操方法

2026-10-14 04:41:29丨 发布者:云天域--技术

当您有多台 Linux 云服务器,需要迁移网站数据、备份文件,或者把本地文件上传到远程服务器,可以使用 scp 命令。scp 基于 ssh 协议传输,自带加密,无需额外安装软件,服务器之间传输文件十分方便。

一、scp 基础语法

# 本地文件上传到远程服务器
scp 本地文件路径 用户名@远程服务器IP:远程保存路径

# 远程服务器文件下载到本地
scp 用户名@远程服务器IP:远程文件路径 本地保存路径

二、上传文件示例

# 将本地test.txt上传到远程服务器/root目录
scp test.txt root@123.123.123.123:/root/

三、下载文件示例

# 把远程服务器的backup.tar.gz下载到本机/home目录
scp root@123.123.123.123:/root/backup.tar.gz /home/

四、传输整个文件夹(加 - r 参数)

传输目录必须添加-r参数,递归复制文件夹内所有子文件

# 上传本地www网站目录到远程服务器
scp -r /home/wwwroot root@123.123.123.123:/home/

# 下载远程wwwroot文件夹到本地
scp -r root@123.123.123.123:/home/wwwroot /home/

五、常用参数说明

  • -r:递归传输文件夹(目录必备)
  • -P:指定 ssh 端口,远程服务器修改过 ssh 端口时使用(大写 P)
# 远程ssh端口不是22,改为2222端口传输文件
scp -P 2222 test.txt root@123.123.123.123:/root

六、常见问题

  1. 提示连接超时:检查服务器安全组、防火墙是否放行 22 端口
  2. 权限拒绝:确认远程目录有写入权限,使用正确的登录账号
  3. 传输大文件中断:scp 中断后不支持断点续传,超大文件建议用 rsync
  4. 注意端口参数是大写-P,小写 - p 是保留文件属性,不要搞混

总结

scp 适合少量文件在云服务器之间快速上传下载,操作简单、加密安全。网站迁移、备份文件临时拷贝都可以使用 scp;如果是几十 GB 的超大文件,推荐使用支持断点续传的 rsync 工具。