How do I use AFP shares as user homes in multiuser mode?

 

Problem Summary:

Default OpenDirectory configuration does not allow two user-homes to be mounted from the same share-point simultaneously.

 

Problem Description:

Let's imagine we have two network users - netuser1 and netuser2.

The default OpenDirectory configuration is only one share-point with many subdirectories that are actually user-homes.

So, the AFP mounting URLs look like this:

afp://<host-name>/share-point/netuser1

afp://<host-name>/share-point/netuser2

 

When netuser1 logs in, OSX mounts share-point for netuser1. So, netuser1 becomes owner of share-point directory.

When netuser2 tries to log in, the share-point is alredy owned by netuser1, so there is no way to mount a home directory

for netuser2.

 

Workaround Summary:

Each user should have their own share-point.

 

Workaround Description:

  • Create a directory for share-points under /Users directory, e.g. "/Users/NetUsers".

    IMPORTANT NOTE: NetUsers directory must not be a share-point.
  • Open "Server.app -> File Sharing".
  • Create share-point for each existing user, e.g.:

     "netuser1_sp" at the path /Users/NetUsers/netuser1_sp
     "netuser2_sp" at the path /Users/NetUsers/netuser2_sp
  • Edit properties of each new share-point and set flag "Make available for home directories".
  • Open "Work Group Manager->Accounts" and select "Home" tab.

    NOTE: You must be authenticated as directory administrator.
  • Select each user account from the left-side list and choose unique share-point for each user.  For example:

    for netuser1 - afp://<host-name>/netuser1_sp
    for netuser2 - afp://<host-name>/netuser2_sp

    Also for each user, click "Create Home Now" and then "Save".
  • Make sure that user homes are created at the right paths, like this:

    /Users/NetUsers/netuser1_sp/netuser1
    /Users/NetUsers/netuser2_sp/netuser2
  • Open "Server.app -> Users", check "Advanced Options" for each account and make sure that "Home Directory" looks like this:

     /Network/Servers/<host-name>/Users/NetUsers/netuser1_sp/netuser1
     /Network/Servers/<host-name>/Users/NetUsers/netuser2_sp/netuser2
  • Reboot the server.