6

My work MBP has been set up as a standalone device, but now needs to join the corporate network.

Is there a way to copy my entire user profile (apps, config, terminal settings etc) to a new device (the same device, having been wiped) with a different username? (e.g. domain\dunc)

The new user account will already be created on the "new" device, and I don't have the ability to change this.

  • This needs a bit more clarification now that you're joining a domain. There are user preferences and system preferences; the latter may be set by your admin which you cannot change. Are you looking to just change your own personalizations or even change the system-wide settings? – Allan Jan 14 at 16:45
  • Thanks Allan. Excuse the ambiguity - I've never used a domain-joined Mac. I will have full control over the System Preferences even when the device is on the domain. I'm looking to copy as much over as possible, basically - ideally I'd like to have the Mac set up in exactly the way it is now, just on the corporate network. – dunc Jan 14 at 17:47
  • 2
    Time Machine and Migration Assistance may get you to where you need to go, but there's also a utility on GitHub that's supposed to do exactly this. I haven't had a chance to test this out yet. – Allan Jan 14 at 17:51
  • That's a great link @Allan, thank you. Sounds like all I would need to do is install the applications I use then restore my preferences using that utility? Is there anything you can think of that may be missing after I did those 2 things? You should put this in as an answer by the way, it's certainly the closest I've had to "correct" so far. – dunc Jan 15 at 9:02
  • 2
    I've been looking for a similar utility (though not high on my priority list) and have been contemplating how I can automate the install of 3rd party software via bash and the saving/migration of settings via cloud when I stumbled on this. I didn't post it as an answer because I just haven't had the time to go and give it a full test; though it appears to be actively maintained as of only 4 months ago. This is why I didn't write it as an answer - I didn't have first hand knowledge of how it performed. – Allan Jan 15 at 12:06
1

I have done the same thing a number of time for the same reasons.

In what follows I assume you are running macOS High Sierra or later. If that were not the case, some paths and preference pane options might be different.

What I have found is that using the same Apple ID on both the old and the new machine/install already goes a long way. Just make sure to select Mail, Contacts, Calendars, Reminders, Safari, Notes and especially Keychains in System Preferences/iCloud on both machines. If desired you can enable the other items as well like iCLoud Drive, Photos etc.

This way you will be able to migrate your passwords, Safari bookmarks & history etc. Using the same Apple ID you will be able to re-download all apps you bought from the App Store as well.

If you are using Dropbox or similar, install those as well on the new machine/install. This way any file stored there will be available on the new box as well.

What's still missing is:

  • Documents (the ones not in iCloud Drive, Dropbox etc.)
  • Preferences
  • SSH keys
  • Any app not bought from the App Store
  • Any system-wide extension, VPN profile and the like.

To bring those over, what I suggest is the following. Log onto your old machine/install and backup (to an external drive or USB stick):

  • Your home directory (/Users/"username")
  • /Library
  • /Users/Shared (if not empty)

A Time Machine backup would be more complete and definitely preferable.

On the new machine/install, under your new account:

  • Re-install your old apps (re-download them if necessary).
  • Copy the directories Application Support, Fonts and Preferences from "your old home directory"/Library/ to "your new home directory"/Library/
  • Do the same with any app-specific directory you find there.
  • Display hidden files in your old home directory using the Finder (Command + Shift + .) and copy .ssh, .local and any app specific files and directories over (e.g. .vim/ and .vimrc).
  • Copy the content of the old /Users/Shared to the new machine.
  • Copy any file or directory over from the old /Library folder to the new one. This typically involves looking inside Application Support, Extensions and Fonts in there.

Application-secific configs are typically stored in your home directory, inside Library/Preferences and/or Library/Application Support. To copy those over you have two choices:

  • Copy the whole Library/Preferences and Library/Application Support directories from your old home to the new account.
  • Selectively copy the files and directories from those two locations over to the new account.

My preferences is for the latter option as I like to keep things clean.

Some notes and warnings: messing with /Users/Shared and especially /Library/Extensions is not usually necessary. Please do it only if you know what you are doing as you could mess up your new machine.

For the next time, you might want to look into automating the setup of a new macOS machine. There are a number of ways to do that. One I use if having your own dotfiles.

Most of the files you will be copying over using the procedure outlined above are not tied to your username. There are a handful of exceptions however (mostly your shell config and history).

If you are familiar with the Terminal you can use grep to find them (e.g. find $HOME -exec grep $USER {} \; -print on the old machine when logged in as your old account).

Finally, the list above is probably not complete. However you should be able to adapt it to cover your needs.

Good luck!

  • Thanks for your effort here. How would I cater for app-specific config? – dunc Jan 21 at 11:37
  • App-specific configs are stored in ~/Library/Preferences and/or ~/Library/Application Support. You can copy those over. Answer updated. – fpierfed Jan 25 at 11:32
0

Migration Assistant is built for situations just like this. It will give you the option to transfer over just one specific user. Here's Apple's article on it which is fairly comprehensive.

Migration Assistant probably won't give you the option to rename your username though. Fortunately it's not too hard - here's a guide on it.. Make sure that you're logged out when you do these steps & that you change both the username & the home folder. If you only change one there's a good chance you won't be able to log into that account again.

  • Thanks for your answer. Unfortunately, I don't think this will work. The user account will already exist on the new Mac, as it will be a corporate build imaged by another department in the organisation. As such, the Mac will be presented to me with a domain-joined user account like domain\dunc and I'm trying to move my existing user account (from my existing Mac) in to this profile. – dunc Jan 17 at 8:11

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.