Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

When starting up an iMac (Intel, Snow Leopard 10.6.6) the first time after being off for a while the Mac starts up from a system backup on an external drive rather than the internal drive as it should. (If the machine is shut down and restarted the internal drive is found and things start up as they should.) Is there a system log where error messages pertaining to this problem would be written (since until a start up disk is chosen there's really no place to write such messages)? I've looked around and can't seem to find anything. Though the disk checks out OK I suspect that this may be a hardware issue and if there are no error messages then I'd appreciate suggestions as to how to troubleshoot the problem.

share|improve this question
add comment

migrated from stackoverflow.com Mar 2 '11 at 12:23

This question came from our site for professional and enthusiast programmers.

1 Answer

up vote 3 down vote accepted

Basically, when you choose a volume to be your startup disk in the Startup Disk preference pane of System Preferences, that information is not stored in any actual files on any of the hard drive volumes (like it is in some less-inteligent operating systems like Windows BCD).

Instead, the IORegistry path to that startup device is stored in NVRAM (Non-Volitaile RAM). For example, nvram -p for me shows this amongst following results:

<array>
    <dict>
        <key>IOMatch</key>
        <dict>
            <key>IOProviderClass</key>
            <string>IOMedia</string>
            <key>IOPropertyMatch</key>
            <dict>
                <key>UUID</key>
                <string>41A14A68-12B3-4BA7-91ED-CA45CCD39B97</string>
            </dict>
        </dict>
        <key>BLLastBSDName</key>
        <string>disk3s5</string>
    </dict>
</array>

During the startup process, your Mac first consults the stored information in NVRAM to find the boot device. If it sees that the physical device is present (and bootable, or blessed), then it starts up from that device. If the device can't be found, or is found to not be in a bootable state (unblessed), then it will dynamically search all of the remaining volumes/partitions that can be found and will start up from the first bootable one it finds.

If there is no boot information stored in NVRAM, then the Mac will just repeat the same dynamic search process as before, and start up from the first bootable volume it finds. I'm not sure of the details of how the search method regards external hard drives, but generally I would think it would prefer internal drives over external, but I could be wrong. (All my experience over the last 15 years or so has only been with multiple internal bootable volumes).

The contents of NVRAM should remain valid unless one of 2 things occurs:

1) the user "Zaps the PRAM" as we say, by holding down the Command, Option, P, and R keys all at the same time immediately after you hear the initial "bong". Finding those keys down, the Mac clears the contents of NVRAM and then restarts; you can let go of those keys after you hear the second "bong".

2) for some reason, the NVRAM is loss due to a failure of the motherboard battery, perhaps...

You can see whether the contents of NVRAM and whether they've been lost in a couple of ways...

1) nvram -p in Terminal prints the contents of NVRAM

2) If you hold down the Option key at startup (immediately after the "bong") you should be presented with a list of all possible boot volumes. If no volume is initially selected, then no preference has been saved in NVRAM.

3) Similar to 2, the Startup Disk preference pane in System Preferences displays a list of volumes. If none is initially selected, no preference is saved in NVRAM. You may check to see if there is anything reported to Console.app (in /Applications/Utlities/) when you attempt to change a volume in the preference pane.

share|improve this answer
    
thanks NSGod - that filled in many gaps i'd never looked into regarding the boot process. the UUID that was in NVRAM was different from every current disk on the machine; must have slipped in during some backup/restore a while ago. not sure yet if fixing this loose end with solve my problem since things only started acting strange recently but i also found another recent issue that was affecting lots of things that may have joined with my ambiguous startup disk reference to mess things up. anyway, you gave me a good base to go from here. thanks! –  Zhora Mar 3 '11 at 22:25
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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