当前位置: 首页 > news >正文

系统间文件复制文档

文章目录

  • 系统间文件复制文档
    • windows 和 Linux 之间传输
      • xftp工具
      • xshell工具
    • linux之间传输
      • scp命令
      • rsync 命令
        • shell 模式
        • daemon 模式

系统间文件复制文档

windows 和 Linux 之间传输

xftp工具

在两个窗口之间拖动文件进行上传和下载。

在这里插入图片描述

xshell工具

Linux服务器安装 lrzsz 软件包。该方式传输速度比ftp慢。

[root@server ~ 17:32:41]# yum install -y lrzsz

上传:直接将文件拖拽到命令行窗口即可。

拉取:使用 sz 工具,并指定保存位置。

在这里插入图片描述

linux之间传输

scp命令

scp,全名secure copy,也就是安全复制,是基于ssh协议,也就是说Linux服务器要开启ssh服务。

[root@client ~ 14:45:35]# scp root@server:/root/etc-20250916.tar .
root@server's password: 
etc-20250916.tar                      100%   29MB  94.5MB/s   00:00    # 复制多个文件
[root@client ~ 14:46:28]# scp root@server:/root/etc.* .
root@server's password: 
etc.tar                               100%   29MB  87.3MB/s   00:00    
etc.tar.bz2                           100% 8974KB  98.2MB/s   00:00    
etc.tar.gz                            100%   10MB  97.2MB/s   00:00    
etc.tar.xz                            100% 7291KB 101.9MB/s   00:00    # 复制目录,使用 -r 选项
[root@client ~ 14:47:31]# scp root@server:/etc/selinux/ .
root@server's password: 
scp: /etc/selinux: not a regular file
[root@client ~ 14:47:54]# scp -r root@server:/etc/selinux/ .
root@server's password: 
semanage.conf                         100% 2321     3.2MB/s   00:00    
config                                100%  542     1.3MB/s   00:00    
cil                                   100% 7792    15.3MB/s   00:00    
hll                                   100%   17KB  36.8MB/s   00:00    
lang_ext                              100%    2     7.6KB/s   00:00  [root@client ~ 18:33:26]# scp etc.tar root@10.1.8.10:
etc.tar                           100%   29MB 105.2MB/s   00:00    

scp 命令缺点:不管目的位置是否有文件,总是再复制一次,可以理解为全量备份。缺少比对功能。

rsync 命令

Rsync(Remote Synchronize)是一款开源的、快速的、多功能的、远程数据同步备份工具,并且支持多种操作系统平台运行。

Rsync具有本地与远程两台主机之间的数据快速复制同步镜像、远程备份等功能,该功能类似scp,但是优于scp功能,还具有本地不同分区目录之间全量及增量复制数据。

Rsync同步数据镜像时,通过“quick check”算法,仅同步大小或最后修改时间发生变化的文件或目录,当然也可以根据权限,属主等属性变化的同步,所以可以实现快速同步。

前提:客户端和服务端都要提前安装好 rsync 软件包。

# 安装 rsync
[root@client ~ 18:34:01]# yum install -y rsync
shell 模式

shell 模式是基于 ssh 服务传送。

语法:

rsync [OPTION]… SRC DEST
rsync [OPTION]… SRC [USER@]HOST:DEST
rsync [OPTION]… [USER@]HOST:SRC DEST

常用选项

  • -n 参数执行一次空运行,与真实执行显示结果一致,但是没有做任何改变。
  • -v 显示执行过程中详细输出。
  • -a 代表“archive mode”,会启用参数:-r -l -p -t -g -o -D
  • -r 递归同步整个文件夹
  • -l 同步软连接
  • -p 保留权限
  • -t 保留时间戳
  • -g 保留所属组
  • -o 保留所有者
  • -D 同步设备文件

说明:

  • -A,同步时保留ACLs内容。
  • -X 同步时保留selinux内容。-a,不同步acl selinux内容。
# 准备文件
[root@client ~ 18:37:51]# mkdir pictures
[root@client ~ 18:43:04]# touch pictures/snap{1..5}.jpg
[root@client ~ 18:43:25]# ls
anaconda-ks.cfg  etc.tar  pictures
[root@client ~ 18:43:26]# ls pictures/
snap1.jpg  snap2.jpg  snap3.jpg  snap4.jpg  snap5.jpg
# 首次同步
[root@client ~ 18:43:32]# rsync -av pictures root@10.1.8.10:
sending incremental file list
pictures/
pictures/snap1.jpg
pictures/snap2.jpg
pictures/snap3.jpg
pictures/snap4.jpg
pictures/snap5.jpgsent 351 bytes  received 115 bytes  932.00 bytes/sec
total size is 0  speedup is 0.00
# 再次同步
[root@client ~ 18:44:03]# rsync -av pictures root@10.1.8.10:
sending incremental file listsent 153 bytes  received 17 bytes  340.00 bytes/sec
total size is 0  speedup is 0.00
# 更新部分文件时间戳,再同步
[root@client ~ 18:44:23]# touch pictures/snap{1,2}*
[root@client ~ 18:44:51]# rsync -av pictures root@10.1.8.10:
sending incremental file list
pictures/snap1.jpg
pictures/snap2.jpgsent 237 bytes  received 55 bytes  194.67 bytes/sec
total size is 0  speedup is 0.00
# 删除 SRC 中文件,默认不会同步删除DEST中文件
[root@client ~ 18:45:00]# rm -f pictures/snap5.jpg 
[root@client ~ 18:45:25]# rsync -av pictures root@10.1.8.10:
sending incremental file list
pictures/sent 145 bytes  received 20 bytes  330.00 bytes/sec
total size is 0  speedup is 0.00
# 使用选项 --delete 同步删除 DEST 中文件
[root@client ~ 18:45:28]# rsync -av pictures root@10.1.8.10: --delete
sending incremental file list
deleting pictures/snap5.jpgsent 146 bytes  received 39 bytes  370.00 bytes/sec
total size is 0  speedup is 0.00

