Mechanism for exposing shadow copies in a networked environment
First Claim
1. A computer-readable storage medium having computer-executable instructions, a storage device comprising the computer-readable storage medium, the computer-executable instructions configured for associating a volume shadow copy with a current state of data stored on a shared volume, the instructions comprising:
- sending a request from a user with access to a limited portion of a full data volume to a server;
wherein the full data volume is associated with a plurality of users, with each user associated with a set of permissions that define the limited portion of the full data volume the user may access;
wherein the shared volume comprises the limited portion of the full data volume that is made available to the user as a shared volume in response to access privileges associated with the user and the full data volume;
receiving a first file handle to a root of the shared volume;
obtaining a current directory structure, wherein the current directory structure includes a current state of data stored on the shared volume;
automatically creating a volume shadow copy of the shared volume for later recovery, wherein the volume shadow copy includes a volume shadow copy directory structure; and
wherein only the limited portion of the full data volume that is made available to the user as a share is obtained;
associating the volume shadow copy with the current directory structure, wherein the volume shadow copy directory structure is a child of the current directory structure, wherein the volume shadow copy directory structure is accessible from the current directory structure, and wherein the current directory structure and the volume shadow copy directory structure are part of the shared volume;
wherein a file within the shared volume is at a higher hierarchical level within the current directory structure than a corresponding file for the file that is within the volume shadow copy;
sending a request to the server for a second file handle to a snapshot file located in the volume shadow copy directory structure that is a child of the current directory structure;
receiving the second file handle from the server, wherein the second file handle includes a flag field that differentiates all files that are stored in both the current directory structure and the volume shadow copy directory structure such that the snapshot file included within the volume shadow copy of the shared volume and a standard file that are both located in the current directory structure are differentiated by an indication that the snapshot file is associated with the volume shadow copy, wherein the second file handle includes a share identifier identifying a root resource of the shared volume, the flag field indicates the share identifier refers to a snapshot share, and the flag field further indicates that the snapshot file referred to by the second file handle cannot be modified despite modification privileges associated with the snapshot file;
hiding the volume shadow copy so that the volume shadow copy is not visible in the current directory structure, wherein the name of the volume shadow copy is configured to prevent enumeration of the volume shadow copy directory structure;
receiving a request to display the volume shadow copy;
displaying the volume shadow copy in response to the request to display the volume shadow copy; and
accessing the volume shadow copy for the snapshot file.
2 Assignments
0 Petitions
Accused Products
Abstract
Described is a mechanism for exposing a volume shadow copy of a shared volume over a network to a remote client. A shared volume is accessed at a client computing system having a root. A volume shadow copy (or “snapshot”) of the volume is identified as a child resource of the shared volume. The child resource representing the snapshot may be hidden from ordinary view by default. To access the snapshot, a user may access the child resource as if it were an ordinary file or directory on the shared volume. Advantageously, the user need not mount a new volume representing the snapshot volume, but rather the user may directly access the snapshot.
-
Citations
18 Claims
-
1. A computer-readable storage medium having computer-executable instructions, a storage device comprising the computer-readable storage medium, the computer-executable instructions configured for associating a volume shadow copy with a current state of data stored on a shared volume, the instructions comprising:
-
sending a request from a user with access to a limited portion of a full data volume to a server;
wherein the full data volume is associated with a plurality of users, with each user associated with a set of permissions that define the limited portion of the full data volume the user may access;
wherein the shared volume comprises the limited portion of the full data volume that is made available to the user as a shared volume in response to access privileges associated with the user and the full data volume;receiving a first file handle to a root of the shared volume; obtaining a current directory structure, wherein the current directory structure includes a current state of data stored on the shared volume; automatically creating a volume shadow copy of the shared volume for later recovery, wherein the volume shadow copy includes a volume shadow copy directory structure; and
wherein only the limited portion of the full data volume that is made available to the user as a share is obtained;associating the volume shadow copy with the current directory structure, wherein the volume shadow copy directory structure is a child of the current directory structure, wherein the volume shadow copy directory structure is accessible from the current directory structure, and wherein the current directory structure and the volume shadow copy directory structure are part of the shared volume;
wherein a file within the shared volume is at a higher hierarchical level within the current directory structure than a corresponding file for the file that is within the volume shadow copy;sending a request to the server for a second file handle to a snapshot file located in the volume shadow copy directory structure that is a child of the current directory structure; receiving the second file handle from the server, wherein the second file handle includes a flag field that differentiates all files that are stored in both the current directory structure and the volume shadow copy directory structure such that the snapshot file included within the volume shadow copy of the shared volume and a standard file that are both located in the current directory structure are differentiated by an indication that the snapshot file is associated with the volume shadow copy, wherein the second file handle includes a share identifier identifying a root resource of the shared volume, the flag field indicates the share identifier refers to a snapshot share, and the flag field further indicates that the snapshot file referred to by the second file handle cannot be modified despite modification privileges associated with the snapshot file; hiding the volume shadow copy so that the volume shadow copy is not visible in the current directory structure, wherein the name of the volume shadow copy is configured to prevent enumeration of the volume shadow copy directory structure; receiving a request to display the volume shadow copy; displaying the volume shadow copy in response to the request to display the volume shadow copy; and accessing the volume shadow copy for the snapshot file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system comprising a computer-readable storage medium encoded with a data structure, a storage device comprising the computer-readable storage medium, the data structure configured to accessing a volume shadow copy for a snapshot file, the system comprising:
-
sending a request from a user with access to a limited portion of a full data volume to a server;
wherein the full data volume is associated with a plurality of users, with each user associated with a set of permissions that define the limited portion of the full data volume the user may access;
wherein the shared volume comprises the limited portion of the full data volume that is made available to the user as a shared volume in response to access privileges associated with the user and the full data volume;receiving a first file handle to a root of the shared volume; obtaining a current directory structure, wherein the current directory structure includes a current state of data stored on the shared volume; automatically creating a volume shadow copy of the shared volume for later recovery, wherein the volume shadow copy includes a volume shadow copy directory structure; and
wherein only the limited portion of the full data volume that is made available to the user as a share is obtainedassociating the volume shadow copy with the current directory structure, wherein the volume shadow copy directory structure is a child of the current directory structure, wherein the volume shadow copy directory structure is accessible from the current directory structure, and wherein the current directory structure and the volume shadow copy directory structure are part of the shared volume;
wherein a file within the shared volume is at a higher hierarchical level within the current directory structure than a corresponding file for the file that is within the volume shadow copy;sending a request to the server for a second file handle to the snapshot file located in the volume shadow copy directory structure that is a child of the current directory structure; receiving the second file handle from the server, wherein the second file handle includes a flag field that differentiates all files that are stored in both the current directory structure and the volume shadow copy directory structure such that the snapshot file included within the volume shadow copy of the shared volume and a standard file that are both located in the current directory structure are differentiated by an indication that the snapshot file is associated with the volume shadow copy, wherein the second file handle includes a share identifier identifying a root resource of the shared volume, the flag field indicates the share identifier refers to a snapshot share, and the flag field further indicates that the snapshot file referred to by the second file handle cannot be modified despite modification privileges associated with the snapshot file; hiding the volume shadow copy so that the volume shadow copy is not visible in the current directory structure, wherein the name of the volume shadow copy is configured to prevent enumeration of the volume shadow copy directory structure; receiving a request to display the volume shadow copy; displaying the volume shadow copy in response to the request to display the volume shadow copy; and accessing the volume shadow copy for the snapshot file. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A computer-implemented method for accessing a file over a distributed file system, the method comprising:
-
sending a request from a user with access to a limited portion of a full data volume to a server;
wherein the full data volume is associated with a plurality of users, with each user associated with a set of permissions that define the limited portion of the full data volume the user may access;
wherein the shared volume comprises the limited portion of the full data volume that is made available to the user as a shared volume in response to access privileges associated with the user and the full data volume;receiving a first file handle to a root of the shared volume; obtaining a current directory structure, wherein the current directory structure includes a current state of data stored on the shared volume; automatically creating a volume shadow copy of the shared volume for later recovery, wherein the volume shadow copy includes a volume shadow copy directory structure; and
wherein only the limited portion of the full data volume that is made available to the user as a share is obtainedassociating the volume shadow copy with the current directory structure, wherein the volume shadow copy directory structure is a child of the current directory structure, wherein the volume shadow copy directory structure is accessible from the current directory structure, and wherein the current directory structure and the volume shadow copy directory structure are part of the shared volume;
wherein a file within the shared volume is at a higher hierarchical level within the current directory structure than a corresponding file for the file that is within the volume shadow copy;sending a request to the server for a second file handle to a snapshot file located in the volume shadow copy directory structure that is a child of the current directory structure; receiving the second file handle from the server, wherein the second file handle includes a flag field that differentiates all files that are stored in both the current directory structure and the volume shadow copy directory structure such that the snapshot file included within the volume shadow copy of the shared volume and a standard file that are both located in the current directory structure are differentiated by an indication that the snapshot file is associated with the volume shadow copy, wherein the second file handle includes a share identifier identifying a root resource of the shared volume, the flag field indicates the share identifier refers to a snapshot share, and the flag field further indicates that the snapshot file referred to by the second file handle cannot be modified despite modification privileges associated with the snapshot file; hiding the volume shadow copy so that the volume shadow copy is not visible in the current directory structure, wherein the name of the volume shadow copy is configured to prevent enumeration of the volume shadow copy directory structure; receiving a request to display the volume shadow copy; displaying the volume shadow copy in response to the request to display the volume shadow copy; and accessing the volume shadow copy for the snapshot file. - View Dependent Claims (18)
-
Specification