16/12/2025

Prise en main du Planificateur de tâches de Windows Server

Le « Planificateur de tâches » de Windows Server est un outil qui permet d’automatiser l’exécution de tâches sur un serveur. Que ce soit pour exécuter des scripts à une heure précise, lancer des sauvegardes régulières ou surveiller certains services, le « Planificateur de tâches » facilite l’automatisation de nombreuses actions, réduisant ainsi les interventions manuelles. C’est un allié précieux pour les administrateurs systèmes de machines Windows !

Il regroupe les tâches créées par le système Windows lui-même, celles créées par d’autres applications et celles de l’administrateur système. Toutes les tâches sont regroupées dans une bibliothèque de tâches. Par défaut, il y a plus de 150 tâches planifiées sur un serveur Windows Server, mais certaines sont désactivées.

Pour accéder à cet outil, vous pouvez utiliser le « Gestionnaire de serveur », afin de cliquer sur le menu « Outils » puis « Planificateur de tâches ».

Remarque : vous pouvez aussi cliquer sur le bouton Démarrer et rechercher « Planificateur de tâches ».

L’exemple ci-dessous montre la présence de 3 tâches dont 2 tâches destinées à maintenir à jour le navigateur Microsoft Edge sur la machine locale. La partie de gauche permet de naviguer dans les « dossiers » de la bibliothèque de tâches.

Remarque : le « Planificateur de tâches » est strictement identique entre Windows Server et les versions clients telles que Windows 10 et Windows 11.

I. De quoi est composée une tâche planifiée ?

Comme nous le verrons par la suite, une tâche planifiée est constituée d’un ensemble d’éléments qu’il est important de connaître.

Au-delà de son nom et sa description, la tâche planifiée doit contenir trois éléments essentiels : le déclencheur, l’action et le contexte d’exécution.

A. Un déclencheur

Le déclencheur est la réponse à la question suivante : « Quand faut-il exécuter la tâche ? ». Autrement dit, « Quand doit-elle se déclencher ? ». De nombreuses possibilités sont offertes par Windows Server. Chaque tâche peut avoir un ou plusieurs déclencheurs.

Il y a plusieurs types de déclencheurs :

  • Les déclencheurs temporels

La tâche planifiée peut s’exécuter une seule fois à une date et une heure précise, une fois par jour, une fois par mois, ou encore se répéter toutes les 15 minutes.

  • Les déclencheurs comportementaux

La tâche planifiée peut s’exécuter en fonction du comportement de la machine, c’est-à-dire au démarrage de celle-ci, à l’ouverture d’une session ou encore lorsqu’une session est verrouillée.

  • Les déclencheurs sur un événement

L’Observateur d’événements de Windows regroupe des événements liés à l’activité du système, des applications et des services. Ainsi, il est envisageable d’exécuter une tâche planifiée lorsqu’un événement spécifique est détecté. Ceci permet de déclencher la tâche de façon dynamique et plus ou moins fréquente, en fonction de cet événement.

B. Une action

L’action est la réponse à la question suivante : « Quelle action doit accomplir la tâche planifiée ? ». Chaque tâche planifiée peut exécuter une ou plusieurs actions.

L’action peut correspondre à l’exécution d’un programme ou d’un script. Il est fréquent d’utiliser une tâche planifiée pour exécuter un script PowerShell.

C. Le contexte d’exécution

La tâche planifiée doit s’exécuter en utilisant un compte spécifique. Elle peut s’exécuter avec les privilèges du système (plus haut niveau de privilèges en local), un compte utilisateur avec des permissions « Administrateurs », un compte utilisateur standard ou encore un compte de service.

Le compte sélectionné doit être en adéquation avec les besoins de la tâche planifiée. Il est recommandé d’utiliser ce que l’on appelle un compte de service pour exécuter les tâches planifiées (concept lié avec la notion de « gMSA »).

Remarque : Windows Server 2012 a introduit la notion de « gMSA » (group Managed Service Accounts), un compte utilisateur « spécial » stocké dans l’Active Directory et dont le mot de passe est renouvelé de façon automatique (et personne ne le connaît !).

Il est fortement déconseillé d’utiliser le compte « Administrateur » ou d’utiliser son compte utilisateur personnel pour exécuter une tâche. Ceci pour des raisons de sécurité, mais aussi pour faciliter l’administration de l’infrastructure.

Si vous changez le mot de passe de votre compte utilisateur et que ce dernier est associé à une tâche planifiée, alors il sera nécessaire de reconfigurer toutes les tâches planifiées pour définir le nouveau mot de passe.

II. Créer une tâche planifiée

