IP Library Granted Patent US 12,730,723
Granted Patent B2
US 12,730,723 · App. 18/242,808 · Granted Sep 8, 2026

Selective processing of file system objects for image level backups

Inventors: Ratmir Timashev (Baar, CH); Anton Gostev (Saint-Petersburg, RU)
Assignee: VEEAM SOFTWARE AG
G06F11/1451G06F11/1464G06F16/148G06F16/1844G06F2201/80
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,730,723
App. No.
18/242,808
Granted
Sep 8, 2026
Kind
B2
Abstract

Systems, methods, and computer program products are provided for reducing the size of image level backups. An example method receives backup parameters identifying a physical or Virtual Machine (VM) to backup and at least one file system object to include in the backup. The method connects to production storage corresponding to the selected physical or virtual machine and obtains access to data stored in disk corresponding to the selected file system object(s). The method fetches file allocation table (FAT) blocks from the disk and parses contents of the FAT blocks to determine if the disk blocks correspond to the selected file system object(s). The method creates a backup disk image FAT comprising blocks corresponding to the selected file system object(s). The method creates a reconstructed disk image FAT blocks corresponding to the backup FAT and disk image data blocks belonging to the selected file system object(s) and all other disk image data blocks are saved as zero blocks. A reconstructed disc image is compressed and stored in a backup file on backup storage, or replicated (copied) to another storage intact.

Claims (52)

1 . A system for selective processing of file system objects for an image level backup, comprising:

a backup engine in communication with a production virtual disk storage, wherein the production virtual disk storage comprises one or more virtual disk images and a file allocation table (FAT), and wherein the backup engine comprises:

a receiving module configured to receive backup parameters for the image level backup, wherein the backup parameters include a selection of a virtual machine to backup and a selection of a plurality of file system objects including a first file system object to include in and a second file system object to exclude from the image level backup, wherein the plurality of file system objects are associated with one or more applications associated with the virtual machine; and

a connection module configured to connect to a virtual disk image of the one or more virtual disk images corresponding to the selected virtual machine, wherein the connection module is further configured to obtain data from the virtual disk image corresponding to the first file system object;

a FAT processing module configured to:

identify a set of pre-configured exclusion files, wherein the set of pre-configured exclusion files comprises at least one virtual memory file that is automatically excluded based on one or more pre-configuration settings of the backup engine, specifying exclusion of virtual memory files from the image level backup;

fetch a selected set of data blocks from the virtual disk image using the FAT, wherein the selected set of data blocks correspond to the first file system object, and wherein the FAT provides a location of the selected set of data blocks;

prevent fetching, from the virtual disk image, a set of data blocks corresponding to the second file system object and the set of pre-configured exclusion files;

generate empty content corresponding to the set of data blocks corresponding to the second file system object and the set of pre-configured exclusion files; and

create a backup FAT from the selected set of data blocks and the empty content; and

a block processing module configured to save the backup FAT to a reconstructed disk image in the backup engine.

2 . The system of claim 1 , wherein the virtual machine is selected from a plurality of virtual machines.

3 . The system of claim 1 , wherein the reconstructed disk image is a replica virtual machine.

4 . The system of claim 3 , wherein the reconstructed disk image is configured to be accessible from a hypervisor host running the replica virtual machine.

5 . The system of claim 1 , wherein the reconstructed disk image is configured to be accessible as a local volume.

6 . The system of claim 1 , wherein the reconstructed disk image is configured to be accessible as remote storage.

7 . The system of claim 1 , the block processing module further configured to:

determine a previously processed block of the fetched selected set of data blocks; and

determine whether the previously processed block is a last block of the virtual disk image.

8 . A method for object-selective processing of file system objects for an image level backup, comprising:

