1. Field of the Invention
The present invention relates generally to the field of backing up digital content and more particularly to preserving user settings.
2. Description of the Prior Art
Many backup systems in the marketplace today are tedious to use. These systems typically require installation and configuration by the user and then execute a backup process that can run for hours. Some backup systems completely replicate the contents of an entire logical storage area, while others selectively back up data. For example, some backup systems are specific to a particular application, such as backing up data for accounting software, and otherwise ignore all other applications. Other backup systems back up data, for example, by finding those files that have certain file extensions or that are stored in a particular folder.
One popular example, the Microsoft File and Transfer Wizard creates a single monolithic file that requires substantial storage capacity, and ignores non-Microsoft products. Should a sector of the storage medium become bad after a time, the entire monolithic file may become useless.
An exemplary method of the invention comprises searching a computing system to identify an application installed on the computing system, obtaining a specified pathname for a user setting of the identified application, and backing up the user setting of the identified application using the specified pathname. Obtaining the specified pathname can comprise, in some embodiments, accessing a look-up table that associates, for known applications, the known pathnames for the user settings of those applications. Backing up the user setting can include storing the user setting to a backup device, or storing the user setting to networked storage.
In some embodiments, the method further comprises restoring to the computing system the backed up user setting using the specified pathname. The method can further comprise copying the user setting to another computing system. Additionally, the method can further comprise receiving a selection of a user account and backing up the user setting includes using the selected user account. The method can further comprise obtaining a specified pathname for a user setting associated with an operating system of the computing system and backing up the user setting associated with the operating system. The method can also comprise obtaining a defined data field or a pathname for a Windows Registry key for a user setting of an operating system of the computing system and backing up the Windows Registry key of the user setting of the operating system using the defined data field or pathname for the Windows Registry key.
Another exemplary method of the invention comprises searching a computing system to identify an application installed on the computing system, obtaining a specified file extension for a user setting of the identified application, and backing up the user setting of the identified application using the specified file extension. In some embodiments, backing up the user setting includes storing an indication of a location of the user setting within a directory structure of the computing system.
The present invention also provides a computer readable medium having stored thereupon computing instructions. The computing instructions comprise a code segment to search a computing system to identify an application installed on the computing system, a code segment to obtain a specified pathname for a user setting of the identified application, and a code segment to back up the user setting of the identified application using the specified pathname.
An exemplary backup device of the present invention comprises a computer readable medium having stored thereupon computing instructions. The computing instructions include a code segment to search a computing system to identify an application installed on the computing system, a code segment to obtain a specified pathname for a user setting of the identified application, and a code segment to back up the user setting of the identified application using the specified pathname. In some embodiments, the code segment to back up the user setting is configured to back up the user setting to the computer readable medium. In various embodiments the computer readable medium can comprise a hard disk, an optical disc, or a flash memory. The backup device can further comprise an emulation component, in some embodiments.
The present invention is directed to systems and methods for backing up user settings of a computing system. User settings encompass those user-customizations and personalizations saved by an application or an operating system. User settings are distinguished from user data that encompasses the data files that a user creates or produces when using an application, such as spreadsheets, text documents, audio and video files, presentations, and the like. By backing up the user settings of the computing system, these user-customizations can be restored to the computing system at a later time. Additionally, the user settings can be copied to another computing system so that the operating system and/or the applications of the second computing system have the same user-customizations as the first computing system.
The systems and methods of the present invention can be used, for instance, to augment other backup applications that do not otherwise seek to preserve these user-customizations. In particular, the systems and methods of the present invention can be used in conjunction with the backup systems and methods disclosed in the several related applications listed above.
At a later point in time the user settings can be stored back to the computing system 110 from the backup device 100 thus restoring the user settings of the computing system 110. A user might seek to restore the user settings to the computing system 110 following the accidental modification of the user settings as well as after the loss of the user settings from the computing system 110 due to a computer virus or other malicious attack. It will be understood that the backup device 100 does not need to remain connected to the computing system 110 during the period between backing up the user settings and later restoring the user settings to the computing system 110.
Another aspect of the invention is illustrated generally by
Searching 310 the computing system (e.g., computing system 110 of
Once an installed application has been identified, the method 300 continues by obtaining 320 a specified pathname for a user setting of the identified application. The location of a file containing the user setting within the directory structure 400 can be specified by a pathname such as C:\program_files\program_name\user_settings.doc. Here, for example, a look-up table can be accessed to determine the known pathname of the user setting for the identified application. It will be appreciated that accessing a look-up table is merely one example of the various ways one can obtain a known pathname for a user setting of a known application, any of which can be a suitable alternative to accessing the look-up table.
An exemplary look-up table contains a rule set for each listed application and operating system. The rule set specifies where to find various user settings, such as a particular folder of the directory structure, a particular folder in the Windows Registry, or both. As one example, a rule set for an application called Skype would indicate that user settings can be found in a folder with a pathname of C:\Documents and Settings\UserName\Application Data\Skype in a file named config.xml and in other files with the .lck file extension. The rule set would also show that other user settings are saved in the Windows Registry (e.g., the setting for “Default Language”) and would provide a defined data field or pathname for these user settings as well.
The look-up table can be stored on a backup device (e.g., backup device 100 of
If the lookup table does not contain a rule set for an identified application, at least two alternatives exist. Where the look-up table is stored locally (i.e., on the computing system or backup device) and may not be up to date, the master look-up table can be consulted by making a network connection to a server that has access to the master look-up table. Alternately, or if consulting the master look-up table does not provide a rule set, the Windows Registry can be searched for the pathnames of the locations of the user settings.
Next, the method 300 comprises backing up 330 the user setting of the identified application using the specified pathname. For instance, the rule set of the look-up table can specify a pathname for a folder and a file extension for the particular file that includes the user setting. The user setting can therefore be located on the computing system and stored, for example, to a backup device or to a networked storage.
As noted previously, user settings encompass user-customizations and personalizations stored by an application or an operating system. Examples of user settings include bookmarks, template settings, local and regional settings, desktop settings such as background and screen savers, screen saver passwords and wait times, desktop icons including icon arrangement settings, display settings, power management settings, folder options, default fonts and associated options, Taskbar and Start Menu settings and configurations, Quick Launch Tool Bar settings and preferences, sound and audio settings, firewall and security settings, printer and facsimile settings, keyboard and mouse behavior settings, network, dialup, and modem settings, authentication settings, preferences, and tokens, share points, protocol settings, wireless network settings including Wired Equivalent Privacy (WEP) keys, preferred rules, customized dictionaries, playlists, macros, user account settings, multilingual user interface settings, time zone settings, web settings, consoles, cookies, offline websites, browser histories, off-line content, security certificates, personal information retained by AutoComplete and MyProfile, Internet browser advanced settings, etc.
The method 300 optionally comprises restoring/copying 340 the backed up user setting to the computing system or to another computing system (e.g., computing system 210 in
Restoring/copying 340 the backed up user setting to the computing system can also comprise resolving differences between versions of an application or an operating system. For instance, the user setting of an application installed on a computer system running Windows XP can be backed up and then later restored or copied to a computing system running Windows Vista and having the same application installed. Mozilla FireFox, for example, running under Windows XP stores a user setting in a file with the .mfl file extension in a folder with one pathname. In Windows Vista the file extension is the same but the pathname for the folder is different. In this example, files with the file extension .mfl are located in the folder having the Vista pathname and overwritten with the backed up files from the computing system running Windows XP.
Some computing systems and applications support user accounts so that more than one user can maintain their own customizations of the operating system and applications.
Method 500 also comprises searching 310 (
As in step 340 of method 300, method 500 can optionally comprise restoring the backed up user setting to the same computing system or copying the user setting to another computing system. In either case, the method can receive a user selection of a previously backed up user account in order to have the user setting of the selected user account restored to the same computing system or copied to another computing system. For instance, where a user setting for more than one user account was previously backed up, the user can be prompted to select the user account to restore to the same computing system or copy to another computing system.
If the name of the selected backed up user account does not exactly match any of the user accounts of the computing system that the backed up user setting is being restored or copied to, the user can be prompted to make a further selection between several options. One such option is to create a new user account based on the selected backed up user account. Another option is to overwrite the user setting of an existing user account on the computing system with the user settings of the selected backed up user account. A third option is to retain the backed up user setting on the backup device and neither overwrite the user setting of the existing user account nor create the new user account.
Additional steps can be included in both of the methods 300 and 500. For example, steps of the method 300 can also be applied to a user setting associated with an operating system of the computing system, as opposed to a user setting of an application as previously described. Thus, the methods 300 and 500 can comprise obtaining a specified pathname for the user setting of the operating system, backing up the user setting of the operating system using the specified pathname, and restoring the user setting to the same computing system or copying the user setting to another computing system, each in the same manner as steps 320, 330, and 340.
As another example, the user setting of an application or the operating system can be located in the Windows Registry rather than in a file within the directory structure. Thus, the methods 300 and 500 can comprise steps 320, 330, and 340 that utilize a defined data field or a pathname for a Windows Registry key for a user setting the application or of the operating system, rather than a pathname of a file within the directory structure.
As yet another example, the look-up table may associate a file extension with a user setting for an application, rather than a pathname. Therefore, the methods 300 and 500 can also comprise obtaining a specified file extension for the user setting of the identified application, and backing up the user setting of the identified application using the specified file extension.
Obtaining the specified file extension for the user setting of the identified application can be performed similarly to obtaining 320 (
As just noted, where a file extension is utilized in place of a pathname, backing up the user setting can include backing up the indication of the location of the user setting within the directory structure. It will be appreciated that backing up 330 (
It will be further appreciated that several alternatives can be employed to store the indication of the location of the user setting, other than to store the pathname. For instance, a portion of the directory structure of the computing system can be created and the user setting can be backed up to the corresponding location within the portion of the directory structure. As another example, a flat file structure with an XML index can be created to store the location information for later use.
As still another example of an optional step of the methods 300 and 500, backing up 330 the user setting of the identified application (or operating system) can be repeated following a change to the previously backed up user setting. Here, for example, the user setting is monitored after having been once backed up, and if the user setting is subsequently modified the user setting can be either immediately backed up again, or at least flagged to be backed up again as an incremental backup.
The present invention is also directed to a backup device 100 (
The first logical storage area 650 represents a logical area of the computer readable medium 640 that is meant to be inaccessible to the user and safe from accidental erasure. The first logical storage area 650 can contain, for example, a backup application, a look-up table, system files, drivers, and other setup and configuration software. The first logical storage area 650 is represented to the computing system 110 by the emulation component 630 as being an auto-launch device. As used herein, auto-launch devices are those devices that will trigger the automatic execution functionalities of certain operating systems, such as the AutoRun function of the Microsoft Windows operating system.
The second logical storage area 660 represents a logical area of the computer readable medium 640 that is dedicated to storing backed-up user settings. Accordingly, the emulation component 630 represents the second logical storage area 660 to the computing system 110 as being a writable computer readable medium. With reference to
It will be appreciated that the Windows Vista operating system allows devices to designate themselves as auto-launching. The emulation components 630, 1030 in the backup devices 600, 700, and 1000 are therefore optional in those embodiments where these backup devices will be used with Windows Vista or some other operating system that provides similar functionality. In these embodiments, because the backup device can designate itself as auto-launching, the backup application can auto-launch.
In the foregoing specification, the invention is described with reference to specific embodiments thereof, but those skilled in the art will recognize that the invention is not limited thereto. Various features and aspects of the above-described invention may be used individually or jointly. Further, the invention can be utilized in any number of environments and applications beyond those described herein without departing from the broader spirit and scope of the specification. The specification and drawings are, accordingly, to be regarded as illustrative rather than restrictive. It will be recognized that the terms “comprising,” “including,” and “having,” as used herein, are specifically intended to be read as open-ended terms of art.
This application claims the benefit of U.S. Provisional Patent Application No. 60/860,919 filed on Nov. 27, 2007 and entitled “A Method and System for the Automatic Backup of Computer Settings and User Preferences and the Restoration of the Same.” This application is related to U.S. patent application Ser. No. 11/506,386 filed on Aug. 18, 2006 and entitled “Data Backup Devices and Methods for Backing up Data” which is a divisional application of U.S. patent application Ser. No. 11/492,380 filed on Jul. 24, 2006 and entitled “Emulation Component for Data Backup Applications.” This application is also related to U.S. patent application Ser. No. 11/546,176 filed on Oct. 10, 2006 and entitled “Optical Disc Initiated Data Backup.” This application is also related to U.S. patent application Ser. No. 11/601,040 filed on Nov. 16, 2006 and entitled “Methods for Selectively Copying Data Files to, Networked Storage and Devices for Initiating the Same” which is also a Continuation-in-Part of U.S. patent application Ser. Nos. 11/506,386 and 11/546,176. Each of the aforementioned applications is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
60860919 | Nov 2006 | US |