Y, con suerte, la edición final: Después de actualizar a Mountain Lion, el problema parece solucionado, esperemos que de forma permanente.
Edición final: El problema no ocurre todo el tiempo, a veces tengo que esperar varios días para que ocurra. Así que es difícil de probar en diferentes condiciones (es decir, el modo seguro o con algún software desactivado) y he decidido que no vale la pena pasar días probando diferentes condiciones con el fin de en arreglar esto. Las sugerencias de Graham Perrin fueron las más útiles para encontrar información específica sobre problemas de reinicio/reinicio, que no se encuentran en los registros de uso general.
Algunas entradas de registro están en Editar en la parte inferior:
MacBook Pro de 15 pulgadas de mediados de 2010, con OS X 10.7.4. A veces, al tratar de reiniciar o apagar la máquina, no funciona - la pantalla se vuelve gris, la rueda giratoria muestra, pero la máquina no se apaga por lo que después de varios minutos tengo que apagar la máquina pulsando el botón de encendido.
No ocurre siempre, y no puedo relacionar ningún software utilizado durante la sesión con el problema. De hecho, al probar esto, a veces ocurría cuando intentaba apagar la máquina inmediatamente después de iniciarla.
¿Cómo comprobar qué es lo que impide el apagado/reinicio graceful? Supongo que tengo que mirar en algunos archivos de registro, pero no estoy seguro de cuáles y qué buscar.
Edición: Añadí la configuración verbosa de inicio/apagado en la nvram como sugirió Graham Perrin, y finalmente la máquina se quedó atascada al reiniciar. Vi algunas entradas verbose en la pantalla y después de reiniciar las encontré en /var/log/launchd-shutdown.log. Parece que WindowServer puede tener algo que ver. Abajo está el final de ese archivo de registro con las 3 primeras columnas eliminadas (la primera tenía algunos números enteros crecientes, la segunda tenía entradas de "1" y la tercera -- "com.apple.launchd"):
234 com.apple.WindowServer Dispatching kevent callback.
234 com.apple.WindowServer Job has not died after being killed 2 seconds ago. Simulating exit.
234 com.apple.WindowServer Dispatching kevent callback.
234 com.apple.WindowServer EVFILT_PROC event for job.
1 com.apple.launchd KEVENT[0]: udata = 0x107827a90 data = 0x0 ident = 234 filter = EVFILT_PROC flags= 0x0 fflags = NOTE_EXIT
234 com.apple.WindowServer Reaping
234 com.apple.WindowServer Simulated exit: <rdar://problem/9359725>
234 com.apple.WindowServer Exited 22.016701 seconds after the first signal was sent
0 com.apple.WindowServer Exited while shutdown in progress. Processes remaining: 0/0
0 com.apple.WindowServer Job was last to exit during shutdown of: System.
0 com.apple.WindowServer Total rusage: utime 0.000000 stime 0.000000 maxrss 0 ixrss 0 idrss 0 isrss 0 minflt 0 majflt 0 nswap 0 inblock 0 oublock 0 msgsnd 0 msgrcv 0 nsignals 0 nvcsw 0 nivcsw 0
0 com.apple.WindowServer Closing receive right for com.apple.windowserver.active
0 com.apple.WindowServer Mach service deleted: com.apple.windowserver.active
0 com.apple.WindowServer Closing receive right for com.apple.windowserver
0 com.apple.WindowServer Mach service deleted: com.apple.windowserver
0 com.apple.WindowServer Removed
1 com.apple.launchd System: No submanagers left.
1 com.apple.launchd System: Removing.
1 com.apple.launchd System: Removing job manager.
1 com.apple.launchd System: Userspace shutdown finished at: Wed Aug 1 08:53:12 2012
1 com.apple.launchd System: Userspace shutdown took approximately 22 seconds.
1 com.apple.launchd VM statistics (now - orig): Free: 28472 Active: -21833 Inactive: -1038 Reactivations: 0 PageIns: 25 PageOuts: 0 Faults: 1654 COW-Faults: 335 Purgeable: -849 Purges: 0
1 com.apple.launchd System: Stray process at shutdown: PID 234 PPID 1 PGID 234 WindowServer
1 com.apple.launchd System: About to call: reboot(RB_HALT).