8 Replies Latest reply: Jan 11, 2010 4:21 PM by boomboom_uk
jlanter Level 1 Level 1 (0 points)
Dear kind, helpful, charitable, community of Apple users,

I'm been spinning my wheels on this for a week now and I'm totally stuck. I'm sufficiently desperate that I thought about offering a cash bounty via PayPal. (But I can't figure out an equitable way to do that so anyone who can help with this will win a virtual $1 "admin buck" and my undying gratitude.)

Here's what I'm trying to do: I have a Mac Mini running 10.6 server. I also have a 1T external USB hard drive. I want to permanently mount this external hard drive at /Users, so all user accounts will live on the external drive. I've been a sysadmin for 20 years, dabbling in Unix the whole time, and this seems to me like it should be a no-brainer.

Here's what I've tried: I added this line to /etc/fstab using vifs:

UUID=BDFE6D09-7483-3479-B37F-0BE15F9CBFBB /Users hfs rw

I've also tried a couple of variations, using different options (like LABEL and the volume label instead of the UUID, as well as explicit numeric values for fs_freq and fs_passno in the fifth and sixth fields. Regardless, when I run 'mount -av' I get:

GetMasterBlock: Error 2 opening UUID=BDFE6D09-7483-3479-B37F-0BE15F9CBFBB
GetMasterBlock: Error 2 opening UUID=BDFE6D09-7483-3479-B37F-0BE15F9CBFBB
mount_hfs: No such file or directory
mount: exec /System/Library/Filesystems/url.fs/Contents/Resources/mount_url for
/Network/Servers: No such file or directory

This is nonsense because the drive itself is formatted and partitioned and attached and on and visible in Disk Utility (though not mounted), and the /Users directory exists on the root. In fact, if I execute the following:

mount_hfs /dev/disk2s3 /Users

The volume mounts perfectly! Everything is peachy. Except, as soon as I log off twice, the volume unmounts for no explicable reason. Rebooting the system never automounts the volume like it's supposed to. Anytime automount (or mount, for that matter) fails, this is posted in the console error log:

10/9/09 6:38:59 PM com.apple.autofsd[91] automount: Mount for UUID=BDFE6D09-7483-3479-B37F-0BE15F9CBFBB has no path for the directory to mount

Oh, and yes, autodiskmount.plist is correct and exists in /Library/Preferences/SystemConfiguration.

So my questions are these:

1. Why does the darn think keep unmounting whenever someone logs off the server?
2. Why does mount -a fail, while mount_hfs works fine
3. What the heck am I supposed to do to get this thing to mount and stay mounted at /Users?

Thanks for taking the time to ever read this!