La méthode la plus courante pour créer une tâche planifiée est d’utiliser le « Planificateur de tâches ». Vous devez savoir qu’il est possible d’utiliser l’outil en ligne de commande « schtasks » et des commandes PowerShell (New-ScheduledTask, New-ScheduledTaskAction, New-ScheduledTaskPrincipal, New-ScheduledTaskTrigger, etc.).

Il y a deux assistants disponibles pour créer une tâche : « Créer une tâche de base » qui est un assistant simplifié et « Créer une tâche » qui donne accès à plus d’options.

Dans le menu latéral situé sur la droite, cliquez sur « Créer une tâche ».

A. Cas pratique

Pour cet exemple, nous allons simplement créer une tâche planifiée pour exécuter un script PowerShell dont l’objectif est de copier le contenu du répertoire « C:\Data » vers le répertoire « C:\Sauvegarde ». Ceci vous donnera l’occasion de manipuler rapidement PowerShell.

Remarque : en production, il sera indispensable que stocker les données sur un volume différent de la source, et éventuellement, vers un répertoire distant. L’idée ici étant de vous permettre de pratiquer à partir d’un seul et même serveur, avec un seul volume.

Je vous invite à créer les dossiers « Data » et « Sauvegarde » à la racine de « C:\ ».

Puis, ouvrez l’application « Windows PowerShell ISE » sur la machine. Il s’agit d’un éditeur de code PowerShell intégré à Windows Server et Windows.

Écrivez (ou copiez-collez le code suivant) dans l’éditeur de code :

<#
    Script PowerShell pour copier les données d'un
    répertoire source vers un répertoire destination
#>

# Dossier avec les données à sauvegarder :
$DossierSource = "C:\Data\*"

# Dossier pour stocker la sauvegarde :
$DossierSauvegarde = "C:\Sauvegarde"

# Copier les données :
Copy-Item -Path $DossierSource -Destination $DossierSauvegarde -Recurse -Force

Ensuite, cliquez sur le bouton représentant une disquette afin d’enregistrer le fichier. Enregistrez le fichier sous « C:\Data » en utilisant le nom « Script.ps1 ».

Remarque : l’extension « .ps1 » représente les fichiers de scripts PowerShell.

Une fois que c’est fait, fermez « PowerShell ISE » et passez à la suite.

B. Exécuter le script PowerShell par tâche planifiée

Commencez par renseigner les champs et les options de l’onglet « Général ». Tout d’abord, indiquez un nom et une description.

Puis, regardez la section « Option de sécurité » car elle correspond au contexte d’exécution de la tâche. Par défaut, le compte utilisé pour créer la tâche et associé à celle-ci, et sera donc utilisé pour l’exécuter. Ici, c’est le compte « SRV-WS2025\Administrateur » qui est présélectionné.

Vous devez sélectionner l’option « Exécuter même si l’utilisateur n’est pas connecté », sinon la tâche ne s’exécutera pas si la session de l’utilisateur n’est pas ouverte. De plus, sélectionnez « Windows Server 2025 » pour l’option « Configurer pour ». Cette option influence la manière dont la tâche est exécutée et quelles fonctionnalités sont disponibles, en fonction du système d’exploitation cible.

Pour exécuter la tâche avec un compte différent, cliquez sur le bouton « Utilisateur ou groupe ». Pour une tâche d’administration locale, le compte « Système » peut être utilisé. Assurez-vous que le champ « À partir de cet emplacement » soit égal au serveur local (sinon, cliquez sur « Emplacements… »), puis recherchez le compte « Système ».

Remarque : l’emplacement correspond à la base de comptes dans laquelle rechercher l’utilisateur. Ici, il s’agit d’un utilisateur local donc c’est le nom du serveur qui est spécifié. Dans un contexte différent, il pourrait s’agir du nom de domaine Active Directory.

Une fois que c’est fait, basculez sur l’onglet « Déclencheurs ». Sachez que toute la configuration pourra être modifiée par la suite.

Vous devez ajouter au moins un déclencheur pour indiquer quand s’exécutera la tâche. Dans cet exemple, nous allons exécuter la tâche tous les jours à 23h00. Il convient de choisir le mode d’exécution « A l’heure programmée » (choix par défaut), et de sélectionner « Chaque jour », puis sur la droite de préciser l’heure.

Remarque : si vous souhaitez créer une tâche uniquement dans le but de l’exécuter manuellement en cas de besoin, choisissez « Une fois » et indiquez une date antérieure.

Vous pouvez aussi cocher l’option « Arrêter la tâche si elle s’exécute plus de : » afin d’arrêter la tâche automatiquement au bout d’un laps de temps, si elle n’a pas encore terminé. Ceci peut être utile pour s’assurer que la durée d’exécution d’une tâche n’excédera pas une durée spécifique. En complément, ce sera judicieux de chercher à comprendre pourquoi cette tâche s’est figée.