receiving, by a backup engine in communication with a production virtual disk storage, backup parameters for the image level backup, wherein the backup parameters include a selection of a virtual machine to backup and a selection of a plurality of file system objects including a first file system object to include in and a second file system object to exclude from the image level backup, wherein the plurality of file system objects are associated with one or more applications associated with the virtual machine, and wherein the production virtual disk storage further comprises one or more virtual disk images and a file allocation table (FAT);

connecting, by the backup engine, to a virtual disk image of one or more virtual disk images corresponding to the selected virtual machine;

obtaining data from the virtual disk image corresponding to the first file system object;

identifying a set of pre-configured exclusion files, wherein the set of pre-configured exclusion files comprises at least one virtual memory file that is automatically excluded based on one or more pre-configuration settings of the backup engine, specifying exclusion of virtual memory files from the image level backup;

fetching, by a FAT processing module in communication with the backup engine, a selected set of data blocks from the virtual disk image using the FAT, wherein the selected set of data blocks correspond to the first file system object, and wherein the FAT provides a location of the selected set of data blocks;

preventing, by the FAT processing module, fetching, from the virtual disk image, a set of data blocks corresponding to the second file system object and the set of pre-configured exclusion files;

generating, by the FAT processing module, empty content corresponding to the set of data blocks corresponding to the second file system object and the set of pre-configured exclusion files;

creating a backup FAT from the selected set of data blocks and the empty content; and

saving the backup FAT to a reconstructed disk image in the backup engine.

9 . The method of claim 8 , wherein the virtual machine is selected from a plurality of virtual machines.

10 . The method of claim 8 , wherein the reconstructed disk image is a replica virtual machine.

11 . The method of claim 10 , wherein the reconstructed disk image is configured to be accessible from a hypervisor host running the replica virtual machine.

12 . The method of claim 8 , wherein the reconstructed disk image is configured to be accessible as a local volume.

13 . The method of claim 8 , wherein the reconstructed disk image is configured to be accessible as remote storage.

14 . The method of claim 8 , further comprising:

determining a previously processed block of the fetched selected set of data blocks; and

determining whether the previously processed block is a last block of the virtual disk image.

15 . A non-transitory computer-readable medium having instructions stored thereon, wherein the instructions when executed by one or more processors of a backup engine in communication with a production virtual disk storage, cause the one or more processors to perform operations, the operations comprising:

receiving backup parameters for an image level backup, wherein the backup parameters include a selection of a virtual machine to backup and a selection of a plurality of file system objects including a first file system object to include in and a second file system object to exclude from the image level backup, wherein the plurality of file system objects are associated with one or more applications associated with the virtual machine, and wherein the production virtual disk storage further comprises one or more virtual disk images and a file allocation table (FAT);

connecting to a virtual disk image of one or more virtual disk images corresponding to the selected virtual machine, wherein the one or more virtual disk images are stored in the production virtual disk storage;

obtaining data from the virtual disk image corresponding to the first file system object;

identifying a set of pre-configured exclusion files, wherein the set of pre-configured exclusion files comprises at least one virtual memory file that is automatically excluded based on one or more pre-configuration settings of the backup engine, specifying exclusion of virtual memory files from the image level backup;

fetching a selected set of data blocks from the virtual disk image using the FAT, wherein the selected set of data blocks correspond to the first file system object, and wherein the FAT provides a location of the selected set of data blocks;

preventing fetching, from the virtual disk image, a set of data blocks corresponding to the second file system object and the set of pre-configured exclusion files;

generating empty content corresponding to the set of blocks corresponding to the second file system object and the set of pre-configured exclusion files;

creating a backup FAT from the selected set of data blocks and the empty content; and

saving the backup FAT to a reconstructed disk image in the backup engine.

16 . The non-transitory computer-readable medium of claim 15 , wherein the virtual machine is selected from a plurality of virtual machines.

17 . The non-transitory computer-readable medium of claim 15 , wherein the reconstructed disk image is a replica virtual machine.

18 . The non-transitory computer-readable medium of claim 17 , wherein the reconstructed disk image is configured to be accessible from a hypervisor host running the replica virtual machine.

