Claims
- 1. A method for accessing data in an image file, the image file comprising a plurality of streams including a data stream and a cluster map stream, the data stream including the data and the cluster map stream including a plurality of records, each record identifying a virtual location of the data and a data stream location of the data, comprising:
receiving an access request, wherein the access request identifies the virtual location of the data; mapping the virtual location into the data stream location using one of the plurality of records; and reading the data from the data stream.
- 2. The method of claim 1 wherein the access request is initiated from an application program and wherein the data is received by the application program.
- 3. The method of claim 1 wherein the access request is initiated from a user interface.
- 4. The method of claim 1 wherein the access request is initiated from a command line request.
- 5. The method of claim 1 farther comprising the steps of, editing the data and writing the edited data to the data stream in the image file.
- 6. The method of claim 5 wherein the edited data is written to the end of the data stream.
- 7. The method of claim 1 further comprising the steps of accessing the data from an application program, editing the data and writing the edited data to the data stream in the image file.
- 8. The method of claim 7 wherein the edited data is written to the end of the data stream.
- 9. The method of claim 1 wherein the virtual location comprises a set of clusters.
- 10. The method of claim 9 wherein the clusters are contiguous.
- 11. The method of claim 1 wherein the data in the data stream is compressed, further comprising:
decompressing the data.
- 12. The method of claim 1 wherein the data in the data stream is encrypted, further comprising:
decrypting the data.
- 13. The method of claim 1, further comprising:
receiving a mount request; opening the image file for access; and providing a virtual drive mount point for the image file, wherein the access request includes the virtual drive mount point.
- 14. A method of editing a first image file, the first image file comprising a plurality of streams including a data stream and a cluster map stream, comprising:
receiving, at an image driver, a request to store a set of data in the first image file, the request including a virtual location for the set of data; adding the set of data to a location in the data stream; creating a cluster map record; the cluster map record including the virtual location for the set of data and the location in the data stream for the set of data; and adding the cluster map record to the cluster map stream.
- 15. The method of claim 14 wherein the set of data is added to the end of the data stream.
- 16. The method of claim 14 wherein the virtual location for the set of data is determined from a bitmask stream, the bitmask stream identifying allocated and unallocated clusters, the virtual location comprising one or more of the unallocated clusters.
- 17. The method of claim 14 wherein the image file further comprises an audit trail stream, further comprising:
creating an audit trail record, the audit trail record identifying a file that includes the set of data added to the data stream.
- 18. A method of transporting an image file over a network comprising at least a first computer and a second computer, the image file comprising a control stream, a data stream, and a cluster map stream:
parsing the image file into a plurality of segments including at least a first segment and a second segment, wherein the first segment comprises the control stream, the cluster map stream and a first portion of the data stream and wherein the second segment comprises a second portion of the data stream; sending the first segment from the first computer to the second computer; and sending the second segment from the first computer to the second computer.
- 19. The method of claim 18 wherein the first and second segment are substantially the same length.
- 20. The method of claim 19 wherein the length is user selectable.
- 21. In a computer, a method of creating a plurality of image files from source data on a source storage media, comprising:
creating a first image file from the source data and storing the first image file on a destination storage media volume, the first image file comprising a first data stream that includes the source of data, a first control stream with a unique identifier and a first cluster map stream; modifying the source data of on the source storage media volume; creating a second image file from the modified set of data and storing the second image file on the destination storage media volume, the second image file comprising a second data stream that includes the modified source data; a control stream that points to the unique identifier of the first image file, and a second cluster map stream.
- 22. The method of claim 21 wherein the first and second image files are stored as part of a single file.
- 23. A computer-readable medium having computer executable instructions for a method for accessing desired data in an image file, the image file comprising a plurality of streams including a data stream and a cluster map stream, the data stream including the desired data and the cluster map stream including a plurality of records, each record identifying a virtual location of the desired data and a data stream location of the desired data, comprising:
receiving an access request, wherein the access request identifies the virtual location of the desired data; converting the virtual location into the data stream location using one of the plurality of records; and reading the data from the data stream.
- 24. The computer-readable medium of claim 23 wherein the desired data in the data stream is compressed, further comprising:
decompressing the desired data.
- 25. The computer-readable medium of claim 23 wherein the desired data in the data stream is encrypted, further comprising:
decrypting the desired data.
- 26. The computer-readable medium of claim 23, further comprising:
receiving a mount request; opening the image file for access; and providing a virtual drive mount point for the image file, wherein the access request includes the virtual drive mount point.
- 27. A computer-readable medium having computer executable instruction for a method of editing a first image file, the first image file comprising a plurality of streams including a data stream and a cluster map stream, comprising:
receiving, at an image driver, a request to store a set of data in the image file, the request including a virtual location for the set of data; adding the set of data to a location in the data stream; creating a cluster map record; the cluster map record including the virtual location for the set of data and the location in the data stream for the set of data; and adding the cluster map record to the cluster map stream.
- 28. The computer-readable medium of claim 27 wherein the image file further comprises an audit trail stream, further comprising:
creating an audit trail record, the audit trail record identifying a file that includes the set of data added to the data stream.
- 29. A computer-readable medium having computer executable instructions for a method of creating a plurality of image files from source data on a source storage media, comprising:
creating a first image file from the source data and storing the first image file on a destination storage media volume, the first image file comprising a first data stream that includes the source of data, a first control stream with a unique identifier and a first cluster map stream; modifying the source data of on the source storage media volume; creating a second image file from the modified set of data and storing the second image file on the destination storage media volume, the second image file comprising a second data stream that includes the modified source data; a control stream that points to the unique identifier of the first image file, and a second cluster map stream.
- 30. A method for a system tool to obtain information from an image file comprising a plurality of streams, each of the plurality of streams comprising a set of data, comprising the steps of:
receiving, at an interface, a request for the set of data from at least one of the plurality of streams; sending the request from the interface to an image driver executing in an operating system; reading the set of data from the at least one of the plurality of streams; providing the system tool with the set of data from the at least one of the plurality of streams.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is related to co-pending application entitled “Method and System for Creating and Restoring an Image File” filed by Wesley Witt and Edward Miller on _______ (corresponding to attorney docket number LVM 215712), which document is hereby expressly incorporated by reference.