iMac, MacBook, Mac Mini, iPhone 3G, Mac OS X (10.6)
  • 1. Re: Bigtime Problems With Volume Mounts
    Strontium90 Level 4 Level 4 (3,140 points)
    That is because Firewire and USB drives do not mount until the Finder is active. This is the default behavior, meaning that server, booting to the login screen, will not mount "transitory bus" devices. However, this can be overcome. You need to run this command to alter the default behavior (note this is all one line):

    sudo defaults write /Library/Preferences/SystemConfiguration/autodiskmount AutomountDisksWithoutUserLogin -bool YES

    You must execute this with sudo as the preference file location is root owned.

    But unless I am misreading what you are trying to do, that will allow the drive to mount automatically during startup and be available to the system without a user session.

    As for a remap of the Users folder... If this is for network homes, then simply define the share point and define it to go to your external drive.

    Also, I should point out that the firewire drive has no hardware redundancy. Make sure you are planning a good backup solution. The loss of home folder data is never fun.

    Hope this helps
  • 2. Re: Bigtime Problems With Volume Mounts
    jlanter Level 1 Level 1 (0 points)
    Hi Strontium90,

    Thanks for the reply!

    That is because Firewire and USB drives do not mount until the Finder is active. This is the default behavior, meaning that server, booting to the login screen, will not mount "transitory bus" devices. However, this can be overcome. You need to run this command to alter the default behavior (note this is all one line):

    sudo defaults write /Library/Preferences/SystemConfiguration/autodiskmount AutomountDisksWithoutUserLogin -bool YES


    Well, unfortunately, that's what I meant in my original post when I said that, yes, the file /Library/Preferences/SystemConfiguration/autodiskmount.plist already exists. I have already executed the command you indicated, which creates the .plist file. And while this does seem to mount the drive right after a reboot, as I stated, the act of logging on and then off causes the drive to be unmounted. In fact, the as far as I can tell, no matter how the drive gets mounted, it is automatically unmounted at every logoff.

    But unless I am misreading what you are trying to do, that will allow the drive to mount automatically during startup and be available to the system without a user session.


    And it does... but it doesn't stay mounted. And it doesn't explain why mount -a fails with the errors I listed.

    As for a remap of the Users folder... If this is for network homes, then simply define the share point and define it to go to your external drive.


    It is indeed for network homes. Unfortunately, all of the defaults in server when creating accounts want to use /Users. I know I can change these defaults, but my experience with Apple is that successive operating system upgrades never respect or protect changes to defaults. Since all of the admin tools (and applications, and etc.) want to use /Users, I want to simply mount a larger partition at that point.

    Which, unfortunately, brings me back to my original three questions...
  • 3. Re: Bigtime Problems With Volume Mounts
    jlanter Level 1 Level 1 (0 points)
    bump

    For the curious, I've put about 10 hours into this over the course of the past week, and I've made absolutely no headway. Simply nothing makes any difference. I'm still looking for anyone who can tell me why 'mount -av' might generate the errors above, and why a USB volume unmounts every time somebody logs off the server.

  • 4. Re: Bigtime Problems With Volume Mounts
    jlanter Level 1 Level 1 (0 points)
    Well, I've wasted an entire Sunday fiddling with this, and about all I can conclude is that the mount subsystem and fstab in 10.6 is very badly broken. Is anyone out there able to get the 'mount' command to work correctly with entries in /etc/fstab on Snow Leopard sever?

    What I've been able to figure out is that the second option in /etc/fstab, the mount point, is either being parsed improperly or handled improperly. According to the example in the man page for fstab, I should be able to enter the value of 'none' as the mount point, which will cause the volume to mount under /Volumes. However, entering a 'none' in the second position (and yes, I'm using vifs), yields the following error:

    enterprise:/ root# mount -av -t hfs
    mount: realpath /none: No such file or directory


    If instead of 'none' I use a valid path that point to an actual directory, say /foo, I get this error:

    enterprise:/ root# mount -av -t hfs
    GetMasterBlock: Error 2 opening UUID=BDFE6D09-7483-3479-B37F-0BE15F9CBFBB
    GetMasterBlock: Error 2 opening UUID=BDFE6D09-7483-3479-B37F-0BE15F9CBFBB
    mount_hfs: No such file or directory


    Now, here's a bit o' weirdness: if I fire up the diskutility app and use the GUI to select the volume I'm trying to mount and click Mount, not only does the volume mount, but it mounts under /foo with no errors to the console!!! That means /etc/fstab is being parsed correctly by the diskutility app, which I would then guess uses neither 'mount' no 'mount_hfs'.

    But, this is all academic because I still have the problem that as soon as a user logs off the server, the volume unmounts. For a volume mounted as /Users, this is a disaster.
  • 5. Re: Bigtime Problems With Volume Mounts
    JabrTheHut Level 1 Level 1 (0 points)
    Hi,

    I was looking for something else, but I've encountered your problems with the mount command before. To get a command line mount working I've been using diskutil whenever I use a UUID instead of a device -

    diskutil mount /Users

    Use the command "man diskutil" to get more info.

    Basically, someone at Apple decided not to expand the mount command, and instead write a completely new command which can handle both new and standard BSD syntax. Why they didn't then use that as the new mount command I don't know... But what's running at system boot is the diskutil command.

    As to your real problem: I've not upgraded to 10.6 on my server yet, and I've not seen this problem in 10.5 - are you still getting problems with 10.6.2 unmounting /Users?
  • 6. Re: Bigtime Problems With Volume Mounts
    NitroNarc Level 1 Level 1 (0 points)
    I am not sure if the issue has been solved yet, however, maybe this helps.
    I have recently managed to have Users, Applications and Developer mounted at separate partitions.

    Forgive me if I am stating the obvious here, but you seem to be describing step 2 of a 3 step process:
    1) sudo ditto the files from /Users to /Volumes/Users, /Applications to /Volumes/Applications etc.
    2) use vifs to create/edit your fstab, referencing the correct UUIDs.

    Now, the error in your console log "0BE15F9CBFBB has no path for the directory to mount" seems to hint at that you have not yet performed step 3:

    3) +Boot into single user mode+
    (Restart and hold splat-s)

    +mount your Root partition in read/write mode:+
    /sbin/mount -uw /

    +move the copied /Applications and other directories out of the way+
    mv /Applications /Applications_BackUp
    mv /Users /Users_BackUp
    mv /Developer /Developer_BackUp

    +create the placeholders for mounting the new partitions to:+
    mkdir -p Applications
    mkdir -p Users
    mkdir -p Developer

    +fix permissions+
    chmod 755 Applications
    chmod 755 Users
    chmod 755 Developer

    When you reboot everything should be fine now, since there now are paths for the partitions to mount into.

    HTH
  • 7. Re: Bigtime Problems With Volume Mounts
    boomboom_uk Level 1 Level 1 (5 points)
    {quote:title=jlanter wrote:}


    Now, here's a bit o' weirdness: if I fire up the diskutility app and use the GUI to select the volume I'm trying to mount and click Mount, not only does the volume mount, but it mounts under /foo with no errors to the console!!!

    {quote}
  • 8. Re: Bigtime Problems With Volume Mounts
    boomboom_uk Level 1 Level 1 (5 points)
    {quote:title=jlanter wrote:}
    Now, here's a bit o' weirdness: if I fire up the diskutility app and use the GUI to select the volume I'm trying to mount and click Mount, not only does the volume mount, but it mounts under /foo with no errors to the console!!!

    {quote}

    Sounds similar to an issue we're having with a MacPro running SLS with an internal SATA disk (other than the boot drive) hosting the network user home directories for Open Directory users created in Workgroup Manager. If a network user logs in to their account, and then logs out on the MacPro, the network homes drive is unmounted. We have to log in with the local Admin account, go to Disk Utility, highlight the unmounted disk and click 'mount' before a different network user account can log in without error.

    We've reinstalled the 10.6 Server software, used different drives, and this is reproducible every time. We reported it to Apple, got a case ID, but have got nothing back. Now we don't even get a response from our emails.

    Excuse me if this is irrelevant here but it sounds perhaps pertinent?

    FWIW this exact setup worked perfectly in 10.4 and 10.5 server in our experience.