Contribute
Register

Restoring user accounts on new machine, source machine had separate drive for /Users

Status
Not open for further replies.
Joined
Feb 16, 2012
Messages
19
Motherboard
ASUS Z87 GRYPHON (currently inactive for rebuild)
CPU
i5-4670K
Graphics
Nvidia GeForce GTX 750 Ti
Mac
  1. Mac mini
Classic Mac
  1. 0
Mobile Phone
  1. iOS
I think I have painted myself into a corner. I'm building a new machine and have come to the point where I need to move my users' home folders to the new machine. Both machines have /Users on a 1TB hard disk and boot from a 120GB SSD containing all other data. When I try to transfer with Migration Assistant (MA) both machines get confused. After some reading and experimentation, I think the issue is that Migration Assistant cannot handle the separate disk /Users. Also, Time Machine will not see /Users (which is why I speculate MA cannot, either). I have an installation account called "install" with home folder on the source machine SSD, and I can easily recreate that situation on the destination (new) machine. I also have a Carbon Copy Cloner (CCC) backup of the /Users folder from the source (old) machine. My reading is discouraging for moving over the home folders from the CCC backup or over the net using Mac tools. Am I missing something here? Back in my FreeBSD days, I just copied each user's passwd file line to the new machine, did some group file fixups, and things were just fine. The MA method worked fine for quite some number of years until I split out my /Users when I started to use SSDs. Any suggestions?
 
More information: Both machines have users named "install" whose uid (don't know the correct OS X sanctioned name) is 501. The other three ordinary users' uid starts at 502 and increases by one sequentially. This situation is entirely by happenstance. Recently, when I set up a new machine, the user created during setup I have named "install". Lucky, I guess, because I certainly did not appreciate the significance of that.

Although I was quite aware of the importance of keeping the uid number unique when administering Unix machines, I thought Apple did some software voodoo because they wanted to hide the Unix roots of OS X. However, they seem to have just hidden things and made the documentation hard to find rather than replacing them completely.
 
POSSIBLE SOLUTION: Since I can mount the CCC backup of my old machine's /Users folder on my new machine, and I know the UID values for the users whose home directories are in that folder, I should be able to just create "new users" with the appropriate UID values and point their home directories to the correct folders on the mounted CCC backup.

Always before, when I created a new user, I just took the default values except for the user name(s). I created a test account last night with arbitrary values for UID, etc. So I think this should work. However, I got a massive leg cramp (side effect of new medication, I think) before I could test my hypothesis. I will post results when I am able to finish the tests.
 
Pretty sure you'll \have to resort to the command prompt to reunite your /Users data with your boot drive. I'm on a system with separate boot and /Users SSDs (and have had them separated for a long time). I was able to use graphical tools to separate them, but I can't think of a way to reunite them without the command line.

Your outlined solution sounds like it should work ok.
 
Have you had any luck with this? I'm in a similar situation. I have an SSD with the /Users directory on a separate hard drive. But I'm wanting to transfer everything on the SSD to the same Drive (and Preferably partition as the /Users folder)
 
I had to use command line to setup fstab and get permissions and ownership correctly setup, so you are right. That part was not a problem, but getting the new Yosemite machine to recognize the separate /Users as a partition with user directories (and recovering the user information) was the issue. I think I just have to create new users using the old machine's information. This is the GUI equivalent of my old Unix way of just copy and pasting an old machine user's line into /etc/passwd on the new machine, then setting the group correctly in /etc/group.
 
You could certainly recover the information by using CCC to clone your SSD onto the mechanical /Users (being careful to select the do not delete information already on the destination drive option). But then you have to make the mechanical drive bootable with installation of Chimera and MultiBeast or Clover. Sounds like a lot of work. i have tested the feasibility of my proposed solution, but have been wrapped up in family obligations for the holiday. I plan on doing the actual setup on Monday after testing that the new machine is set up properly to use iMessage (my test that the installation is "good", for some meaning of "good".)

For other people reading this thread, the sequence is as follows:

Make the mount point and prepare to mount the new /Users as described in the original recipe to split out the separate /Users. This will involve the command line using either single user mode or as the root user (have to enable the root user first, probably). Test the mount point stuff by rebooting and verifying that the new /Users shows up. Logging in as root makes this easy.

The second step involves making the connections between your users' home directories and the actual users. This is the sticking point. My feasibility tests indicate that this should work by just creating new users with the same UID as they had on the old machine. The UIDs can be found with the command line by changing to the /Users directory on the old machine and issuing the command:

ls -ln

The third column will be the UID and the last column will be the username (short name in OS X parlance).
It helps to print this out to have it available when working on the new machine.

Then you can do the second step (above) on the new machine.

I will make a new guide for separate /Users after all this is verified.
 
Latest report: On the surface, the procedure I outlined worked. However, the sequence of (1) creating the new users, and (2) mounting the clone disk for the first time seems to be important. When I mount the disk, then create a new user, the contents of, e.g., the Desktop folder (and other "standard folders") seem to have been deleted. This is possibly because the creation of the new user seeds the home directory with new "standard folders", overwriting the folders cloned from my old machine. I have to also test the possibility that the way I have been doing CCC backups may have messed up some permissions so that files are not "seen", not because CCC is misbehaving, but it may have been faithfully cloning folders on which the permissions were already messed up. I am in contact with Bombich Software (CCC) to seek their help and ideas. I will be delayed a few days while I sort this out.

Edit: Actually, the method seems to have worked exactly as predicted (apparent problems due to misunderstandings on my part). After setting up the mount point and making changes to /etc/fstab as originally described in http://lnx2mac.blogspot.com/2010/09/moving-os-x-users-to-separate-partition.html, shutdown, cable up the drive if that has not already been done. Boot, create the new users whose home folders are present on the drive, reboot. I will write up a guide within the next few days.
 
Last edited:
OK, I think Apple threw us a curve ball: Installed Yosemite on SSD, recovered my users from the /Users disk, then tested stability for several weeks. At that point I was checking the App Store for any updates of purchased software and noticed a minor update. Described as iTunes, etc, Security update, etc. Installed the update, and rebooted. Long story short: the Users disk is now mounted as /Volumes/Users. This means the home directories do not work correctly. The explanation I have come to believe is that Apple has eliminated automatically mounting disks based on /etc/fstab

Now we have always been warned by people (most of whom have little or no experience with real Unix, I suspect) that Apple can take away /etc/fstab mounts at any time. While acknowledging this was true, I did not really believe they would do it. Guess I was wrong.

Please correct me if I am wrong about Apple's apparent change of policy or if there is an alternative way to automatically mount a disk on the /Users directory in the Unix sense of this action.

In any case, I reinstalled on a (rotational) hard disk large enough to hold a complete install. Bummer: it really boots slowly.
 
My Users partition is on a separate drive mounted as /Users using /etc/fstab (has been since I started Hackintoshing with OS X Lion), so the capability definitely hasn't been taken away by Apple. Here's my fstab entry:

Code:
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx    /Users    hfs    rw,auto    0 2

(substitute the partition UUID - NOT the volume UUID).

I find that using UUID rather than the device name (e.g. disk0s2, disk1s2) provides more consistent results, as sometimes drives inexplicably change device names across reboots. The UUID for a volume or a partition is always the same (that is, unless the drive is repartitioned or reformatted).
 
Status
Not open for further replies.
Back
Top