El Programador de tareas ejecuta scripts o programas automáticamente a una hora determinada, al inicio o ante eventos — útil para copias de seguridad, rotación de registros o reinicios controlados en su VPS Windows.
Casos de uso habituales
- Copiar carpetas a otro disco o recurso compartido
- Exportar configuración o volcados de base de datos
- Comprimir o rotar archivos de registro
Método 1: Interfaz gráfica
- Abra el Programador de tareas (
taskschd.msc). - Crear tarea… (para control total; no solo «Crear tarea básica»).
- Pestaña General: nombre p. ej.
Daily backup, marque Ejecutar con los privilegios más altos si es necesario. - Pestaña Desencadenadores: Nuevo… → Diariamente a la hora deseada.
- Pestaña Acciones: Nuevo… → Iniciar un programa
- Programa:
powershell.exe - Argumentos:
-ExecutionPolicy Bypass -File "C:\Scripts\backup.ps1"
- Programa:
- Condiciones / Configuración: desactive bloqueos relacionados con suspensión si la tarea debe ejecutarse sin usuario interactivo.
Método 2: PowerShell (diariamente a las 3:00)
Cree C:\Scripts\backup.ps1 (ejemplo mínimo — adáptelo):
PowerShell$dest = "D:\Backups" New-Item -ItemType Directory -Force -Path $dest | Out-Null Copy-Item -Path "C:\inetpub\mysite" -Destination (Join-Path $dest ("site_" + (Get-Date -Format "yyyyMMdd"))) -Recurse -Force
Registre la tarea:
PowerShell$action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument '-ExecutionPolicy Bypass -File "C:\Scripts\backup.ps1"' $trigger = New-ScheduledTaskTrigger -Daily -At 3am $principal = New-ScheduledTaskPrincipal -UserId "SYSTEM" -LogonType ServiceAccount -RunLevel Highest Register-ScheduledTask -TaskName "DailySiteBackup" -Action $action -Trigger $trigger -Principal $principal
Verifique:
PowerShellGet-ScheduledTask -TaskName "DailySiteBackup" Start-ScheduledTask -TaskName "DailySiteBackup"
Buenas prácticas
- Ejecute el script manualmente antes de programarlo.
- Registre la salida en un archivo dentro del
.ps1. - Proteja los scripts que contengan secretos; use cuentas de servicio con mínimo privilegio.
Solución de problemas
- La tarea no se ejecuta: compruebe el Visor de eventos → Registros de Windows → Aplicación y el registro operativo del Programador de tareas.
- Error 0x1: suele deberse a ruta incorrecta, script ausente o directiva de ejecución; use
-ExecutionPolicy Bypasscomo arriba.
Consulte también la configuración inicial del VPS Windows.