19 . The non-transitory computer-readable medium of claim 15 , wherein the reconstructed disk image is configured to be accessible as a local volume.

20 . The non-transitory computer-readable medium of claim 15 , wherein the reconstructed disk image is configured to be accessible as remote storage.

Assignments (4)
CHANGE OF NAME Recorded May 21, 2026
From: VEEAM SOFTWARE GMBH
To: VEEAM SOFTWARE GROUP GMBH
Reel/Frame 075623/0835 →
ENTITY CONVERSION Recorded May 20, 2026
From: VEEAM SOFTWARE AG
To: VEEAM SOFTWARE GMBH
Reel/Frame 075583/0744 →
PATENT SECURITY AGREEMENT Recorded May 3, 2024
From: VEEAM SOFTWARE GROUP GMBH (F/K/A VEEAM SOFTWARE AG)
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 067309/0422 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2023
From: TIMASHEV, RATMIR; GOSTEV, ANTON
To: VEEAM SOFTWARE AG
Reel/Frame 064814/0761 →
Continuity (6)
Continuation 17380523 · Jul 20, 2021
Continuation 16197644 · Nov 21, 2018
Continuation 15359128 · Nov 22, 2016
Continuation 13159229 · Jun 13, 2011
Provisional Application 61354529 · Jun 14, 2010
Related Publication 20240211353A1 · Jun 27, 2024
References Cited (90)
US 4961134A · Crus · 1990 [cited by examiner]
US 5247618A · Davis · 1993 [cited by examiner]
US 5357475A · Hasbun · 1994 [cited by examiner]
US 5539837A · Lindmark · 1996 [cited by examiner]
US 5634052A · Morris · 1997 [cited by applicant]
US 5742818A · Shoroff · 1998 [cited by examiner]
US 5765173A · Cane · 1998 [cited by examiner]
US 5778395A · Whiting · 1998 [cited by examiner]
US 5890169A · Wong · 1999 [cited by examiner]
US 5907672A · Matze · 1999 [cited by examiner]
US 6189081B1 · Fujio · 2001 [cited by examiner]
US 6453383B1 · Stoddard · 2002 [cited by examiner]
US 6580804B1 · Abe · 2003 [cited by examiner]
US 6665779B1 · Polfer · 2003 [cited by examiner]
US 6742147B1 · Sasaki · 2004 [cited by examiner]
US 6931558B1 · Jeffe et al. · 2005 [cited by applicant]
US 6956855B1 · Chang · 2005 [cited by examiner]
US 7093086B1 · Van Rietschote · 2006 [cited by applicant]
US 7191299B1 · Kekre et al. · 2007 [cited by applicant]
US 7254682B1 · Arbon · 2007 [cited by examiner]
US 7356679B1 · Le · 2008 [cited by examiner]
US 7721138B1 · Lyadvinsky · 2010 [cited by examiner]
US 7831789B1 · Per · 2010 [cited by examiner]
US 8127089B1 · Nguyen · 2012 [cited by examiner]
US 8156165B2 · Malueg · 2012 [cited by examiner]
US 8200637B1 · Stringham · 2012 [cited by examiner]
US 8682862B2 · Rosikiewicz · 2014 [cited by examiner]
US 9507670B2 · Timashev · 2016 [cited by examiner]
US 10157103B2 · Gostev · 2018 [cited by examiner]
US 11068349B2 · Timashev · 2021 [cited by examiner]
US 20010051954A1 · Yamashita · 2001 [cited by examiner]
US 20020051260A1 · Kurakata · 2002 [cited by examiner]
US 20030031095A1 · Jeon · 2003 [cited by examiner]
US 20030142960A1 · Yokota · 2003 [cited by examiner]
US 20030185111A1 · Ohbi · 2003 [cited by examiner]
US 20040054877A1 · Macy, Jr. · 2004 [cited by examiner]
US 20040153689A1 · Assaf · 2004 [cited by examiner]
US 20050165853A1 · Turpin · 2005 [cited by examiner]
US 20050177777A1 · Seaburg · 2005 [cited by examiner]
US 20050228836A1 · Bacastow · 2005 [cited by examiner]
US 20050259542A1 · Mochizuki · 2005 [cited by examiner]
US 20060029230A1 · Kihara · 2006 [cited by examiner]
US 20060218435A1 · van Ingen · 2006 [cited by examiner]
US 20070186070A1 · Federa · 2007 [cited by examiner]
US 20070261056A1 · Iizuka · 2007 [cited by examiner]
US 20070294320A1 · Yueh · 2007 [cited by applicant]
US 20080028004A1 · Lee · 2008 [cited by examiner]
US 20080069522A1 · Okada · 2008 [cited by examiner]
US 20080109616A1 · Taylor · 2008 [cited by examiner]
US 20080228841A1 · Mizuno · 2008 [cited by examiner]
US 20080250083A1 · Kovacs · 2008 [cited by examiner]
US 20080275924A1 · Fries · 2008 [cited by applicant]
US 20080307333A1 · McInerney · 2008 [cited by examiner]
US 20090055452A1 · Tang · 2009 [cited by examiner]
US 20090094603A1 · Hiltgen et al. · 2009 [cited by applicant]
US 20090106484A1 · Yeh · 2009 [cited by examiner]
US 20090123124A1 · Ham · 2009 [cited by examiner]
US 20090164529A1 · McCain · 2009 [cited by examiner]
US 20090216970A1 · Basler et al. · 2009 [cited by applicant]
US 20090222496A1 · Liu et al. · 2009 [cited by applicant]
US 20090313447A1 · Nguyen et al. · 2009 [cited by applicant]
US 20100042753A1 · Whaley · 2010 [cited by examiner]
US 20100070725A1 · Prahlad · 2010 [cited by examiner]
US 20100076932A1 · Lad · 2010 [cited by examiner]
US 20100107158A1 · Chen et al. · 2010 [cited by applicant]
US 20100132022A1 · Venkatasubramanian · 2010 [cited by applicant]
US 20100138406A1 · Seo · 2010 [cited by examiner]
US 20100235331A1 · Silich · 2010 [cited by examiner]
US 20100262585A1 · Rosikiewicz · 2010 [cited by examiner]
US 20100332534A1 · Chang · 2010 [cited by examiner]
US 20110016089A1 · Freedman · 2011 [cited by examiner]
US 20110022811A1 · Kirhata et al. · 2011 [cited by applicant]
US 20110040812A1 · Phillips · 2011 [cited by examiner]
US 20110055299A1 · Phillips · 2011 [cited by examiner]
US 20110307657A1 · Timashev · 2011 [cited by examiner]
US 20120060006A1 · Paterson-Jones · 2012 [cited by examiner]
US 20120140287A1 · Kawaguchi · 2012 [cited by examiner]
US 20130173553A1 · Apte · 2013 [cited by examiner]
US 20140250093A1 · Prahlad · 2014 [cited by examiner]
US 20150193324A1 · McGrath · 2015 [cited by examiner]
US 20160307023A1 · Kim · 2016 [cited by examiner]
US 20170075766A1 · Timashev et al. · 2017 [cited by applicant]
US 20190332489A1 · Timashev et al. · 2019 [cited by applicant]
US 20210364310A1 · Rolf · 2021 [cited by examiner]
US 20220156155A1 · Timashev et al. · 2022 [cited by applicant]
EP 0767431A1 · 1997 [cited by applicant]
EP 1855283A1 · 2007 [cited by examiner]
WO WO2010038558A1 · 2010 [cited by applicant]
Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration and Written Opinion of the International Searching Authority, Internati… [cited by applicant]
Supplementary Search Report filed in application No. EP 11796304.1, completed Dec. 7, 2015; 2 pages. [cited by applicant]