Cómo saber quién reinició un servidor Windows (1074 y 6008)

Cómo saber quién reinició un servidor Windows puede parecer algo sencillo, pero más de una vez me he encontrado con la típica situación:

“El servidor se ha reiniciado… pero nadie sabe quién lo hizo.”

Cuando un servidor Windows se reinicia o se apaga de forma inesperada, lo primero que suelo hacer es ir directo al Visor de Eventos. Ahí es donde realmente está la información útil.

Eventos de reinicio y apagado que debemos revisar

Estos son los principales Event ID relacionados con reinicios en Windows Server:

Evento ID 6005
“El servicio de registro de eventos se inició.”
Indica el inicio del sistema.

Evento ID 6006
“El servicio de registro de eventos se detuvo.”
Se produce durante un apagado correcto.

Evento ID 6008
“El cierre del sistema anterior fue inesperado.”
Indica que el sistema no se cerró correctamente.

Evento ID 6009
Muestra la versión del sistema operativo detectado en el arranque.

Evento ID 6013
Indica el tiempo de actividad (uptime) del sistema.

Evento ID 1074
“El proceso X ha iniciado el reinicio/apagado en nombre del usuario Y.”
Este es el más importante cuando queremos saber quién reinició el servidor.

Evento ID 1076
Registra el motivo que un usuario con privilegios indicó tras un apagado inesperado.

Microsoft documenta estos eventos en su documentación oficial:
https://learn.microsoft.com/en-us/windows-server/

Importante

Si el servidor se apaga por un fallo eléctrico o corte de energía, es posible que no se registre un evento de apagado correcto (6006).

Cómo saber el tiempo de arranque del sistema

Para comprobar cuándo arrancó el sistema:

Si el sistema operativo está en inglés:

systeminfo | find /i "System Boot Time"

Si está en español:

systeminfo | find /i "Tiempo de arranque del sistema"

Esto nos permite verificar rápidamente la última hora de inicio sin entrar al visor de eventos.

Ejemplo real de investigación

Imagina que un lunes llegas y te dicen que el servidor se reinició durante el fin de semana.

Lo primero que haría sería:

  1. Abrir el Visor de Eventos.
  2. Filtrar por los eventos 1074 y 6008.
  3. Revisar la hora exacta del reinicio.
  4. Comprobar si el evento 1074 muestra usuario o proceso responsable.
Evento 1074 en el visor de eventos de Windows mostrando usuario que inició el reinicio

Si aparece algo como:

El proceso «C:\Windows\System32\shutdown.exe» inició el reinicio en nombre del usuario «DOMINIO\usuario».

Ya tienes la respuesta.

Si no hay 1074 pero sí 6008, probablemente fue un apagado inesperado (corte eléctrico, fallo hardware o cuelgue).

Con eso normalmente puedes acotar bastante rápido qué ha pasado.

Cómo identificar un reinicio inesperado en Windows Server

FAQ

¿Cómo saber quién apagó un servidor Windows?
Revisando el evento 1074 en el Visor de Eventos.

¿Qué significa el evento 6008?
Indica que el sistema se cerró de forma inesperada.

Espero que os sirva

También puedes revisar otros artículos relacionados con administración de Windows Server en el blog.

Error de reinicio al aplicar actualizaciones en Windows Server 2012

Mover una base de datos SQL Server a otro disco (MDF/LDF) sin errores

 

 

Comprobar el estado de una web por powershell

Feliz año nuevo a todos!!!!

Volvemos a la carga esta vez con un script de powershell para que nos avise en caso de que la web interna este caída, como por ejemplo, una de sharepoint, y además nos va a a indicar que servidor tiene problema, en caso que tengamos varios. Lo hice hace tiempo, pero creo que os puede ayudar bastante. Continuar leyendo «Comprobar el estado de una web por powershell»

Limpieza de logs en exchange

Por mucho que trabaje con exchange, no dejo de aprender algo cada día. He hecho una pequeña guía para cuando el sistema de backup que tenéis, o vuestra herramienta de rotado de logs no ha hecho su trabajo y se te llena el disco con los logs de exchange. Esto es para una arquitectura de DAG activo-activo, con dos nodos llamados nodo1 y nodo2 Continuar leyendo «Limpieza de logs en exchange»

Crear un sitio en sharepoint 2013 por powershell

Tengo servidores de sharepoint 2013 en balanceador de carga de windows y funciona muy bien, pero a veces da por saco la creación de sitios entre los dos servidores de sharepoint y crea solo el sitio en uno de los 2 nodos. Así que lo creo por powershell y funciona perfectamente.

Continuar leyendo «Crear un sitio en sharepoint 2013 por powershell»

Vaciar todas las papeleras en Windows Server (CMD y PowerShell paso a paso)

Si tiene varias cuentas de usuario en un equipo con Windows y tiene poco espacio, podemos vaciar la papelera de reciclaje para todos los usuarios con una sola línea de comandos, siempre y cuando tengamos privilegios de administrador. En servidores Windows Server con varios usuarios, esto suele pasar más de lo que parece.

Continuar leyendo «Vaciar todas las papeleras en Windows Server (CMD y PowerShell paso a paso)»

Comandos utiles de Exchange

Os dejo una recopilación de comandos útiles que uso yo en exchange prácticamente a diario.

Comprobar tamaño de un buzón

Get-MailboxStatistics «xxx@xxx.xxx» | Format-List StorageLimitStatus,TotalItemSize,TotalDeletedItemSize,ItemCount,DeletedItemCount

Ver cuota de usuario

Get-Mailbox xxx@xxx.xxx | format-list *quota Continuar leyendo «Comandos utiles de Exchange»

Renombrar controlador dominio en Windows Server 2012

Supongo que alguna vez os habrá surgido la necesidad de cambiar el  nombre a un controlador de dominio en windows, bien por políticas de empresa o por error humano a la hora de  escribirlo, etc…. Antiguamente era un odisea y nada recomendable, ya que podía dar errores de sincronización entre otras cosas. Esto es ha cambiado a partir de windows server 2012. Os dejo un vídeo. Una de las grandes mejoras que han hecho en Windows desde la versión 2012. Bastante fácil y útil en muchos casos.

[youtube https://www.youtube.com/watch?v=Zt_WD5Aw_Kw&w=854&h=480]