# US 12,216,613 B2 · Image level copy or restore, such as image level restore without knowledge of data object metadata

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,216,613 B2
- Document ID: US12216613B2
- Status: Granted
- Kind: B2
- Application number: 17/846,434
- Filed: 2022-06-22
- Published: 2022-10-06
- Granted: 2025-02-04
- Earliest claimed: 2008-09-05
- Assignees: Commvault Systems, Inc.
- Applicants: Commvault Systems, Inc.
- Inventors: Kamleshkumar K. Lad
- Web page: https://patentgrep.com/patent/US12216613B2

## CPC

- G06F 16/128: {Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion (error detection or correction of the data by redundancy in operations or in hardware G06F11/14, G06F11/16)}
- G06F 11/1469: {Backup restoration techniques}
- G06F 11/1464: {for networked environments}
- G06F 2201/84: Using snapshots, i.e. a logical point-in-time copy of the data
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A system and method for performing an image level restore of data is described. In some examples, the system receives a request to restore a file and transmits the request to an intermediate component. The intermediate component may then retrieve a directory file from an image of a secondary copy of a data set, identify a location of the file from the directory file, and provide the location to the requestor.

## Claims

### Claim 1

A non-transitory computer-readable medium storing instructions that, when executed by an intermediate component comprising one or more data processors, cause the one or more data processors to:
intercept a request to access an individual file,
wherein the request is issued by a file system of a first component that is distinct from the intermediate component, and
wherein the first component is in communication with the intermediate component;
retrieve a directory file from a snapshot that is located in a data storage device,
wherein the snapshot comprises a representation of files in a volume of data located in the data storage device,
wherein the snapshot comprises information identifying the files in the volume of data,
wherein the individual file is among the files in the volume of data represented by the snapshot,
wherein the directory file is among the files in the volume of data represented by the snapshot, and
wherein the directory file comprises location information in reference to the data storage device for the files in the volume of data;
store the directory file in a computer memory component of the intermediate component;
from the directory file in the computer memory component, retrieve location information of the individual file,
wherein the location information identifies one or more locations in the data storage device of one or more parts of the individual file; and
responsive to the request, transfer the location information of the individual file to the file system at the first component.

### Claim 2 (depends on 1)

The non-transitory computer-readable medium of claim 1, wherein based on receiving the location information of the individual file, the file system at the first component is enabled to use the location information to directly access the individual file at the data storage device without recovering the snapshot in its entirety.

### Claim 3 (depends on 1)

The non-transitory computer-readable medium of claim 1, wherein based on receiving the location information of the individual file, the file system at the first component is enabled to use the location information to restore the individual file from the data storage device without recovering the snapshot in its entirety.

### Claim 4 (depends on 1)

The non-transitory computer-readable medium of claim 1, wherein the one or more parts of the individual file correspond to one or more data blocks stored on media of the data storage device.

### Claim 5 (depends on 1)

The non-transitory computer-readable medium of claim 1, wherein the request to access the individual file intercepted at the intermediate component was received at the first component before the request was intercepted by the intermediate component.

### Claim 6 (depends on 1)

The non-transitory computer-readable medium of claim 1, wherein before being intercepted by the intermediate component, the request to access the individual file was received at the first component as a request to restore the individual file.

### Claim 7 (depends on 1)

The non-transitory computer-readable medium of claim 1, wherein one or more of: a later request to access the individual file, and a later request for the location information of the individual file, is served by the intermediate component from the computer memory component without again retrieving the directory file from the snapshot in the data storage device.

### Claim 8 (depends on 1)

The non-transitory computer-readable medium of claim 1, wherein a virtual storage device at the intermediate component intercepts the request and retrieves the directory file from the snapshot in the data storage device.

### Claim 9 (depends on 1)

The non-transitory computer-readable medium of claim 1, wherein a virtual storage device at the intermediate component retrieves the location information for the individual file and transfers the location information to the file system at the first component.

### Claim 10 (depends on 1)

The non-transitory computer-readable medium of claim 1, wherein the intermediate component communicatively resides between the first component and the data storage device.

### Claim 11

A computer-implemented method performed by an intermediate component comprising one or more data processors, wherein the method comprises:
receiving a request to access an individual file,
wherein the request is issued by a file system of a first component that is distinct from the intermediate component,
wherein the first component is in communication with the intermediate component,
wherein the intermediate component is mounted to the file system, and
wherein the intermediate component is in communication with a data storage device;
retrieving a directory file from a snapshot that is located in the data storage device,
wherein the snapshot comprises a representation of files in a volume of data located in the data storage device,
wherein the snapshot comprises information identifying the files in the volume of data,
wherein the individual file is among the files in the volume of data represented by the snapshot,
wherein the directory file is among the files in the volume of data represented by the snapshot, and
wherein the directory file comprises location information in reference to the data storage device for the files in the volume of data;
storing the directory file in a computer memory component of the intermediate component; and
from the directory file in the computer memory component, retrieving location information of the individual file,
wherein the location information identifies one or more locations in the data storage device of one or more parts of the individual file; and
responsive to the request, transferring the location information of the individual file to the file system at the first component.

### Claim 12 (depends on 11)

The computer-implemented method of claim 11, wherein based on receiving the location information of the individual file, the file system at the first component is enabled to use the location information to directly access the individual file at the data storage device without recovering the snapshot in its entirety.

### Claim 13 (depends on 11)

The computer-implemented method of claim 11, wherein based on receiving the location information of the individual file, the file system at the first component is enabled to use the location information to restore the individual file from the data storage device without recovering the snapshot in its entirety.

### Claim 14 (depends on 11)

The computer-implemented method of claim 11, wherein the one or more parts of the individual file correspond to one or more data blocks stored on media of the data storage device.

### Claim 15 (depends on 11)

The computer-implemented method of claim 11, wherein the request to access the individual file received at the intermediate component was received at the first component before the request was received by the intermediate component.

### Claim 16 (depends on 11)

The computer-implemented method of claim 11, wherein before being received by the intermediate component, the request to access the individual file was received at the first component as a request to restore the individual file.

### Claim 17 (depends on 11)

The computer-implemented method of claim 11, wherein one or more of: a later request to access the individual file, and a later request for the location information of the individual file, is served by the intermediate component from the computer memory component without again retrieving the directory file from the snapshot in the data storage device.

### Claim 18 (depends on 11)

The computer-implemented method of claim 11, wherein a virtual storage device at the intermediate component intercepts the request and retrieves the directory file from the snapshot in the data storage device.

### Claim 19 (depends on 11)

The computer-implemented method of claim 11, wherein a virtual storage device at the intermediate component retrieves the location information for the individual file and transfers the location information to the file system at the first component.

### Claim 20 (depends on 11)

The computer-implemented method of claim 11, wherein the intermediate component communicatively resides between the first component and the data storage device.
