CN109062516A - 一种windows虚拟机备份过程中无效数据排除方法 - Google Patents

一种windows虚拟机备份过程中无效数据排除方法 Download PDF

Info

Publication number
CN109062516A
CN109062516A CN201811074533.9A CN201811074533A CN109062516A CN 109062516 A CN109062516 A CN 109062516A CN 201811074533 A CN201811074533 A CN 201811074533A CN 109062516 A CN109062516 A CN 109062516A
Authority
CN
China
Prior art keywords
file
data
record
backup
setting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811074533.9A
Other languages
English (en)
Other versions
CN109062516B (zh
Inventor
谢俊峰
彭超
黄传波
涂磊
谢卓伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Yun Qi Science And Technology Ltd
Original Assignee
Chengdu Yun Qi Science And Technology Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chengdu Yun Qi Science And Technology Ltd filed Critical Chengdu Yun Qi Science And Technology Ltd
Priority to CN201811074533.9A priority Critical patent/CN109062516B/zh
Publication of CN109062516A publication Critical patent/CN109062516A/zh
Application granted granted Critical
Publication of CN109062516B publication Critical patent/CN109062516B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种windows虚拟机备份过程中无效数据排除方法。包括备份初始化步骤,扫描分区间隙步骤,按分区扫描有效数据步骤,备份数据记录生成与传输步骤,排除数据记录生成与传输步骤,备份数据恢复步骤,冲突处理步骤;本发明提供的技术方案达到了降低备份数据量的目的,同时缩短了处理时间,减轻了数据传输负荷并减少了备份存储介质的空间占用。

Description

一种windows虚拟机备份过程中无效数据排除方法
技术领域
本发明涉及计算机数据备份技术领域,具体涉及一种windows虚拟机备份过程中无效数据排除方法。
背景技术
在虚拟化备份的早期,备份应用通过安装备份代理到虚拟机的方式,将虚拟机和物理机等同对待,实现从操作系统、文件系统或应用程序中的数据搜集。这样的方式存在系统资源占用多、代理管理开销大、软件兼容问题多等缺点。
相比之下,无代理的备份方式可以节省代理管理的开销,还可以减少对系统资源的占用。现有备份应用实现无代理备份的方式大都基于虚拟化平台提供的备份接口,如:VADP、VSS或Xen API等。这类备份接口可以返回虚拟机磁盘从头到尾所有扇区的数据,却不会对磁盘上数据进行有效性解析,导致备份数据中夹杂大量无效数据,具体包括:
1.分区间隙;
2.分区内未使用的空间,包括用户已删除但未彻底删除的数据;
3.还原后已经不具时效性的文件,如操作系统交换文件和分页文件;
4.用户指定排除的文件。
如果在备份过程中解析并排除这些无效数据,有助于降低备份数据量,缩短处理时间,减轻数据传输负荷并减少备份存储介质的空间占用。
发明内容
本发明所要解决的技术问题是在无代理环境下,提供一种windows虚拟机备份过程中无效数据排除方法,解决备份数据中夹杂大量无效数据的问题,进而降低备份数据量,缩短处理时间,减轻数据传输负荷并减少备份存储介质的空间占用。
本发明解决其技术问题所采用的技术方案是:
一种windows虚拟机备份过程中无效数据排除方法,包括:
定义备份配置文件F数据结构,至少包括最大数据长度Fl、启用冲突处理标记Fc、排除交换文件标记Fp、排除休眠文件标记Fh、排除回收站文件标记Fd、用户自定义排除目录Fu;定义备份数据记录D数据结构,至少包括虚拟机名Dv、磁盘名Dd、时间戳Dt,偏移量Ds、长度Dl、数据内容Dc;定义排除数据记录E数据结构,至少包括虚拟机名Ev、磁盘名Ed、分区名Ep、时间戳Et,文件记录号Ei,数据特征值Ev。
步骤1,备份初始化步骤,包括创建和读取备份配置文件F,读取系统时间t,通过虚拟化平台对虚拟机打快照,读取虚拟机的母盘并解析磁盘分区表,生成全盘位图文件Bd并置所有数据块的状态为已分配。
步骤2,扫描分区间隙步骤,包括根据磁盘分区表,将全盘位图文件Bd中对应分区间隙数据块的状态修改为未分配。
步骤3,按分区扫描有效数据步骤,包括定位分区起始位置Ab,复制分区内位图文件得到Bm,根据备份配置文件F对排除数据进行扫描,修改位图文件Bm,修改全盘位图文件Bd。
步骤4,备份数据记录生成与传输步骤,包括初始化备份数据记录D,根据全盘位图文件Bd填充备份数据记录D,发送备份数据记录D,发送全盘位图文件Bd。
步骤5,排除数据记录生成与传输步骤,包括判断是否存在用户自定义排除目录,初始化排除数据记录E,获取文件记录号Ei,获取数据特征值Ev,发送排除数据记录E到存储管理模块。
步骤6,备份数据恢复步骤,包括选择待恢复的虚拟机名、磁盘名,获取全盘位图文件Bd和备份数据记录D,解析每一条备份数据记录D并将数据写入待恢复分区。
步骤7,冲突处理步骤,包括判断冲突解决启用标记Fc是否有效,获取对应的排除数据记录E,比较文件的特征值是否变化,并将发生变化的文件标记为已删除。
所述步骤1中创建和读取备份配置文件F进一步为:
步骤101,判断是否存在备份配置文件F;如果是,转步骤103,如果否,转步骤102;
步骤102,创建备份配置文件F,设置最大数据长度Fl为1024,设置启用冲突处理标记Fc为有效,设置排除交换文件标记Fp为有效,设置排除休眠文件标记Fh为有效,设置排除回收站文件标记Fd为有效,设置用户自定义排除目录Fu为空;
步骤103,读取备份配置文件F。
所述步骤3中按分区扫描有效数据进一步为:
步骤301,根据磁盘分区表,定位当前分区起始位置Ab;
步骤302,复制所述分区的位图文件,得到新的位图文件Bm;
步骤303,判断排除交换文件标记Fs是否有效,如果是,转步骤304,如果否,转步骤305;
步骤304,遍历所述分区的索引项,查找是否存在文件名为“pagefile.sys”的索引项,如果存在,则在文件记录中解析该文件的数据块分布,并在位图文件Bm中将对应数据块的状态标记为未分配;
步骤305,判断排除休眠文件标记Fh是否有效,如果是,转步骤306,如果否,转步骤307;
步骤306,遍历所述分区的索引项,查找是否存在文件名为“hiberfil.sys”的索引项,如果存在,则解析文件记录,得到该文件的数据块分布,并在位图文件Bm中将对应数据块的状态标记为未分配;
步骤307,判断排除回收站文件标记Fd是否有效,如果是,转步骤308,如果否,转步骤309;
步骤308,解析“recycle.bin”目录下所有文件的文件记录,得到各个文件的数据块分布,并在位图文件Bm中将对应数据块的状态标记为未分配;
步骤309,判断是否存在用户自定义排除目录,如果是,转步骤310,如果否,则结束;
步骤310,解析用户自定义排除目录下所有文件的文件记录,得到各个文件的数据块分布,并在位图文件Bm中将对应数据块的状态标记为未分配;
步骤311,从全盘位图文件Bd第Ab位开始,与位图文件Bm进行按位与运算,并将结果写回全盘位图文件Bd。
所述步骤4中备份数据记录生成与传输进一步为:
步骤401,设置临时变量I为1;
步骤402,初始化备份数据记录D,设置Dv为当前虚拟机名,设置Dd为当前磁盘名、设置时间戳Dt=t,设置偏移量Ds=I,设置长度Dl=0;设置数据内容Dc为空;
步骤403,根据全盘位图文件Bd判断第I个数据块的状态是否为已分配;如果是,转步骤404,如果否,转步骤405;
步骤404,将第I个数据块复制到数据内容Dc中,令Dl=Dl+1;
步骤405,令I=I+1;
步骤406,判断Dl是否等于Bl或者I大于全盘位图文件Bd中数据块数量,如果是,转步骤407,如果否,转步骤403;
步骤407,发送当前备份数据记录D到存储管理模块;
步骤408,判断是否处理完所有数据块,如果是,转步骤409,如果否,转步骤402;
步骤409,发送位图文件Bd到存储管理模块。
所述步骤5中排除数据记录生成与传输进一步为:
步骤501,判断是否存在用户自定义排除目录,如果是,转步骤502,如果否,则结束;
步骤502,解析用户自定义排除目录下所有文件的文件记录,为每个文件生成排除数据记录E,设置Ev为当前虚拟机名、设置Ed为当前磁盘名、设置Ep为当前分区名、设置时间戳Et=t,设置Ei为当前文件的文件记录号,设置Ev为当前文件所有数据块按字节生成的异或和,发送排除数据记录E到存储管理模块。
所述步骤6中解析每一条备份数据记录D并将数据写入待恢复分区进一步为:
对每一条备份数据记录D,根据全盘位图文件Bd,从第Ds个数据块开始,定位Dl个状态为已分配的数据块,将数据内容Dc中Dl个数据块依次存放到所定位到的数据块。
所述步骤7中冲突处理进一步为:
步骤701,判断冲突解决启用标记Fc是否有效;如果是,转步骤702,如果否,则结束;
步骤702,获取对应的排除数据记录E;
步骤703,解析每一条排除数据记录E,根据文件记录号,定位文件的数据块分布,按字节计算所有数据块的异或和v,比较是否与Ev相同,若不同,则在文件记录中将该文件标记为已删除。
从以上技术方案可以看出,通过虚拟化平台提供的接口获取和解析磁盘数据,避免了安装代理的过程;通过定位各个分区的起止位置,标记并排除了分区间隙中存在的无效数据;通过解析分区内的位图文件,获取实际数据分布,排除了分区内空闲空间存在的无效数据;通过解析回收站文件,排除了已经删除但未彻底删除的文件;通过定位交换文件和休眠文件数据块,排除了不具时效性的数据;通过定位用户指定目录下文件的数据块,排除了用户指定的数据;通过冲突处理步骤,解决了未备份数据一致性的问题。另外,本技术方案在备份阶段采用只排除文件数据块而保留文件其余属性的方式,在还原到原有磁盘且用户数据未发生变化的情况下,还可以保留这部分文件,有利于在降低备份数据量的同时尽可能保留用户数据。总的来说,通过本技术方案达到了降低备份数据量的目的,同时缩短了处理时间,减轻了数据传输负荷并减少了备份存储介质的空间占用。
附图说明
图1为备份配置文件、备份数据记录和排除数据记录结构图。
图2为系统结构图。
图3为备份初始化流程图。
图4为扫描各个分区的有效数据流程图。
图5为备份数据记录生成与传输流程图。
图6为排除数据记录生成与传输流程图。
图7为冲突处理流程图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
本发明备份配置文件、备份数据记录和排除数据记录结构如图1。
备份配置文件F,用于记录备份恢复的配置项,保存在备份服务器上,包括最大数据长度Fl、冲突解决启用标记Fc、排除交换文件标记Fp、排除休眠文件标记Fh、排除回收站文件标记Fd、用户自定义排除目录Fu。
备份数据记录D,用于描述有效的备份数据,包括虚拟机名Dv、磁盘名Dd、时间戳Dt,偏移量Ds、长度Dl、数据内容Dc;
排除数据记录E,用于记录被排除数据的特征值,在冲突处理步骤中辨别未备份的数据是否发生过变化,包括虚拟机名Ev、磁盘名Ed、分区名Ep、时间戳Et,文件记录号Ei,数据特征值Ev。
本发明系统结构如图2所示。
系统结构分为两部分,分别为客户端部分和备份服务器两部分。客户端部分包括虚拟化平台和若干虚拟机。备份服务器部分包括备份恢复模块、存储管理模块和存储介质,备份恢复模块直接与虚拟化平台交互,能够创建和读取备份配置文件F,能够生成和发送备份数据到存储管理模块,也能够接受和解析从存储管理模块发送来的恢复数据,存储管理模块接收从备份恢复模块发送来的备份数据并将其保存到存储介质,在数据恢复阶段,负责读取相应数据并发送到备份恢复模块。存储介质为具有存储资源的装置,能够提供文件访问,存储介质上的数据包括备份数据记录D、全盘位图文件Bd和排除数据记录E。
步骤1,备份初始化步骤,包括创建和读取备份配置文件F,读取系统时间t,通过虚拟化平台对虚拟机打快照,读取虚拟机的母盘并解析磁盘分区表,生成全盘位图文件Bd并置所有数据块的状态为已分配。具体流程如图3所示,包括:
步骤T101,判断是否存在备份配置文件F;如果是,转步骤T103,如果否,转步骤T102;
步骤T102,创建备份配置文件F,设置最大数据长度Fl为1024,设置冲突解决启用标记Fc为有效,设置排除交换文件标记Fp为有效,设置排除休眠文件标记Fh为有效,设置排除回收站文件标记Fd为有效,设置用户自定义排除目录Fu为空;
步骤T103,读取备份配置文件F;
步骤T104,读取系统时间t;
步骤T105,通过虚拟化平台对虚拟机打快照;
步骤T106,读取虚拟机的母盘并解析磁盘分区表,得到分区数以及各个分区的文件系统类型、起始扇区号和总扇区数;
步骤T107,生成全盘位图文件Bd并置所有数据块的状态为已分配。
分区表可以为磁盘的主引导记录(Master Boot Record,MBR)分区表,也可以为GPT(GUID Partion Table)分区表,以MBR分区表为例, MBR分区表位于物理磁盘的0号磁柱、0号磁头、1号扇区,也称为主引导扇区,它由三个部分组成:主引导程序、硬盘分区表和分区有效标志,其中,硬盘分区表中记录了磁盘分区的总扇区数、起始扇区号和文件系统(FAT32、NTFS、EXT3等)。
生成的全盘位图文件Bd格式与文件系统内的位图文件相同,位图文件中每一个bit(位)对应分区中的一个数据块,并说明该数据块是否已被分配(0表示未分配,1表示已分配)。位图以字节为单位,每个字节的最低位对应的簇跟在前一个字节的最高位所对应的簇之后。
步骤2,扫描分区间隙步骤,包括根据磁盘分区表,将全盘位图文件Bd中对应分区间隙数据块的状态修改为未分配。
通过该步骤保留了磁盘分区表的数据和各分区内的数据,排除了分区之间的无效数据。
步骤3,按分区扫描有效数据步骤,包括定位分区起始位置Ab,复制分区内位图文件得到Bm,根据备份配置文件F对排除数据进行扫描,修改位图文件Bm,修改全盘位图文件Bd。具体流程如图4所示。包括:
步骤T301,根据磁盘分区表,定位当前分区起始位置Ab;
步骤T302,复制所述分区的位图文件,得到新的位图文件Bm;
步骤T303,判断排除交换文件标记Fs是否有效,如果是,转步骤T304,如果否,转步骤T305;
步骤T304,遍历所述分区的索引项,查找是否存在文件名为“pagefile.sys”的索引项,如果存在,则在文件记录中解析该文件的数据块分布,并在位图文件Bm中将对应数据块的状态标记为未分配;
步骤T305,判断排除休眠文件标记Fh是否有效,如果是,转步骤T306,如果否,转步骤T307;
步骤T306,遍历所述分区的索引项,查找是否存在文件名为“hiberfil.sys”的索引项,如果存在,则解析文件记录,得到该文件的数据块分布,并在位图文件Bm中将对应数据块的状态标记为未分配;
步骤T307,判断排除回收站文件标记Fd是否有效,如果是,转步骤T308,如果否,转步骤T309;
步骤T308,解析“recycle.bin”目录下所有文件的文件记录,得到各个文件的数据块分布,并在位图文件Bm中将对应数据块的状态标记为未分配;
步骤T309,判断是否存在用户自定义排除目录,如果是,转步骤T310,如果否,则结束;
步骤T310,解析用户自定义排除目录下所有文件的文件记录,得到各个文件的数据块分布,并在位图文件Bm中将对应数据块的状态标记为未分配;
步骤T311,从全盘位图文件Bd第Ab位开始,与位图文件Bm进行按位与运算,并将结果写回全盘位图文件Bd;
以当前分区属于NTFS文件系统为例,分区上所有的数据都是以文件的形式存储,包括元文件。每个文件都有一个或多个文件记录,每个文件记录占用两个扇区。$MFT元文件是主文件表,用来存储文件记录的。即:NTFS文件系统是通过$MFT来确定文件在磁盘上的位置和文件的属性。$MFT的文件记录在物理上是连续的,从0开始编号。每个分区都有一个$Bitmap元文件,即位图文件,用来描述当前整个分区的数据块的分配情况。
步骤4,备份数据记录生成与传输步骤,包括初始化备份数据记录D,根据全盘位图文件Bd填充备份数据记录D,发送备份数据记录D,发送全盘位图文件Bd;具体流程图如图5所示,包括:
步骤T401,设置临时变量I为1;
步骤T402,初始化备份数据记录D,设置Dv为当前虚拟机名,设置Dd为当前磁盘名、设置Dp为当前分区名、设置时间戳Dt=t,设置偏移量Ds=I,设置长度Dl=0;设置数据内容Dc为空;
步骤T403,根据位图文件Bm判断第I个数据块的状态是否为已分配;如果是,转步骤T304,如果否,转步骤T405;
步骤T404,将第I个数据块复制到数据内容Dc中,令Dl=Dl+1;
步骤T405,令I=I+1;
步骤T406,判断是否Dl等于Bl或者I大于位图文件中数据块数量,如果是,转步骤T407,如果否,转步骤T403;
步骤T407,发送当前备份数据记录D到备份服务器;
步骤T408,判断是否处理完所有数据块,如果是,转步骤T409,如果否,转步骤T402;
步骤T409,发送位图文件Bm到备份服务器。
步骤5,排除数据记录生成与传输步骤,包括判断是否存在用户自定义排除目录,初始化排除数据记录E,获取文件记录号Ei,获取数据特征值Ev,发送排除数据记录E到存储管理模块。具体流程如图6,包括:
步骤T501,判断是否存在用户自定义排除目录,如果是,转步骤T502,如果否,则结束;
步骤T502,解析用户自定义排除目录下所有文件的文件记录,为每个文件生成排除数据记录E,设置Ev为当前虚拟机名、设置Ed为当前磁盘名、设置Ep为当前分区名、设置时间戳Et=t,设置Ei为当前文件的文件记录号,设置Ev为当前文件所有数据块按字节生成的异或和,发送排除数据记录E到备份服务器。
步骤6,备份数据恢复步骤,包括选择待恢复的虚拟机名、磁盘名、获取全盘位图文件Bd和备份数据记录D,解析每一条备份数据记录D并将数据写入待恢复分区。
对每一条备份数据记录D,根据全盘位图文件Bd,从第Ds个数据块开始,定位Dl个状态为已分配的数据块,将数据内容Dc中Dl个数据块依次存放到所定位到的数据块。
步骤7,冲突处理步骤,包括判断冲突解决启用标记Fc是否有效,获取对应的排除数据记录E,比较文件的特征值是否变化,并将发生变换的文件标记为已删除;具体流程图如图7,包括:
步骤T701,判断冲突解决启用标记Fc是否有效;如果是,转步骤T702,如果否,则结束;
步骤T702,获取对应的排除数据记录E;
步骤T703,解析每一条排除数据记录E,根据文件记录号,定位文件的数据块分布,按字节计算所有数据块的异或和v,比较是否与Ev相同,若不同,则在文件记录中将该文件标记为已删除。

Claims (7)

1.一种windows虚拟机备份过程中无效数据排除方法,通过定义数据结构:定义备份配置文件F数据结构,至少包括最大数据长度Fl、启用冲突处理标记Fc、排除交换文件标记Fp、排除休眠文件标记Fh、排除回收站文件标记Fd、用户自定义排除目录Fu;定义备份数据记录D数据结构,至少包括虚拟机名Dv、磁盘名Dd、时间戳Dt,偏移量Ds、长度Dl、数据内容Dc;定义排除数据记录E数据结构,至少包括虚拟机名Ev、磁盘名Ed、分区名Ep、时间戳Et,文件记录号Ei,数据特征值Ev;其特征在于,包括以下步骤:
步骤1,备份初始化步骤,包括创建和读取备份配置文件F,读取系统时间t,通过虚拟化平台对虚拟机打快照,读取虚拟机的母盘并解析磁盘分区表,生成全盘位图文件Bd并置所有数据块的状态为已分配;
步骤2,扫描分区间隙步骤,包括根据磁盘分区表,将全盘位图文件Bd中对应分区间隙数据块的状态修改为未分配;
步骤3,按分区扫描有效数据步骤,包括定位分区起始位置Ab,复制分区内位图文件得到Bm,根据备份配置文件F对排除数据进行扫描,修改位图文件Bm,修改全盘位图文件Bd;
步骤4,备份数据记录生成与传输步骤,包括初始化备份数据记录D,根据全盘位图文件Bd填充备份数据记录D,发送备份数据记录D,发送全盘位图文件Bd;
步骤5,排除数据记录生成与传输步骤,包括判断是否存在用户自定义排除目录,初始化排除数据记录E,获取文件记录号Ei,获取数据特征值Ev,发送排除数据记录E到存储管理模块;
步骤6,备份数据恢复步骤,包括选择待恢复的虚拟机名、磁盘名,获取全盘位图文件Bd和备份数据记录D,解析每一条备份数据记录D并将数据写入待恢复分区;
步骤7,冲突处理步骤,包括判断冲突解决启用标记Fc是否有效,获取对应的排除数据记录E,比较文件的特征值是否变化,并将发生变换的文件标记为已删除。
2.根据权利要求1所述的方法,其特征在于,所述步骤1中创建和读取备份配置文件F进一步为:
步骤101,判断是否存在备份配置文件F;如果是,转步骤103,如果否,转步骤102;
步骤102,创建备份配置文件F,设置最大数据长度Fl为1024,设置启用冲突处理标记Fc为有效,设置排除交换文件标记Fp为有效,设置排除休眠文件标记Fh为有效,设置排除回收站文件标记Fd为有效,设置用户自定义排除目录Fu为空;
步骤103,读取备份配置文件F。
3.根据权利要求1所述的方法,其特征在于,所述步骤3中按分区扫描有效数据进一步为:
步骤301,根据磁盘分区表,定位当前分区起始位置Ab;
步骤302,复制所述分区的位图文件,得到新的位图文件Bm;
步骤303,判断排除交换文件标记Fs是否有效,如果是,转步骤304,如果否,转步骤305;
步骤304,遍历所述分区的索引项,查找是否存在文件名为“pagefile.sys”的索引项,如果存在,则在文件记录中解析该文件的数据块分布,并在位图文件Bm中将对应数据块的状态标记为未分配;
步骤305,判断排除休眠文件标记Fh是否有效,如果是,转步骤306,如果否,转步骤307;
步骤306,遍历所述分区的索引项,查找是否存在文件名为“hiberfil.sys”的索引项,如果存在,则解析文件记录,得到该文件的数据块分布,并在位图文件Bm中将对应数据块的状态标记为未分配;
步骤307,判断排除回收站文件标记Fd是否有效,如果是,转步骤308,如果否,转步骤309;
步骤308,解析“recycle.bin”目录下所有文件的文件记录,得到各个文件的数据块分布,并在位图文件Bm中将对应数据块的状态标记为未分配;
步骤309,判断是否存在用户自定义排除目录,如果是,转步骤310,如果否,则结束;
步骤310,解析用户自定义排除目录下所有文件的文件记录,得到各个文件的数据块分布,并在位图文件Bm中将对应数据块的状态标记为未分配;
步骤311,从全盘位图文件Bd第Ab位开始,与位图文件Bm进行按位与运算,并将结果写回全盘位图文件Bd。
4.根据权利要求1所述的方法,其特征在于,所述步骤4中备份数据记录生成与传输进一步为:
步骤401,设置临时变量I为1;
步骤402,初始化备份数据记录D,设置Dv为当前虚拟机名,设置Dd为当前磁盘名、设置时间戳Dt=t,设置偏移量Ds=I,设置长度Dl=0;设置数据内容Dc为空;
步骤403,根据全盘位图文件Bd判断第I个数据块的状态是否为已分配;如果是,转步骤404,如果否,转步骤405;
步骤404,将第I个数据块复制到数据内容Dc中,令Dl=Dl+1;
步骤405,令I=I+1;
步骤406,判断Dl是否等于Bl或者I大于全盘位图文件Bd中数据块数量,如果是,转步骤407,如果否,转步骤403;
步骤407,发送当前备份数据记录D到存储管理模块;
步骤408,判断是否处理完所有数据块,如果是,转步骤409,如果否,转步骤402;
步骤409,发送位图文件Bd到存储管理模块。
5.根据权利要求1所述的方法,其特征在于,所述步骤5中排除数据记录生成与传输进一步为:
步骤501,判断是否存在用户自定义排除目录,如果是,转步骤502,如果否,则结束;
步骤502,解析用户自定义排除目录下所有文件的文件记录,为每个文件生成排除数据记录E,设置Ev为当前虚拟机名、设置Ed为当前磁盘名、设置Ep为当前分区名、设置时间戳Et=t,设置Ei为当前文件的文件记录号,设置Ev为当前文件所有数据块按字节生成的异或和,发送排除数据记录E到存储管理模块。
6.根据权利要求1所述的方法,其特征在于,所述步骤6中解析每一条备份数据记录D并将数据写入待恢复分区进一步为:
对每一条备份数据记录D,根据全盘位图文件Bd,从第Ds个数据块开始,定位Dl个状态为已分配的数据块,将数据内容Dc中Dl个数据块依次存放到所定位到的数据块。
7.根据权利要求1所述的方法,其特征在于,所述步骤7中冲突处理进一步为:
步骤701,判断冲突解决启用标记Fc是否有效;如果是,转步骤702,如果否,则结束;
步骤702,获取对应的排除数据记录E;
步骤703,解析每一条排除数据记录E,根据文件记录号,定位文件的数据块分布,按字节计算所有数据块的异或和v,比较是否与Ev相同,若不同,则在文件记录中将该文件标记为已删除。
CN201811074533.9A 2018-09-14 2018-09-14 一种windows虚拟机备份过程中无效数据排除方法 Active CN109062516B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811074533.9A CN109062516B (zh) 2018-09-14 2018-09-14 一种windows虚拟机备份过程中无效数据排除方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811074533.9A CN109062516B (zh) 2018-09-14 2018-09-14 一种windows虚拟机备份过程中无效数据排除方法

Publications (2)

Publication Number Publication Date
CN109062516A true CN109062516A (zh) 2018-12-21
CN109062516B CN109062516B (zh) 2020-08-25

Family

ID=64762562

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811074533.9A Active CN109062516B (zh) 2018-09-14 2018-09-14 一种windows虚拟机备份过程中无效数据排除方法

Country Status (1)

Country Link
CN (1) CN109062516B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110888847A (zh) * 2019-12-16 2020-03-17 新华三技术有限公司成都分公司 一种回收站系统及文件回收方法
CN112380071A (zh) * 2020-12-09 2021-02-19 成都傲梅科技有限公司 一种快速备份ntfs文件系统的方法
CN114385573A (zh) * 2022-03-23 2022-04-22 广东睿江云计算股份有限公司 Drbd块设备初始化方法、装置、计算机设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1870591A (zh) * 2006-02-28 2006-11-29 华为技术有限公司 一种高速下行包接入硬切换方法和系统
CN104506619A (zh) * 2014-12-22 2015-04-08 华为技术有限公司 一种数据备份、恢复方法及其装置、服务器
CN106484312A (zh) * 2015-09-01 2017-03-08 北京金山云网络技术有限公司 一种虚拟机磁盘数据迁移方法及装置
US20170109087A1 (en) * 2014-11-20 2017-04-20 Commvault Systems, Inc. Virtual machine change block tracking
CN106802840A (zh) * 2017-01-19 2017-06-06 郑州云海信息技术有限公司 一种虚拟机备份、恢复方法及装置
CN107544864A (zh) * 2016-06-24 2018-01-05 深圳市深信服电子科技有限公司 一种虚拟机数据拷贝方法及虚拟机数据拷贝系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1870591A (zh) * 2006-02-28 2006-11-29 华为技术有限公司 一种高速下行包接入硬切换方法和系统
US20170109087A1 (en) * 2014-11-20 2017-04-20 Commvault Systems, Inc. Virtual machine change block tracking
CN104506619A (zh) * 2014-12-22 2015-04-08 华为技术有限公司 一种数据备份、恢复方法及其装置、服务器
CN106484312A (zh) * 2015-09-01 2017-03-08 北京金山云网络技术有限公司 一种虚拟机磁盘数据迁移方法及装置
CN107544864A (zh) * 2016-06-24 2018-01-05 深圳市深信服电子科技有限公司 一种虚拟机数据拷贝方法及虚拟机数据拷贝系统
CN106802840A (zh) * 2017-01-19 2017-06-06 郑州云海信息技术有限公司 一种虚拟机备份、恢复方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110888847A (zh) * 2019-12-16 2020-03-17 新华三技术有限公司成都分公司 一种回收站系统及文件回收方法
CN110888847B (zh) * 2019-12-16 2023-04-21 新华三技术有限公司成都分公司 一种回收站系统及文件回收方法
CN112380071A (zh) * 2020-12-09 2021-02-19 成都傲梅科技有限公司 一种快速备份ntfs文件系统的方法
CN112380071B (zh) * 2020-12-09 2023-10-27 成都傲梅科技有限公司 一种快速备份ntfs文件系统的方法
CN114385573A (zh) * 2022-03-23 2022-04-22 广东睿江云计算股份有限公司 Drbd块设备初始化方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN109062516B (zh) 2020-08-25

Similar Documents

Publication Publication Date Title
US9703640B2 (en) Method and system of performing incremental SQL server database backups
US8250033B1 (en) Replication of a data set using differential snapshots
CN101216791B (zh) 基于指纹的文件备份方法
US7774565B2 (en) Methods and apparatus for point in time data access and recovery
EP2590078B1 (en) Shadow paging based log segment directory
Wu et al. Efficient initialization and crash recovery for log-based file systems over flash memory
CN103605588B (zh) 一种虚拟机磁盘备份方法
US7681001B2 (en) Storage system
US20120005163A1 (en) Block-based incremental backup
US11093387B1 (en) Garbage collection based on transmission object models
US20040250172A1 (en) Transaction-safe FAT file system improvements
CN101364166B (zh) 将2048字节页的Nand Flash模拟成硬盘的方法和装置
CN111078667B (zh) 一种数据迁移的方法以及相关装置
CN104516943A (zh) 数据库日志的存档管理
US11579986B2 (en) Data query method and apparatus
US10089320B2 (en) Method and apparatus for maintaining data consistency in an in-place-update file system with data deduplication
DE102010013263A1 (de) Techniken, um ein energieausfallsicheres Caching ohne atomare Metadaten durchzuführen
CN101567805A (zh) 并行文件系统发生故障后的恢复方法
CN103207883A (zh) 用于元数据持久存储的方法
CN109062516A (zh) 一种windows虚拟机备份过程中无效数据排除方法
CN108255638B (zh) 一种快照回滚方法及装置
CN101420459A (zh) 一种管理应用配置信息的方法、应用系统和存储设备
CN106104515A (zh) 利用非易失性存储器的文件系统设计和故障恢复方法
CN104461773A (zh) 一种虚拟机备份去重的方法
US10185630B2 (en) Failure recovery in shared storage operations

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant