Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

When trying to shutdown or restart my Mac it just keep on showing the spinning wheel with the white background. I have waited for at least 15 minutes but nothing happens.

When safe booting I can successfully shutdown OS X so I guess it is probably caused by a kernel extension.

How can I find out what is hanging the shutdown process?


Result of doing kextstat -kl | awk ' !/apple/ { print $6 } ':

com.rogueamoeba.InstantOn
com.globaldelight.driver.BoomDevice
com.intel.kext.intelhaxm
com.rogueamoeba.InstantOnCore
com.Cycling74.driver.Soundflower
org.pqrs.driver.KeyRemap4MacBook
foo.tun
foo.tap
org.virtualbox.kext.VBoxDrv
org.virtualbox.kext.VBoxUSB
org.virtualbox.kext.VBoxNetFlt
org.virtualbox.kext.VBoxNetAdp
share|improve this question
    
@Buscar웃 how do I "use the wake reason"? I don't understand what you mean. Yes I'm using Parallels. –  Tyilo Sep 20 '13 at 7:33
    
@Buscar웃 Nope. I have removed it from the menubar. –  Tyilo Sep 20 '13 at 9:03
    
ok, you can go true the shutdown logs and see who is making problems, also look in the /private/var/log/shutdown_monitor.log (it should be empty) –  Buscar웃 Sep 20 '13 at 9:11
    
The spotlight was the problem yesterday, not today. –  Buscar웃 Sep 20 '13 at 9:12
1  
Try starting up in verbose mode -- as far as I remember, this prints diagnostic information on shutdown as well as boot. –  Ashley Sep 20 '13 at 12:37
show 2 more comments

1 Answer 1

Does it also happen when you log out? Did you already check system.log?

Is there a logout hook (sudo defaults read com.apple.loginwindow LogoutHook)? I guess not though, because normally when a logout hook does not terminate, there is a solid light gray screen without any process indicator.

You could try unloading the kernel extensions with sudo kextunload -b $bundleid before restarting. Or just move the kext bundles outside /System/Library/Extensions/ and restart once so the kernel extensions won't be loaded.

You could also try terminating different processes before logging out, or for example run for f in {~,}/Library/Launch{Agents,Daemons}/*.plist; do launchctl unload $f; done.

share|improve this answer
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.