Claims
- 1. A method for providing multiple copies of backup files on a file backup system, the file backup system storing a plurality of files and a file data table containing a plurality of file data associated with each of the plurality of files, a server coupled to the file backup system and to a client machine, the client machine operated by a user having a user identifier, the method comprising the steps of:
providing by the client machine to the server a file identifier identifying a file to be stored on the file backup system providing by the client machine to the server the user identifier of the user operating the client machine; creating a first new entry in the file data table; setting one of the plurality of file data of the first new entry in the file data table indicative of the file identification to the file identifier provided by the client machine; setting one of the plurality of file data of the first new entry in the file data table indicative of the user identification to the user identifier provided by the client machine; detecting, by the server, if the file identified by the file identifier is presently stored on the file backup system; in the event that a single copy of the file identified by the file identifier is presently stored on the file backup system; copying the contents of the single copy of the file to a second location within the file backup system; creating a second new entry in the file data table; setting one of the plurality of file data of the second new entry in the file data table indicative of the file identification to the file identifier provided by the client machine; setting one of the plurality of file data of the second new entry in the file data table indicative of the user identification to a user identifier indicative of a user pool; setting one of the plurality of file data of the second new entry in the file data table indicative of the source by identification to the user pool identifier; setting one of the plurality of file data of the second new entry in the file data table indicative of the number of users sharing the file contents one; setting one of the plurality of file data of the first new entry in the file data table indicative of the file location to point to the to the second copy of the file; setting one of the plurality of file data of the first new entry in the file data table indicative of the sourced by identification to the user pool identifier; setting one of the plurality of file data of the first new entry in the file data table indicative of the file location to point to the to the second copy of the file.
- 2. The method of claim 1 further including the steps of:
in the event that the file associated with the file identifier is not presently stored on the backup system,
receiving by the server the file contents from the client, storing the file on the backup system, and creating a new entry in the file data table setting one of the plurality of file data of the new entry in the file data table indicative of the file identification to the file identifier provided by the client machine; setting one of the plurality of file data of the first new entry in the file data table indicative of the user identification to the user identifier provided by the client machine; setting one of the plurality of file data of the first new entry in the file data table indicative of the sourced by identification to the user identifier provided by the client machine; setting one of the plurality of file data of the first new entry in the file data table indicative of the number of users sharing the file contents to zero; setting one of the plurality of file data of the first new entry in the file data table indicative of the number of users sharing the file contents to zero; setting one of the plurality of file data of the first new entry in the file data table indicative of the file location to point to the to the second copy of the file.
- 3. The method of claim 1 further including the steps of:
in the event that two or more copies of the file associated with the file identifier are presently stored on the backup system,
creating a new entry within the file data table associated with the stored file; setting one of the plurality of file data of the new entry in the file data table indicative of the user identification to the user identifier provided by the client machine; setting one of the plurality of file data of the new entry in the file data table indicative of the file identification to the file identifier provided by the client machine; setting one of the plurality of file data of the new entry in the file data table indicative of the source by identification to the user pool identifier; setting one of the plurality of file data of the new entry in the file data table indicative of the number of users sharing the file contents zero; finding within the file data table the entry having a user identification and a sourced by identification set to the user pool identifier and having a file identification set to the file identifier received from the client machine; incrementing the share count of the located file table entry setting one of the plurality of file data of the first new entry in the file data table indicative of the file location to point to the to the file location contained within the found file table entry.
- 4. The method of claim 1 further including the steps of:
receiving at the client a user identifier to be cancelled from the file backup system; finding in the file data table, entries having a user identifier and a sourced by identifier set to the user identifier to be removed; removing the file contents located at the location pointed to by the file location entry within each of the found file data table entries.
- 5. The method of claim 1 wherein the step of copying the contents of the single copy of the file to a second location includes copying the contents of the single copy of the file to a second location within the file backup system.
- 6. The method of claim 1 wherein the step of copying the contents of the single copy of the file to a second location includes copying the contents of the single copy of the file to a new second location within a queue and storing the contents of the single copy of the file to a second location within the file backup system at a later time and setting one of the plurality of file data of the first new entry in the file data table indicative of the file location to point to the to the new second copy of the file.
- 7. The method of claim 1 further comprising the steps of copying the contents of the file stored at the second location to a third location.
- 8. A method for providing a multiple copies of backup files on a file backup system, the method comprising the steps of:
making a first copy of a file on the backup system by a first user; creating a first entry in a file data table at a first location; associating the first file with the first user as a file source within the first entry; associating the first file with the first location within the first entry; requesting to make a second copy of the file by a second user; making a second copy of the file in a second location; creating a second entry in a file data table; associating the second file with a user pool as a file owner and a file source within the second entry; associating the second file with the second location within the second entry; creating a third entry in the file data table; associating the second file with the second user as and identifying the source of the file as the user pool within the third entry; and associating the second file with the second location within the third entry.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority under 35 U.S.C. §119(e) to provisional patent application serial No. 60/170,341 filed Dec. 13, 1999; the disclosure of which is incorporated by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60170341 |
Dec 1999 |
US |