Hora del código #1
He estado teniendo problema con el reinicio de un servicio (en Linux) luego de que se actualiza, funciona solamente con el ingreso de un comando a mano. Está curioso el asunto. Mientras tanto decidí automatizar el proceso al hacer que:
- Mi computadora despierte.
- Se conecte al servidor.
- Ejecute el comando.
- Cierre sesión.
- Mi computadora vuelva a dormir.
Despertar y dormir lo logro con el programador de tareas de Windows.
Ambas tareas están programadas para que se ejecuten a diario; a una hora el “Despertar” y 5 minutos después el “Dormir”. La primera necesita tener marcada en Condiciones la casilla de Activar el equipo para ejecutar esta tarea, ésta tarea ejecuta (en Acciones) el archivo BATCH:
Despertar.bat
echo despierta
Y “Dormir” ejecuta:
Dormir.bat
Rundll32.exe Powrprof.dll,SetSuspendState Sleep
Para que esto funcione tuve que ejecutar, en una consola (cmd) con derechos administrativos:
powercfg -hibernate off
La ejecución del comando lo logro con un script de AutoHotkey:
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
SetTitleMatchMode 2
run, C:\Users\edgar\Desktop\putty-session.lnk, C:\Users\edgar\Desktop, max, puttyPID
WinWait, ahk_pid %puttyPID%WinActivate
sleep, 5000
SendInput,CLAVE{ENTER}
sleep, 5000
SendInput,COMANDO 1{ENTER}
sleep, 10000
SendInput,logout{ENTER}
return
El putty-session.lnk es básicamente:
"C:\Program Files (x86)\PuTTY\putty.exe" -load "sesion-guardada"
Y una tercera tarea programada que ejecuta el script de AutoHotkey entre las tareas “Despertar” y “Dormir”. El script AutoHotkey lo compilé para que la tarea programada pueda ejecutar un .EXE sin problemas.