CentOS跨服务器文件复制是运维常见需求,常用方法包括scp、rsync及sftp,scp基于SSH,语法简洁(如scp file user@host:/path),适合小文件快速传输;rsync支持增量同步和压缩(rsync -avz source user@host:/dest),效率更高,适合大文件或目录,操作前需确保SSH免密登录或正确认证,开放防火墙端口(如22),并检查文件权限及网络连通性,这些方法安全可靠,可根据文件大小、网络环境灵活选择,有效提升跨服务器数据传输效率。
在服务器管理中,经常需要将文件从一台CentOS服务器复制到另一台服务器,例如数据迁移、配置同步、备份传输等场景,本文将介绍几种CentOS系统下常用的跨服务器文件复制方法,包括scp、rsync、sftp及SSH免密登录配置,帮助读者根据实际需求选择合适的方式。
使用scp命令:简单高效的小文件传输
scp(Secure Copy)是基于SSH的安全文件复制命令,适用于小文件或简单目录的传输,支持加密传输,确保数据安全性。
基本语法
scp [选项] 源文件路径 目标用户@目标主机IP:目标路径
- 选项说明:
-r:递归复制目录(适用于目录传输);-p:保留文件的权限、时间戳等属性;-P:指定SSH端口(默认22,若远程服务器SSH端口非22需使用);-v:显示详细传输过程(调试用)。
实际操作示例
(1)复制本地文件到远程服务器
将本地/home/user/test.txt文件复制到远程服务器168.1.100的/opt/目录下,目标用户为root:

scp /home/user/test.txt root@192.168.1.100:/opt/
(2)复制本地目录到远程服务器
递归复制本地/home/user/data/目录到远程服务器的/tmp/目录:
scp -r /home/user/data/ root@192.168.1.100:/tmp/
(3)从远程服务器复制文件到本地
将远程服务器168.1.100的/var/log/nginx/access.log复制到本地当前目录:
scp root@192.168.1.100:/var/log/nginx/access.log ./
优缺点
- 优点:简单易用,无需额外安装(CentOS默认已安装),支持加密传输。
- 缺点:不支持断点续传,大文件传输效率较低;每次传输需输入密码(未配置免密时)。
使用rsync命令:高效同步大文件与目录
rsync(Remote Sync)是一款强大的文件同步工具,支持增量复制、断点续传、权限保留等功能,适合大文件或频繁同步的场景,传输效率远高于scp。
基本语法
rsync [选项] 源文件路径 目标用户@目标主机IP:目标路径
- 选项说明:
-a:归档模式,相当于-rlptgoD(递归、保留权限、时间戳、属主属组等);-v:显示传输过程;-z:压缩传输数据,减少网络带宽占用;-P:显示传输进度,支持断点续传;--delete:目标路径中存在但源路径中不存在的文件会被删除(同步时谨慎使用)。
实际操作示例
(1)同步本地目录到远程服务器(保留所有属性,压缩传输)
rsync -avz /home/user/source/ root@192.168.1.100:/opt/destination/
(2)增量同步(仅传输变化的文件)
若需定期同步/data/目录到远程服务器,且仅同步新增或修改的文件:
rsync -avz --delete /data/ root@192.168.1.100:/backup/data/
(3)从远程服务器拉取文件并断点续传
若传输中断,可重新执行命令继续传输:
rsync -avzP root@192.168.1.100:/large_file.iso /home/user/
优缺点
- 优点:支持增量复制、断点续传,传输效率高;可删除目标多余文件,实现严格同步。
- 缺点:若未安装
rsync,需在两台服务器上安装(yum install rsync -y)。
使用sftp命令:交互式安全文件传输
sftp(SSH File Transfer Protocol)是基于SSH的安全文件传输协议,提供交互式命令行界面,类似于FTP,但数据通过SSH加密传输,安全性更高。
基本操作流程
(1)登录远程服务器
sftp 目标用户@目标主机IP
sftp root@192.168.1.100
(2)常用交互命令
put 本地文件路径 [远程路径]:上传本地文件到远程;get 远程文件路径 [本地路径]:下载远程文件到本地;ls [远程路径]:查看远程目录内容;cd [远程路径]:切换远程目录;- `mkdir
文章版权声明:除非注明,否则均为xmsdn原创文章,转载或复制请以超链接形式并注明出处。

