Copy User Script

What does this program do?

This script will save all of a given user's documents plus selected preferences, or restores them by overwriting an existing user home directory.

IMPORTANT NOTE! This program makes changes that could potentially damage an existing account, or disable your computer. Use with caution.

What can I use it for?

Use this script to save a user's files when re-imaging a system. After the system has been installed, an account is created with the same user short name. Then use the copyuser script to restore all of the files to the new account.

Why not just use a backup program? Well, you could, but you may end up copying many files that are not desired if you're trying to give the user a fresh system. The script does this by attempting to copy just the files that are needed, leaving as many unneeded files behind as possible.

The entire contents of a folder are copied unless specific files are mentioned (i.e., folders are recursively copied).

HOME (e.g. /Users/janedoe)
  • All folders in home directory (Except Movies, Public, Sites)
  • Library
    • Application Support
    • Assistants
    • Audio
    • Calendars
    • ColorSync
    • Documentation
    • Favorites
    • FontCollections
    • Mail
    • Mozilla
    • Preferences
      • FontBook.plist
      • Explorer
        • Favorites.html
    • Printers
    • Sounds
    • StickiesDatabase
    • Safari
      • Bookmarks.plist

If you are willing to edit the script, the files and folders copied can be customized to taste.

What are the system requirements for this program?

This program must be run while logged in as a user that, naturally, has read permissions for the source, and write permissions for the destination. In addition, if you want to restore the network preferences .plist file the program must have root permissions to overwrite the existing file.

Mac OS 10.2.7 or higher required.


Since this script is changing low-level system values, you should quit any other applications that may be open before running this script.

Current Version: 050417

This version adds the ability to save/restore the network plist file. This feature must be used carefully if coming from a Jaguar machine -- if the preference file was created by a pre 10.2.7 machine it is incompatible with Panther.