# US 7,412,578 B2 · Snapshot creating method and apparatus

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

- Number: US 7,412,578 B2
- Document ID: US7412578B2
- Status: Granted
- Kind: B2
- Application number: 11/519,877
- Filed: 2006-09-13
- Published: 2007-01-11
- Granted: 2008-08-12
- Earliest claimed: 2002-11-27
- Assignees: Hitachi, Ltd.
- Inventors: Junichi Hara; Takahiro Nakano; Koji Sonoda; Takayoshi Iitsuka; Yutaka Takata
- Web page: https://patentgrep.com/patent/US7412578B2

## CPC

- G06F 16/10: File systems; File servers
- G06F 11/1451: {by selection of backup contents}
- G06F 2201/84: Using snapshots, i.e. a logical point-in-time copy of the data
- Y10S 707/99953: Recoverability
- Y10S 707/99955: Archiving or backup
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- Y10S: TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS

## Abstract

In the storage-based snapshot creation, a block-selection specifying unit provided on a NAS processing unit specifies a block, which becomes necessary for the generation of snapshot data, to a specified-block analyzing unit within a disk apparatus. Moreover, a disk controller generates the snapshot data on the block specified as the snapshot target, while making an inquiry to the specified-block analyzing unit. This makes it possible to create the snapshot in a storage-capacity reduced manner, and to specify the snapshot creation in a partition, file, or directory unit.

## Claims

### Claim 1

A file server for providing a file system configuring a plurality of directories and a plurality of files with respect to an external device, said file server being coupled to a disk apparatus which includes a first volume and a second volume, said file server comprising:
a disk interface coupled to the disk apparatus; and
a processor coupled to the disk interface,
wherein the processor receives, from the external device, a request for creating a snapshot of a file or a directory, and
wherein if the request is to create a snapshot of a file, then the processor selects blocks related to the file as a target and related to metadata of the file as a target, specifies metadata of a directory including the file as a target, and sends, to the disk apparatus, an instruction for creating the snapshot to be stored in the second volume according to the selected blocks.

### Claim 2 (depends on 1)

A file server according to claim 1, wherein a block including a super block and group descriptor of the file system to which the file belongs is specified as a target.

### Claim 3 (depends on 2)

A file server according to claim 2, wherein a block including a data block bit map and an mode bit map of a block group that includes metadata and data of the file is specified as a target.

### Claim 4 (depends on 3)

A file server according to claim 3, wherein a block including metadata and data of the file is specified as the target.

### Claim 5 (depends on 4)

A file server according to claim 4, wherein a block including metadata and a directory entry of a parent directory is specified as a target.

### Claim 6 (depends on 5)

A file server according to claim 5, wherein a determination is made as to whether a further parent directory exist over the parent directory.

### Claim 7 (depends on 2)

A file server according to claim 2, wherein if the request is to create a snapshot of a directory, then the processor selects blocks related to the directory as a target, and related to metadata of the directory as a target and related metadata of a file belonging to the directory, and sends, to the disk apparatus, an instruction for creating the snapshot to be stored in the second volume according to the selected blocks.

### Claim 8

A computer system comprising:
a file server for providing a file system configuring a plurality of directories and a plurality of files with respect to an external device; and
a disk apparatus coupled to the file server,
wherein the disk apparatus includes a first volume and a second volume for storing data,
wherein said file server comprises:
a disk interface coupled to the disk apparatus, and
a processor coupled to the disk interface,
wherein the processor receives from the external device a request for creating a snapshot of a file or a directory, and
wherein if the request is to create a snapshot of a file, then the processor selects blocks related to the file as a target and related to metadata of the file as a target, specifies metadata of a directory including the file as a target, and sends, to the disk apparatus, an instruction for creating the snapshot to be stored in the second volume according to the selected blocks.

### Claim 9 (depends on 8)

A computer system according to claim 8, wherein a block including a super block and group descriptor of the file system to which the file belongs is specified as a target.

### Claim 10 (depends on 9)

A computer system according to claim 9, wherein a block including a data block bit map and an mode bit map of a block group that includes metadata and data of the file is specified as a target.

### Claim 11 (depends on 10)

A computer system according to claim 10, wherein a block including metadata and data of the file is specified as the target.

### Claim 12 (depends on 11)

A computer system according to claim 11, wherein a block including metadata and a directory entry of a parent directory is specified as a target.

### Claim 13 (depends on 12)

A computer system according to claim 12, wherein a determination is made as to whether a further parent directory exist over the parent directory.

### Claim 14 (depends on 8)

A computer system according to claim 8, wherein if the request is to create a snapshot of a directory, then the processor selects blocks related to the directory as a target, and related to metadata of the directory as a target and related metadata of a file belonging to the directory, and sends, to the disk apparatus, an instruction for creating the snapshot to be stored in the second volume according to the selected blocks.
