最近在做服务器迁移,文件好几个T。。。。只能单向访问,服务器。怎么办!!!

之前一直是使用rsync 服务器和服务器之间的双向同步、备份(这是的)。现在服务器要迁移,只能单向访问,突然发现rsyns也可以实现文件取。

rsync [选项] 远程用户@远程主机:远程文件路径 本地目标路径

示例:

1. 从远程服务器拉取单个文件

rsync -avz --exclude='*.tmp' user@remote_host:/remote/path /local/path

rsync -avz root@remote_host:/path/to/remote/file.txt /local/destination/

  • -a:归档模式(保留权限、时间戳等)
  • -v:显示详细过程
  • -z:压缩传输
  • remote_host(可以在/etc/hosts 下配置,这样就不用输ip了)

2. 拉取整个目录

rsync -avz user@remote_host:/data/img/ /local/destination/

3. 拉取时排除某些文件

rsync -avz --exclude='*.tmp' user@remote_host:/remote/path /local/path

4.限速传输(避免占用带宽)

rsync -avz --bwlimit=1000 user@remote_host:/remote/path /local/path
  • --bwlimit=1000:限速 1000 KB/s

建议先通过 --dry-run 选项测试命令:

rsync -avzn user@remote_host:/remote/path /local/path
  • -n:模拟运行,不实际传输文件

注意事项:

  1. ​权限问题​​:确保本地目标路径有写入权限。
  2. ​首次连接​​:如果是 SSH 方式,首次连接需验证远程主机指纹。
  3. ​路径格式​​:Windows 本地路径使用 C:/path 或 /cygdrive/c/path(Cygwin环境)。
  4. ​密码输入​​:如果未配置 SSH 免密登录,执行命令后会提示输入密码。

5.高级用法:

5.1 断点续传​partial

  • rsync -avz --partial --progress user@remote_host:/path/to/large_file /local/destination/
    
  • avz:归档模式 + 压缩传输 + 显示详细信息
  • --progress:显示传输进度(可选)
  • 如果传输中断,--partial 会保留已传输的部分文件(默认保存在目标目录,文件名后加 .partial)。
  • 重新运行相同命令时,rsync 会检查 .partial 文件并继续传输剩余部分。
  • 传输完成后,.partial 后缀会自动移除。

5.2 append 选项​

作用​​:在已存在的文件末尾追加数据(适用于​​已传输部分未被修改​​的情况)。
​适用场景​​:日志文件等​​只增不改​​的文件。不适用于二进制文件(如压缩包、镜像),因为追加操作会破坏文件结构。

rsync -avz --append --progress user@remote_host:/path/to/logfile.log /local/destination/
注意:当源文件​​自上次中断后未发生更改​​时才有效(否则可能导致数据不一致)。

 

rsync -avz --partial --timeout=30 --retries=3 --progress user@remote_host:/remote/path /local/

5.3.使用 & 让 rsync 在后台运行​ 

直接在命令末尾加上 &,让 rsync 在后台执行

rsync -avz --progress user@remote_host:/remote/path /local/path/ &

      优点​​:简单快捷。

  • ​缺点​​:如果终端关闭,任务可能会被终止(取决于 shell 配置)。

​​查看后台任务​​ jobs -l  # 查看当前会话的后台任务

 5.4使用 nohup 防止任务被终止​ 

nohup 可以让任务在终端关闭后继续运行:

nohup rsync -avz --progress user@remote_host:/remote/path /local/path/ > rsync.log 2>&1 &

  • > rsync.log:将标准输出重定向到 rsync.log
  • 2>&1:将错误输出也重定向到同一文件。
  • &:让任务在后台运行。

​查看运行状态​

tail -f rsync.log  # 实时查看日志
ps aux | grep rsync  # 检查进程是否在运行

​终止任务​

pkill -f "rsync -avz" # 按命令终止
kill [PID] # 按进程 ID 终止

 

 

6.最佳实践​

  • ​大文件传输​​:优先用 --partial
  • ​日志类文件​​:用 --append
  • ​网络不稳定环境​​:结合 --timeout=30(超时设置)和 --retries=3(重试次数):
  • nohup 后台传输
nohup  rsync -avz --partial --progress user@remote_host:/path/to/large_file /local/destination/  > rsync.log 2>&1 &

ok

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/84184.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/84184.shtml
英文地址,请注明出处:http://en.pswp.cn/web/84184.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 并发编程:从线程池到单例模式的深度实践

文章目录 一、普通线程池:高效线程管理的核心方案1. 线程池概念:为什么需要 "线程工厂"?2. 线程池的实现:从 0 到 1 构建基础框架 二、模式封装:跨语言线程库实现1. C 模板化实现:类型安全的泛型…

2013年SEVC SCI2区,自适应变领域搜索算法Adaptive VNS+多目标设施布局,深度解析+性能实测

目录 1.摘要2.自适应局部搜索原理3.自适应变领域搜索算法Adaptive VNS4.结果展示5.参考文献6.代码获取7.算法辅导应用定制读者交流 1.摘要 VNS是一种探索性的局部搜索方法,其基本思想是在局部搜索过程中系统性地更换邻域。传统局部搜索应用于进化算法每一代的解上&…

详细介绍医学影像显示中窗位和窗宽

在医学影像(如DICOM格式的CT图像)中,**窗宽(Window Width, WW)和窗位(Window Level, WL)**是两个核心参数,用于调整图像的显示对比度和亮度,从而优化不同组织的可视化效果…

Unity_VR_如何用键鼠模拟VR输入

