PDA

View Full Version : MBA Replaced Weird Boot Screen Question




TheRiseofTheFal
Sep 11, 2009, 01:59 PM
Hey everyone...I had a problem recently where my bezel was falling off and I had problems with keyboard itself. My Applecare more than covered everything and I suspect they may have even given me a refurb Rev. A as a replacement. I am updated to 10.6.1 but everytime the computer restarts I get this weird black screen instead of the standard grey, I was just curious if someone could elucidate what is going on thanks!



stoconnell
Sep 11, 2009, 03:22 PM
That kind of looks like you are booting in verbose mode rather as that looks like standard kernel boot messages that are normally hidden.

The machine properly boots, etc. Correct?

What is the output from:

sysctl kern.bootargs

I only have access to Leopard at the moment, but I imagine this would be were a permanent verbose/debug type argument would be stored.

TheRiseofTheFal
Sep 11, 2009, 05:20 PM
yeah it makes the standard chime and boots to a grey screen which then turns to black and it seems to go through this debug process that freaks out if an external hard drive is connected, but even if an external is not connected it still goes through this process. Obviously it only affects the computer on startup but is there cause for concern any reason i should restore to get rid of it?

stoconnell
Sep 11, 2009, 06:03 PM
yeah it makes the standard chime and boots to a grey screen which then turns to black and it seems to go through this debug process that freaks out if an external hard drive is connected, but even if an external is not connected it still goes through this process. Obviously it only affects the computer on startup but is there cause for concern any reason i should restore to get rid of it?

I suspect it ended up as permanent boot option some how. Do you have an /etc/sysctl.conf file? or what is the output of

/usr/sbin/sysctl -a | grep boot

From within a terminal session?

Scottsdale
Sep 12, 2009, 12:51 AM
I don't know this for certain, actually this is a long stretch... Isn't that trying to run a 64-bit kernel? The MBA doesn't do that by Apple's selections or even with 6-4 boot sequence. I think there is a problem there. Did you go to one of these sites and read about 64-bit or anything and try it?

Just wondering if that may be the reason...

stoconnell
Sep 12, 2009, 01:05 AM
Good catch Scottsdale, it definitely is booting the 64-bit kernel. Perhaps booting with the 3 and 2 held down to select the 32-bit kernel might change the behavior. Digging around, it looks like the default kernel is set by

/Library/Preferences/SystemConfiguration/com.apple.Boot.plist

If you want 64 bit, you change:

<key>Kernel Flags</key>
<string></string>

To read:
<key>Kernel Flags</key>
<string>arch=x86_64</string>

Bobjob186
Sep 12, 2009, 01:13 AM
looks like verbose mode to me. this sometimes is fixed with a pram reset, if it doesn't your apple "genius" tried to do something fancy with a disk image of OS X because let's be real, who wants to use a super drive to reinstall the OS.

Complete solution = Reformat = Works like a charm.

We used to use crazy methods to save time with reformats when I worked at the store, this stuff happens all the time.

stoconnell
Sep 12, 2009, 01:26 AM
looks like verbose mode to me. this sometimes is fixed with a pram reset, if it doesn't your apple "genius" tried to do something fancy with a disk image of OS X because let's be real, who wants to use a super drive to reinstall the OS.

Complete solution = Reformat = Works like a charm.

We used to use crazy methods to save time with reformats when I worked at the store, this stuff happens all the time.

Is it possible that the verbose flag is simply set in com.apple.Boot.plist or /etc/sysctl.conf?

To revisit an earlier comment, you can use systemsetup command to change the kernel arch

http://support.apple.com/kb/HT3773

TheRiseofTheFal
Sep 12, 2009, 09:48 AM
I suspect it ended up as permanent boot option some how. Do you have an /etc/sysctl.conf file? or what is the output of

/usr/sbin/sysctl -a | grep boot

From within a terminal session?

when I use /usr/sbin/sysctl -a | grep boot I get

kern.netboot = 0
kern.safeboot = 0
kern.boottime: { sec = 1252694820, usec = 0 } Fri Sep 11 14:47:00 2009
kern.netboot: 0
kern.safeboot: 0
kern.bootsignature: 2fb9fc10e5b4bb06f62c38b01bd9836a433897f8
kern.bootargs: -v


I don't know what it means but does that help at all in trying to figure out what is going on? Should I try the commands that apple recommends to boot in 32 bit mode and go from there?

