IP Library Granted Patent US 8,082,230
Granted Patent B1
US 8,082,230 · App. 11/644,765 · Granted Dec 20, 2011

System and method for mounting a file system on multiple host computers

Assignee: Symantec Operating Corporation
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 8,082,230
App. No.
11/644,765
Granted
Dec 20, 2011
Kind
B1
Abstract

Various embodiments of a system and method for enabling multiple computers to mount a file system are described herein. The file system may be mounted on one computer, and a snapshot copy of the file system may be created and mounted on a second computer. Data for a particular file in the file system may be stored at particular storage locations on a storage device. In response to a read request to access data for the particular file through the file system, the data stored at the particular storage locations may be read and returned. Similarly, in response to a read request to access data for the particular file through the snapshot copy of the file system, the data stored at the particular storage locations may be read and returned.

Claims (68)

1. A computer-implemented method comprising:

selecting a first computer as a computer on which to mount a file system, wherein the first computer is selected from a plurality of computers based on one or more characteristics of the first computer;

mounting the file system on the first computer, wherein the file system is mounted on the first computer in response to selecting the first computer from the plurality of computers, wherein the file system includes a plurality of backup image files including a first backup image file, wherein the plurality of backup image files are stored at a plurality of storage locations on a storage device, wherein the file system is mounted in order to access the plurality of backup image files stored at the plurality of storage locations on the storage device through the file system and to configure file system software of the first computer to manage metadata of the file system;

creating a snapshot copy of the file system, wherein the snapshot copy of the file system comprises a space allocated for a copy of the metadata of the file system, wherein a first portion of the space is empty, wherein a second portion of the space comprises a partial copy of the metadata of the file system, and wherein a map table indicates which blocks of the metadata of the file system are copied to the space;

mounting the snapshot copy of the file system on a second computer while the file system is mounted on the first computer, wherein the snapshot copy of the file system is mounted in order to access the plurality of backup image files stored at the plurality of storage locations on the storage device through the snapshot copy of the file system and to configure file system software of the second computer to manage metadata of the snapshot copy of the file system;

the file system software of the second computer receiving a read request from a program, wherein the read request comprises a request to access the first backup image file through the snapshot copy of the file system mounted on the second computer while the file system is mounted on the first computer;

the file system software of the second computer reading data from the first backup image file stored at a first set of the plurality of storage locations on the storage device in response to the read request and returning the data to the program;

the file system software of the first computer receiving a write request to write new data to one or more new backup image files through the file system mounted on the first computer while the snapshot copy of the file system is mounted on the second computer;

the file system software of the first computer writing the new data to the one or more new backup image files and modifying the metadata of the file system in response to the write request received by the file system software of the first computer; and

the file system software of the second computer modifying the metadata of the snapshot copy of the file system in response to the write request received by the file system software of the first computer.

2. The computer-implemented method of claim 1 , further comprising:

the file system software of the first computer receiving a second read request from a second program, wherein the second read request comprises a request to access the first backup image file through the file system mounted on the first computer while the snapshot copy of file system is mounted on the second computer;

the file system software of the first computer reading the data from the first backup image file stored at the first set of the plurality of storage locations on the storage device in response to the second read request and returning the data to the second program.

3. The computer-implemented method of claim 1 ,

wherein creating the snapshot copy of the file system includes copying the metadata of the file system to the snapshot copy of the file system.

4. The computer-implemented method of claim 3 , further comprising:

in response to the read request, reading from the metadata copied to the snapshot copy of the file system in order to determine the first set of the plurality of storage locations at which the data of the first backup image file is stored.

5. The computer-implemented method of claim 1 ,

wherein creating the snapshot copy of the file system does not include copying the metadata of the file system to the snapshot copy of the file system.

6. The computer-implemented method of claim 5 , further comprising:

in response to the read request, reading from the metadata of the file system mounted on the first computer in order to determine the first set of the plurality of storage locations at which the data of the first backup image file is stored.

7. The computer-implemented method of claim 5 ,

wherein the write request requires a portion of the metadata of the file system to be changed in order to write the new data to the one or more new backup image files;

wherein said modifying the metadata of the snapshot copy of the file system includes copying the portion of the metadata of the file system into the metadata of the snapshot copy of the file system in response to the write request.

8. The computer-implemented method of claim 1 , further comprising:

in response to the read request, determining whether the snapshot copy of the file system includes metadata corresponding to the data of the first backup image file;

wherein, upon determining that the snapshot copy of the file system includes metadata corresponding to the data of the first backup image file, said reading the data from the first backup image file is performed using the metadata of the snapshot copy of the file system mounted on the second computer;

wherein, upon determining that the snapshot copy of the file system does not include metadata corresponding to the data of the first backup image file, said reading the data from the first backup image file is performed using the metadata of the file system mounted on the first computer.

9. The computer-implemented method of claim 1 , further comprising:

un-mounting the file system from the first computer after mounting the file system on the first computer; and

re-mounting the file system on a third computer.

10. A computer-accessible storage medium storing program instructions executable by one or more processors to implement:

selecting a first computer as a computer on which to mount a file system, wherein the first computer is selected from a plurality of computers based on one or more characteristics of the first computer;

mounting the file system on the first computer, wherein the file system is mounted on the first computer in response to selecting the first computer from the plurality of computers, wherein the file system includes a plurality of backup image files including a first backup image file, wherein the plurality of backup image files are stored at a plurality of storage locations on a storage device, wherein the file system is mounted in order to access the plurality of backup image files stored at the plurality of storage locations on the storage device through the file system and to configure file system software of the first computer to manage metadata of the file system;