Basculez sur l’onglet « Actions » afin de créer une nouvelle action permettant d’exécuter notre script PowerShell. Choisissez « Démarrer un programme » comme type d’action et indiquez ceci comme « Programme/script » :

powershell.exe -File "C:\Data\Script.ps1"

Le paramètre « -File » de l’exécutable de PowerShell permet de préciser le chemin du script à exécuter. En principe, le champ « Programme/script » doit uniquement contenir le nom de l’exécutable et tout le texte « -File "C:\Data\Script.ps1" » doit être intégré au champ « Ajouter des arguments ». Si vous écrivez l’intégralité de la ligne dans « Programme/script », l’assistant vous proposera d’effectuer cette opération à votre place.

L’onglet « Conditions » contient des options dont les noms sont relativement évocateurs.

Par exemple, vous pouvez configurer la tâche pour qu’elle s’exécute uniquement si la machine est connectée à un réseau spécifique.

Enfin, l’onglet « Paramètres » contient d’autres options. Si vous souhaitez pouvoir exécuter la tâche manuellement, cochez l’option « Autoriser l’exécution de la tâche à la demande ».

Vous retrouvez aussi l’option « Arrêter la tâche si elle s’exécute plus de : » au niveau de la tâche, alors que précédemment, c’était un paramètre au niveau du déclencheur. Vous pouvez aussi demander à Windows de relancer la tâche automatiquement si elle échoue, via l’option « Si la tâche échoue, recommencer tous les : ».

Validez avec « OK » pour créer la tâche. Afin de la tester dès maintenant, effectuez un clic droit sur son nom et cliquez sur « Exécuter ». Elle va passer sur le statut « En cours ».

Il ne vous reste plus qu’à vérifier le contenu du répertoire « C:\Sauvegarde » : vous devriez retrouver le même contenu que dans « C:\Data ».

C. Que faire si la tâche ne s’exécute pas correctement ?

Dans le cas où vous rencontrez des difficultés avec une tâche planifiée, voici quelques éléments à vérifier et qui pourront vous aider.

Tout d’abord, sachez que lorsqu’une tâche planifiée est sélectionnée, l’onglet « Historique » de la console « Planificateur de tâches » vous donnera des précisions sur l’activité de cette tâche. C’est une façon de trouver une explication au dysfonctionnement rencontré.

Sinon, vous devez vérifier les points suivants :

  • Vérifiez que le compte sélectionné pour exécuter la tâche dispose bien des autorisations nécessaires. Si vous utilisez « Système », vous n’aurez pas de permissions pour accéder à une ressource distante (un partage, par exemple).
  • Vérifiez que le script PowerShell ou le nom de l’exécutable est correct, une faute de frappe est si vite arrivée…

De plus, s’il s’agit d’un script PowerShell et que ce dernier provient d’Internet (récupéré sur GitHub, par exemple), il y a des chances pour qu’il soit bloqué par la stratégie d’exécution PowerShell de votre machine. Dans ce cas, contournez cette restriction via cette syntaxe à utiliser dans la tâche planifiée :

powershell.exe -File "C:\Data\Script.ps1" -ExecutionPolicy Bypass

Pour plus d’informations :

III. Modifier une tâche planifiée

Pour modifier une tâche planifiée, il vous suffit d’effectuer un clic droit sur la tâche planifiée puis de cliquer sur « Propriétés ». Vous pouvez modifier toutes les options de la tâche planifiée, sauf le nom.

Si vous souhaitez conserver ce modèle de tâche planifiée ou créer cette tâche planifiée sur votre serveur, utilisez le bouton « Exporter ». Ceci vous permettra d’exporter la définition de la tâche dans un fichier au format XML, et vous pourrez l’importer sur une autre machine via le bouton « Importer une tâche » situé dans le menu latéral de droite de la console.

IV. Bonnes pratiques pour les tâches planifiées

Terminons ce chapitre par 4 bonnes pratiques à connaître pour la création et la gestion des tâches planifiées sur Windows Server.

  • Définir un objectif clair pour chaque tâche : assurez-vous que chaque tâche a une utilité spécifique et documentez chaque tâche (en premier lieu en complétant le champ « Description »).
  • Utiliser une convention de nommage : ce sera utile pour identifier facilement l’intérêt d’une tâche et ce qu’elle fait : Script PowerShell, Nom de l’application, etc.
  • Stocker les scripts dans un emplacement protégé : si vous envisagez d’exécuter des scripts PowerShell par tâche planifiée, veillez à stocker ces scripts dans un emplacement où les accès sont limités. De plus, il est recommandé de signer les scripts avec un certificat numérique.

Vérifier les permissions nécessaires : utilisez un compte dont les permissions sont adaptées aux besoins de la tâche.

Livre Windows Server 2025 par IT-Connect
author avatar
Florian BURNEL Co-founder of IT-Connect
Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.