Debido a mi actual trabajo, en los últimos años he tenido mas acercamiento a Windows Server y definitivamente no fue tan fácil ya que te acostumbras a tus herramientas GNU que cuando te lo cambian es como volver a empezar casi desde cero.
Dicho lo anterior, les traigo el siguiente listado de comandos de supervivencia básica que he documentado en los últimos años para Windows Server 2003, 2018 y 2012 (No powershell).
Problemas con Remote Desktop
Cuando he tenido problemas para ingresar por remote desktop, algunas veces reiniciando el servicio de Remote Desktop o terminal services logramos volver a ingresar al servidor. A continuación muestro como el proceso su no se presenta ningún problema.
sc \\
sc \\
sc \\
taskkill /s
sc \\
Ahora supongamos que tenemos un servidor en otra ciudad a 300km de distancia y no podemos ingresar al sistema operativo por remote desktop, el servidor no tiene configurada o simplemente no tiene una interface de administración como la iLO o el IMM y tampoco contamos con un ingeniero en sitio. Despues de agotar varias opciones solo queda intentar el reinicio remoto y espera que levanta bien todo el sistema operativo y escritorio remoto. Con el siguiente comando se nos muestra un cuadro de dialogo para reiniciar uno o varios servidores.
shutdown /i
Sesiones de usuarios y terminal services.
qwinsta /server:IP_ADDRS
La tercer columna nos muestra el identificador de sesion, con este identificador podemos finalizar una sesion.
rwinsta /server:
Puertos de red abiertos
En todo momento resulta útil conocer que puertos están abiertos en el sistema, pero resulta mas útil conocer que procesos abrieron cada puerto.
#Conexiones establecidas y el PID que lo atiende
netstat -oan
#Puertos abiertos en modo LISTENING
netstat -an | find /i "listening"
Depuración de espacio en disco
Aunque siempre es posible depurar usando herramientas como ccleaner y remover aplicaciones que ya no usamos, existen unos directorios asociados las actualizaciones y services packs del sistema operativo. Estos deben ejecutarse como administrador.
#Archivos viejos de Service pack anteriores ya no usados
Dism /online /cleanup-image /spsuperseded
#Archivos viejos de actualizaciones ya no usados.
Dism /online /Cleanup-Image /StartComponentCleanup
Para el caso de que tengamos archivos muy viejos que ya no se usan podemos borrarlos, colocandonos en el directorio donde se encuentran todos esos archivos, ejecutamos el siguiente comando donde borrariamos todos los archivos con antigüedad mayor a 45 días. Esto resulta ideal para una aplicación que escribe logs diariamente.
forfiles /m *.* /d -45 /c "cmd /c del @file"
Windows Update, reinicio no programado
Si por alguna razón se nos quedaron los windows update encendidos configurados para actualizarse de manera automática, muy probablemente nos reiniciara el servidor sin darnos cuenta hasta afectar alguna plataforma de la empresa. La recomendación es controlar estas actualizaciones, permitiendo que se descarguen o no pero lo mas importante es que seamos nosotros quienes definamos el momento en que estas se realizan. Una manera de evitarlo, es decir, cancelar el reinicio automatico de windows server podemos dar de baja el servicio como se indica:
sc stop wuauserv
Información rapida de usuarios en dominio
Si queremos conseguir informacion mas rapida de un usuario de dominio sin ingresar al domain controller o sin tener instalado la aplicacion de Active Directory, podemos consultar de la siguiente manena
net user /DOMAIN
Ligas simbólicas
mklink /D c:\dell\logs e:\dell\logs
Uptime
Si queremos saber desde cuando esta corriendo un windows server podemos ejecutar el comando siguiente y ver la parte de "Statistics Since".
net stats server