将目标文件拉取到本地,操作过程一致。

同步注意事项:

  • 文件访问时间等属性、读写等权限、文件内容等有任何变动,都会被认为修改。
  • 目标目录下如果文件比源目录还新,则不会同步。
  • 源路径的最后是否有斜杠有不同的含义:
    • 有斜杠,只是复制目录中的文件。
    • 没有斜杠的话,不但要复制目录中的文件,还要复制目录本身。
daemon 模式

daemon 模式,不依赖 ssh 服务。

daemon 模式要求:服务端部署 rsynrc 服务。

  • **语法1:**源路径或目的路径的主机名后面包含两个冒号。

  • **语法2:**rsync://URL格式。

rsync [OPTION]… SRC [USER@]HOST::DEST
rsync [OPTION]… [USER@]HOST::SRC DEST
rsync [OPTION]… rsync://[USER@]HOST[:PORT]/SRC [DEST]

径的主机名后面包含两个冒号。

  • **语法2:**rsync://URL格式。
rsync [OPTION]… SRC [USER@]HOST::DEST
rsync [OPTION]… [USER@]HOST::SRC DEST
rsync [OPTION]… rsync://[USER@]HOST[:PORT]/SRC [DEST]

文章转载自:

http://Q4cfO8HP.yrjhr.cn
http://9DPpz3X5.yrjhr.cn
http://QWrS7cRL.yrjhr.cn
http://PjXLZcvX.yrjhr.cn
http://gQOvrJTg.yrjhr.cn
http://sojuG3xy.yrjhr.cn
http://qMOddeQG.yrjhr.cn
http://UghrsKxn.yrjhr.cn
http://NqgmXsJO.yrjhr.cn
http://w0FwdImg.yrjhr.cn
http://npItB6hm.yrjhr.cn
http://CIkgwbQE.yrjhr.cn
http://tHkxToA0.yrjhr.cn
http://b8ALTMkM.yrjhr.cn
http://Yygh7WrX.yrjhr.cn
http://JWUtHtLh.yrjhr.cn
http://kKvA0T3E.yrjhr.cn
http://y61WbJIo.yrjhr.cn
http://nps1UO1z.yrjhr.cn
http://NEbDJvGa.yrjhr.cn
http://O65UiT8k.yrjhr.cn
http://btV49T71.yrjhr.cn
http://JlQsqNr3.yrjhr.cn
http://HVak8L05.yrjhr.cn
http://fuCFXQVO.yrjhr.cn
http://jbGfk4K8.yrjhr.cn
http://I5mH0mA0.yrjhr.cn
http://DFqDnOek.yrjhr.cn
http://De9YM2y7.yrjhr.cn
http://tjiWvWr3.yrjhr.cn
http://www.dtcms.com/a/386474.html

相关文章:

  • Vtaskdelay任务阻塞深入了解
  • 智慧城市与“一网统管”:重塑未来城市治理新范式
  • 消息队列kafka的事务特性
  • Python 抓包教程 Python 抓包工具推荐、HTTPS 抓包方法与 iOS 抓包实践全攻略
  • SVN 安装及常用命令
  • 服务器硬盘管理与 RAID 维护完全指南
  • 【Java后端】Spring 如何解决循环依赖:原理 + 源码解读
  • 进程之间的通信(共享内存 + 其他IPC原理)
  • AI 提示词学习笔记
  • PHP通过命令行调用Ghostscript把pdf转换成图片集
  • AWS 弹性伸缩(Auto Scaling)详解:服务器如何自动顶住流量洪峰?
  • 企业级AI应用落地实战(一):落地历程分享
  • 主数据管理:标准化缺失的潜在三大风险
  • LLC--开关损耗及软开关
  • 计算机视觉 - 对比学习(下)不用负样本 BYOL + SimSiam 融合Transformer MoCo-v3 + DINO
  • 内存与网络的字节序:大端 vs 小端
  • Linux网络:网络基础
  • [视图功能3] 排序与分组在业务数据分析中的应用
  • 架构师成长之路-集群
  • 《WINDOWS 环境下32位汇编语言程序设计》学习17章 PE文件(1)
  • cursor中配置qwen3-coder模型使用
  • 智慧健康驿站:AI与IoT赋能下的健康社区建设新引擎
  • 贪心算法应用:MEC任务卸载问题详解
  • Linux基础知识-安装jdk8与jmeter
  • 基于Django+Vue的新闻文本分类系统(协同过滤推荐算法)
  • 机器人控制器开发(通讯——建图和导航模式切换)
  • 容器化部署项目05
  • AI如何深度驱动数据资产入表业务开展-一线经验
  • Chromium 138 编译指南 macOS 篇:Xcode 与开发工具安装配置(二)
  • 网络.1 UDP