1. Field of the Invention
The present invention relates generally to multi-user computer systems and, more particularly, user account management for multi-user computer systems.
2. Description of the Related Art
Multi-user computer systems allow a single computer to support one of a number of different users. In particular, when a user desires to utilize the computer system, the computer system requires that the user login to the computer system. The login process enables the computer system to determine whether the user that is requesting to use the computer system is able to authenticate themselves as an authorized user of the computer system. If the login is successful, the user is able to use the computer system to gain access to various resources either stored locally or on a network to which the computer system is coupled as permitted by a user account. For each user account, the multi-user computer system can provide a separate environment such that different preferences, directories etc. are used for different users such that restrictions on accessing other user's personal space can be imposed.
Conventionally, a user account is stored locally within the multi-user computer and a user's personal space (e.g., user directory) for the user is also stored locally. Hence, one problem associated with such conventional approaches is that the user accounts and user directories are provided on local storage of the multi-user computer. While such provides for multi-user support, the user accounts are thus specific to the multi-user computer and stored thereon. Consequently, the user accounts are not portable. For example, a conventional operating system, such as Mac OS X, provides for multi-user support but all user accounts that are created are stored locally in a netinfo database and also have a default user directories hosted on local storage.
A few sophisticated users have modified operation of existing operating systems, such as Mac OS X, to provide some portability to their user account from a work computer to a home computer. This requires specialized software tools to manipulate and modify the data structures for a user account in a database (e.g., netinfo database). Armed with such specialized tools, a very sophisticated user would first establish a local user account on the multi-user computer (work computer), and then use the specialized tools to edit the location of the default user directory, such that it is made to reside on an external storage device. Then, at the other location where a multi-user computer (home computer) is to be used by the same user, a user account would be again established on such a machine, and then using special tools to render the user identifier the same as that which the work computer used when creating the user account at the work computer. These modifications to the multi-user computers are not intended modifications and thus tend to compromise the reliability of the operation of the multi-user computers. Further, the required specialized tools, although available, are neither well documented nor user-friendly.
Thus, there is a need for improved techniques to enable user accounts to be portable such that a user can carry their user account with them and login to any multi-user computer system that supports portable user accounts.