Changing a Mac user's UID without breaking MWireless connectivity

Body

Summary

In an effort to use the correct UID when users have an NFS mount on their Mac computer, we change the user's UID.  This will break MWireless connectivity for that user account on the Mac if not done correctly.  The UID change must happen before the user logs into the account.

Environment

macOS

Directions

 Note
The correct UID to use below can be found by using this command in the macOS or Linux terminal.  Replace UNIQNAME with the user's uniqname.
ldapsearch -H ldap://ldap.umich.edu -Z -W -b "dc=umich,dc=edu" -D "uid=your uniqname,ou=People,dc=umich,dc=edu" "uid=UNIQNAME" |grep ^uidNumber|cut -c 12-
  1. Steps to take if the user account already exists.  If it does not, skip to step 2.
    • Back up or move the user's home folder to another location on the disk or an external drive.
    • Delete the user account in the System Preferences GUI, making sure to delete the home folder from /Users.
  2. In the System Preferences GUI menu, go to "Users & Groups".
  3. Unlock the menu and then click on the + button to add a new user. 
    1. If appropriate, make them an administrator and use their full name and uniqname to fill out the form.
    2. Set the password to a temporary one, or if the user is in the room have them set it to match their UMich account.  This will be verified by the login prompts when they log in for the first time.
  4. Once the user shows up in the list, right click on them and select "Advanced Options".  Change the UID to match their UMich UID.
  5. If the user had data you needed to move, you can move it back into their home directory and use chown to give their new account ownership of the files.
  6. Have the user log in to the account.  Verify that they change the password to match their UMich password and that MWireless works.

Additional notes

This should only affect Mac desktops, because NFS automount configurations are basically non-existent on Mac laptops.

Setting the UID must happen in the GUI and before the user logs in.  If you use "dscl" in terminal it will not work.

Details

Details

Article ID: 7421
Created
Wed 3/16/22 9:12 AM
Modified
Mon 11/4/24 1:28 PM