文章目录 [TOC] 一、创建项目1.直接创建VR核心模板(简单)2.创建3D核心模板导入XR包 二、添加XR设备模拟器1.打开包管理器2.添加XR设备模拟器3.将XR设备模拟器拖到场景中4.运行即可用键盘模拟VR输入 一、创建项目 1.直接创建VR核心模板(简单&…

SpringBoot定时监控数据库状态

1.application.properties配置文件 # config for mysql spring.datasource.url jdbc\:mysql\://127.0.0.1\:3306/数据库名?characterEncoding\utf8&useSSL\false spring.datasource.username 账号 spring.datasource.password 密码 spring.datasource.validation-quer…

Qt联合Halcon开发一:Qt配置Halcon环境【详细图解流程】

在Qt中使用Halcon库进行图像处理开发,可以有效地结合Qt的图形界面和Halcon强大的计算机视觉功能。下面是详细的配置过程,帮助你在Qt项目中成功集成Halcon库。 步骤 1: 安装Halcon软件并授权 首先,确保你已经在电脑上安装了Halcon软件&#x…

一体化(HIS系统)医院信息系统,让医疗数据互联互通

在医疗信息化浪潮下,HIS系统、LIS系统、PACS系统、电子病历系统等信息系统成为医疗机构必不可少的一部分,从患者挂号到看诊,从各种检查到用药,从院内治疗到院外管理……医疗机构不同部门、不同科室的各类医疗、管理业务几乎都初步…

Spring Boot 的 3 种二级缓存落地方式

在高并发系统设计中,缓存是提升性能的关键策略之一。随着业务的发展,单一的缓存方案往往无法同时兼顾性能、可靠性和一致性等多方面需求。 此时,二级缓存架构应运而生,本文将介绍在Spring Boot中实现二级缓存的三种方案。 一、二…

Android Studio Profiler使用

一:memory 参考文献: AndroidStudio之内层泄漏工具Profiler使用指南_android studio profiler-CSDN博客

Zephyr boot

<!DOCTYPE html> <html lang"zh-CN"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <title>Zephyr设备初始化机制交互式解析…

腾讯地图Web版解决热力图被轮廓覆盖的问题

前言 你好&#xff0c;我是喵喵侠。 还记得那天傍晚&#xff0c;我正对着电脑调试一个腾讯地图的热力图页面。项目是一个区域人流密度可视化模块&#xff0c;我加了一个淡蓝色的轮廓图层用于表示区域范围&#xff0c;热力图放在下面用于展示人流热度。效果一预览&#xff0c;…

【JVMGC垃圾回收场景总结】

文章目录 CMS在并发标记阶段&#xff0c;已经被标记的对象&#xff0c;又被新生代跨带引用&#xff0c;这时JVM会怎么处理?为什么 Minor GC 会发生 STW&#xff1f;有哪些对象是在栈上分配的&#xff1f;对象在 JVM 中的内存结构为什么需要对齐填充&#xff1f;JVM 对象分配空…

3_STM32开发板使用(STM32F103ZET6)

STM32开发板使用(STM32F103ZET6) 一、概述 当前所用开发板为正点原子精英板,MCU: STM32F103ZET6。一般而言,拿到板子之后先要对板子有基础的认识,包括对开发板上电开机、固件下载、调试方法这三个部分有基本的掌握。 二、系统开机 2.1 硬件连接 直接接电源线或Type-c线…

crackme012

crackme012 名称值软件名称attackiko.exe加壳方式无保护方式serial编译语言Delphi v1.0调试环境win10 64位使用工具x32dbg,PEid破解日期2025-06-18 -发现是 16位windows 程序环境还没搭好先留坑

CppCon 2016 学习:I Just Wanted a Random Integer

你想要一个随机整数&#xff0c;用于模拟随机大小的DNA读取片段&#xff08;reads&#xff09;&#xff0c;希望覆盖不同长度范围&#xff0c;也能测试边界情况。 代码部分是&#xff1a; #include <cstdlib> auto r std::rand() % 100;它生成一个0到99之间的随机整数&…

MySQL层级查询实战:无函数实现部门父路径

本次需要击毙的MySQL函数 函数主要用于获取部门的完整层级路径&#xff0c;方便在应用程序或SQL查询中直接调用&#xff0c;快速获得部门的上下级关系信息。执行该函数之后简单使用SQL可以实现数据库中部门名称查询。例如下面sql select name,GetDepartmentParentNames(du.de…

Python初学者教程:如何从文本中提取IP地址

Python初学者教程:如何从文本中提取IP地址 在网络安全和数据分析领域,经常需要从文本文件中提取IP地址。本文将引导您使用Python创建一个简单但实用的工具,用于从文本文件提取所有IP地址并将其保存到新文件中。即使您是编程新手,也可以跟随本教程学习Python的基础知识! …

【Redis】Redis核心探秘:数据类型的编码实现与高速访问之道

&#x1f4da;️前言 &#x1f31f;&#x1f31f;&#x1f31f;精彩导读 本次我们将全面剖析Redis的核心技术要点&#xff0c;包括其丰富的数据类型体系、高效的编码方式以及秒级响应的性能奥秘。对于渴望深入理解Redis底层机制的技术爱好者&#xff0c;这是一次难得的学习机会…

Halcon —— 多种二维码检测

工业视觉实战&#xff1a;Halcon多类型二维码识别技术详解 在工业自动化场景中&#xff0c;兼容多种二维码类型是提高生产线灵活性的关键。本文将深入解析Halcon实现Data Matrix、QR Code和PDF417三种主流二维码的兼容识别方案&#xff0c;并重点解释核心算子参数。 一、多类型…

安卓vscodeAI开发实例

前言 前些天发现了一个巨牛的人工智能免费学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站 目录 一、安卓开发基础与工具链革新 1.1 Android Studio的局限性分析 1.2 VSCode在移动开发中的崛起 1.3 跨平台开发工具链对比…