news 2026/8/4 5:55:04

Linux rcp 命令超全解析|远程文件复制用法 + 安全避坑指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux rcp 命令超全解析|远程文件复制用法 + 安全避坑指南

一、命令简介

rcp(remote copy)命令用于在本地主机与远程主机之间,或两台远程主机之间复制文件或目录。它基于 rsh(remote shell)协议实现,通过适当的配置可以实现无需密码的文件传输,旨在简化跨主机的文件复制操作。

注意:由于 rcp 使用明文传输且安全性较低,在现代环境中,scp 或 rsync(基于 SSH)是更安全、更推荐的文件传输工具。rcp 通常仅在内网可信环境或历史遗留系统中使用。


二、语法格式

基本语法格式如下:

bash

运行

rcp [选项] 源文件/目录 目标文件/目录 rcp [选项] 源文件1 源文件2 ... 目标目录

远程文件路径格式:

plaintext

[用户名@]主机名:路径

如果省略用户名,则默认使用当前本地用户名。 如果路径中包含特殊字符(如空格、$、* 等),需用单引号 ''、双引号 "" 或反斜线 \ 进行转义。


三、常用选项及说明

表格

选项说明
-p保留源文件或目录的属性,包括拥有者、所属组、权限与最后修改时间。
-r递归复制,用于复制整个目录及其子目录和文件。
-x对传输的所有数据进行加密(使用 DES 加密,安全性仍较弱)。
-k请求 Kerberos 票据认证(如果系统支持)。

注意:标准 rcp 通常不支持 -P(指定端口)选项。


四、示例用法

1. 基本文件复制

将本地文件复制到远程主机:

bash

运行

rcp test.txt server1:/tmp/

复制本地文件 test.txt 到远程主机 server1 的 /tmp 目录下,文件名不变。

bash

运行

rcp test.txt alice@server1:/home/alice/

使用远程用户名 alice 进行复制。

从远程主机复制文件到本地:

bash

运行

rcp server1:/var/log/app.log .

将远程主机 server1 上的 /var/log/app.log 复制到当前目录。


2. 目录复制(递归)

bash

运行

rcp -r mydata server1:/backup/

将本地目录 mydata 递归复制到远程主机的 /backup 目录下。

bash

运行

rcp -r server1:/var/www/html ./web_backup

将远程目录 /var/www/html 复制到本地的 ./web_backup 目录。


3. 保留文件属性

bash

运行

rcp -p important.conf server1:/etc/

复制文件并保留原始时间戳、权限等属性。


4. 复制多个文件

bash

运行

rcp file1.txt file2.jpg file3.pdf server1:/shared/

将多个本地文件复制到远程主机的同一目录下。


五、注意事项

1. 安全性警告

rcp 默认不加密传输内容(除非使用 -x 选项,但其加密强度不足),用户名、密码(如有)及文件内容均可能被窃听。

强烈建议在生产环境或公网中使用 scp、sftp 或 rsync over SSH 替代。

2. 配置要求

要使 rcp 无需密码工作,通常需要配置以下一项或多项:

  • /etc/hosts 或 DNS:确保主机名可解析。
  • ~/.rhosts 或 /etc/hosts.equiv:设置信任主机(极不安全,不推荐)。
  • 启用 rsh 服务:通常需安装并启动 rsh-server 或 rsh 包。

3. 常见问题

  • “Permission denied”:检查目标目录权限、rhosts 配置及 rsh 服务状态。
  • “Connection refused”:远程主机的 rsh 服务未运行或防火墙屏蔽了端口(默认 514)。
  • 路径含特殊字符:使用引号包裹远程路径,如 rcp local.txt server:'/path with spaces/file'。

4. 替代命令推荐

表格

场景推荐命令优点
安全文件复制scp基于 SSH,加密传输,配置简单
安全目录同步rsync -avz -e ssh增量同步,效率高,支持压缩

5. 兼容性说明

大多数现代 Linux 发行版已不再预装 rcp,需手动安装 rsh 或 rcp 软件包。


六、总结

rcp 是一个历史悠久的远程文件复制工具,因其安全性缺陷,仅建议在封闭、可信的测试环境或旧系统中使用。新项目或生产环境应优先选用基于 SSH 的安全传输工具。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/4 5:54:01

多物理场耦合仿真中的辐射传热建模与应用

1. 多物理场耦合仿真概述多物理场耦合仿真(Multiphysics Simulation)是工程仿真领域的重要技术方向,它能够模拟真实世界中多个物理现象相互作用的复杂系统。在工程实践中,很少有问题是单一物理场能够完整描述的。比如在电子设备散…

作者头像 李华
网站建设 2026/8/4 5:53:28

C++网络编程实战:从零实现TCP通信工具,掌握Socket与多线程核心技术

1. 项目概述:为什么选择从零实现一个网络通信工具?如果你正在学习C,并且已经掌握了基础语法和面向对象的概念,那么恭喜你,你已经具备了挑战一个真正能“跑起来”的项目的门槛。很多朋友学C,常常陷入“语法全…

作者头像 李华
网站建设 2026/8/4 5:52:20

GitHub开源项目破圈方法论:从代码自嗨到生态出圈的实战指南

在GitHub数百万开源项目中,绝大多数项目陷入“代码写完即沉寂”的困境:零星Star、零贡献者、无传播、无迭代,最终沦为个人仓库里的“僵尸项目”。真正的开源破圈,从来不是靠运气刷屏,而是一套可复制、可落地、可迭代的…

作者头像 李华
网站建设 2026/8/4 5:49:21

2026年企业知识库管理工具排行榜 行业观察选型避坑指南

2026年企业知识库行业发展趋势2026年,企业数智化转型进入深水区,知识资产作为企业核心竞争力的载体,其管理效率直接影响组织协作与业务创新能力,企业知识库管理工具的市场需求持续攀升,技术迭代与行业标准也进入快速更…

作者头像 李华
网站建设 2026/8/4 5:47:01

腾讯云轻量服务器Docker容器化部署实战:从零到多应用管理

1. 项目概述:为什么我们需要容器化部署? 刚接触服务器运维的朋友,可能都有过这样的经历:为了部署一个博客、一个网盘或者一个数据库,需要花上大半天甚至一两天的时间去安装各种依赖、配置环境变量、处理端口冲突&…

作者头像 李华
网站建设 2026/8/4 5:45:53

Python pypyodbc连接Access数据库报错排查与解决方案全指南

1. 项目概述:为什么需要整理pypyodbc连接Access的报错?如果你在Python项目里需要操作一个老旧的Access数据库(.mdb或.accdb文件),pypyodbc库大概率是你的首选。它轻量、纯Python实现,在Windows环境下连接Ac…

作者头像 李华