Scottsdale
Sep 12, 2009, 10:18 AM
Good catch Scottsdale, it definitely is booting the 64-bit kernel. Perhaps booting with the 3 and 2 held down to select the 32-bit kernel might change the behavior. Digging around, it looks like the default kernel is set by

/Library/Preferences/SystemConfiguration/com.apple.Boot.plist

If you want 64 bit, you change:

<key>Kernel Flags</key>
<string></string>

To read:
<key>Kernel Flags</key>
<string>arch=x86_64</string>

I guess the OP doesn't want to try this or say if messing with 64-bit kernel. I don't know for sure because I haven't seen it but that's where I would start.

TheRiseofTheFal
Sep 12, 2009, 10:21 AM
I guess the OP doesn't want to try this or say if messing with 64-bit kernel. I don't know for sure because I haven't seen it but that's where I would start.

I would certainly take your advice scottsdale as I have seen how much help you've given everyone else, I couldn't begin to tell you what 64 bit would mean to me, but do you think I should try what you recommended for 32 bit?

milbournosphere
Sep 12, 2009, 11:56 AM
I do believe that this may be the kernel boot argument that is giving you the trouble:
kern.bootargs: -v

I would remove that flag and see if that works. If it doesn't work, just tell your friends that you're a l33t HaXoR if they ever see your machine boot;)

I have no idea why it would be booting in 64 bit mode. Perhaps you could set a kernel flag in /Library/Preferences/SystemConfiguration/com.apple.Boot.plist:
<key>Kernel Flags</key>
<string>arch=x86_32</string>

Hope this helps.

stoconnell
Sep 12, 2009, 12:32 PM
when I use /usr/sbin/sysctl -a | grep boot I get

kern.netboot = 0
kern.safeboot = 0
kern.boottime: { sec = 1252694820, usec = 0 } Fri Sep 11 14:47:00 2009
kern.netboot: 0
kern.safeboot: 0
kern.bootsignature: 2fb9fc10e5b4bb06f62c38b01bd9836a433897f8
kern.bootargs: -v


I don't know what it means but does that help at all in trying to figure out what is going on? Should I try the commands that apple recommends to boot in 32 bit mode and go from there?

The -v for kern.bootargs is what's causing the behavior. The only question is where is that getting pulled from? Most likely either:

/etc/sysctl.conf

or

/Library/Preferences/SystemConfiguration/com.apple.Boot.plist

I don't think just running /usr/sbin/sysctl -w kern.bootargs="" will help as that is likely being read in on boot for it to be persistent across reboots. You will need to use a texteditor to change these files along with sudo.

Depending on your comfort level with being on the cutting edge, running 64 bit mode does have the potential to cause issues with third party kernel extensions (which are more likely to be 32-bit) like VPN software, etc. To revert to 32 bit mode, run

sudo systemsetup -setkernelbootarchitecture i386

or edit com.apple.Boot.plist (above) with a text editor and change arch=x86_64 to arch=i386.

ayeying
Sep 12, 2009, 01:34 PM
Hrm. The 64-bit mode you see means you're running a 64-bit EFI. It happens on Leopard also.

alphaod
Sep 12, 2009, 04:52 PM
Just reset your PRAM; everything will go back to normal.

As far as 64-bit is concerned, the Air only has 2GB of RAM.

stoconnell
Sep 12, 2009, 05:01 PM
I am a bit confused as to how zapping the PRAM will clear the verbose boot setting. Everything that I have read suggests that kernel boot parameters are not stored in PRAM (http://support.apple.com/kb/HT1242). I really think to clear the verbose boot setting, the OP needs to look at editing either (or both) /etc/sysctl.conf or /Libary/Preferences/SystemConfiguration/com.apple.Boot.plist to remove the -v flag being passed at boot time.

alphaod
Sep 12, 2009, 08:30 PM
I am a bit confused as to how zapping the PRAM will clear the verbose boot setting. Everything that I have read suggests that kernel boot parameters are not stored in PRAM (http://support.apple.com/kb/HT1242). I really think to clear the verbose boot setting, the OP needs to look at editing either (or both) /etc/sysctl.conf or /Libary/Preferences/SystemConfiguration/com.apple.Boot.plist to remove the -v flag being passed at boot time.

Resetting the PRAM always clears the NVRAM.

stoconnell
Sep 12, 2009, 09:26 PM
Resetting the PRAM always clears the NVRAM.

OK, but the -v flag being passed to the kernel to trigger a verbose boot isn't stored in NVRAM (at least as near as I could tell). That is why I am questioning the utility. I am quite happy to be proven wrong :)