creating a snapshot copy of the file system, wherein the snapshot copy of the file system comprises a space allocated for a copy of the metadata of the file system, wherein a first portion of the space is empty, wherein a second portion of the space comprises a partial copy of the metadata of the file system, and wherein a map table indicates which blocks of the metadata of the file system are copied to the space;

mounting the snapshot copy of the file system on a second computer while the file system is mounted on the first computer, wherein the snapshot copy of the file system is mounted in order to access the plurality of backup image files stored at the plurality of storage locations on the storage device through the snapshot copy of the file system and to configure file system software of the second computer to manage metadata of the snapshot copy of the file system;

the file system software of the second computer receiving a read request from a program, wherein the read request comprises a request to access the first backup image file through the snapshot copy of the file system mounted on the second computer while the file system is mounted on the first computer;

the file system software of the second computer reading data from the first backup image file stored at a first set of the plurality of storage locations on the storage device in response to the read request and returning the data to the program;

the file system software of the first computer receiving a write request to write new data to one or more new backup image files through the file system mounted on the first computer while the snapshot copy of the file system is mounted on the second computer;

the file system software of the first computer writing the new data to the one or more new backup image files and modifying the metadata of the file system in response to the write request received by the file system software of the first computer; and

the file system software of the second computer modifying the metadata of the snapshot copy of the file system in response to the write request received by the file system software of the first computer.

11. The computer-accessible storage medium of claim 10 , further comprising:

the file system software of the first computer receiving a second read request from a second program, wherein the second read request comprises a request to access the first backup image file through the file system mounted on the first computer while the snapshot copy of file system is mounted on the second computer;

the file system software of the first computer reading the data from the first backup image file stored at the first set of the plurality of storage locations on the storage device in response to the second read request and returning the data to the second program.

12. The computer-accessible storage medium of claim 10 ,

wherein creating the snapshot copy of the file system includes copying the metadata of the file system to the snapshot copy of the file system.

13. The computer-accessible storage medium of claim 10 ,

wherein creating the snapshot copy of the file system does not include copying the metadata of the file system to the snapshot copy of the file system.

14. The computer-accessible storage medium of claim 13 , wherein the program instructions are further executable by the one or more processors to implement:

in response to the read request, reading from the metadata of the file system mounted on the first computer in order to determine the first set of the plurality of storage locations at which the data of the first backup image file is stored.

15. The computer-accessible storage medium of claim 13 ,

wherein the write request requires a portion of the metadata of the file system to be changed in order to write the new data to the one or more new backup image files;

wherein said modifying the metadata of the snapshot copy of the file system includes copying the portion of the metadata of the file system into the metadata of the snapshot copy of the file system in response to the write request.

16. A system comprising:

a first computer, wherein the first computer is selected from a plurality of computers as a computer on which to mount a file system based on one or more characteristics of the first computer;

a second computer; and

one or more storage devices;

wherein the first computer is configured to mount the file system in response to the first computer being selected from the plurality of computers, wherein the file system includes a plurality of backup image files stored at a plurality of storage locations on the one or more storage devices in order to access the plurality of backup image files through the file system and to configure file system software of the first computer to manage metadata of the file system, wherein the plurality of backup image files includes a first backup image file;

wherein the second computer is configured to mount a snapshot copy of the file system in order to access the plurality of backup image files stored at the plurality of storage locations through the snapshot copy of the file system while the file system is mounted on the first computer and to configure file system software of the second computer to manage metadata of the snapshot copy of the file system, wherein the snapshot copy of the file system comprises a space allocated for a copy of the metadata of the file system, wherein a first portion of the space is empty, wherein a second portion of the space comprises a partial copy of the metadata of the file system, and wherein a map table indicates which blocks of the metadata of the file system are copied to the space;

wherein the file system software of the second computer is configured to receive a read request from a program, wherein the read request comprises a request to access the first backup image file through the snapshot copy of the file system mounted on the second computer while the file system is mounted on the first computer;

wherein the file system software of the second computer is configured to read data from the first backup image file stored at a first set of the plurality of storage locations in response to the read request and return the data to the program;

wherein the file system software of the first computer is configured to receive a write request to write new data to one or more new backup image files through the file system mounted on the first computer while the snapshot copy of the file system is mounted on the second computer;

wherein the file system software of the first computer is configured to write the new data to the one or more new backup image files and modify the metadata of the file system in response to the write request received by the file system software of the first computer; and

wherein the file system software of the second computer is configured to modify the metadata of the snapshot copy of the file system in response to the write request received by the file system software of the first computer.

17. The system of claim 16 ,

wherein the snapshot copy of the file system includes a copy of the metadata of the file system.

18. The system of claim 16 ,

wherein the snapshot copy of the file system does not include a copy of the metadata of the file system.

Assignments (13)
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded May 4, 2026
From: COHESITY, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 075521/0417 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER AND CHANGE OF NAME Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC; VERITAS TECHNOLOGIES LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038455/0752 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037697/0412 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED ON REEL 019872 FRAME 979. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNEE IS SYMANTEC OPERATING CORPORATION. Recorded Mar 5, 2012
From: VERITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 027819/0462 →
CHANGE OF NAME Recorded Sep 26, 2007
From: VERITAS OPERATING CORPORATION
To: SYMANTEC CORPORATION
Reel/Frame 019872/0979 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2006
From: ROOT, MICHAEL E.
To: VERITAS OPERATING CORPORATION
Reel/Frame 018742/0628 →