• 4 heures
  • Facile

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 11/07/2022

Automatisez des tâches de sauvegarde avec des scripts PowerShell

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Ça y est, nous avons enfin vu tout ce qu'il faut pour pouvoir créer notre premier script de sauvegarde. Allons-y !

Créez votre premier script PowerShell de sauvegarde

Configurez vos VM pour écrire le script de sauvegarde

Bon, lançons-nous, on va maintenant créer des scripts de sauvegarde. Nous allons utiliser nos deux machines virtuelles en même temps, et nous créerons les scripts sur le poste client sous Windows 10.

Rassurez-vous, cela fonctionne de la même manière ; d’ailleurs, regardez, il y a aussi sous Windows 10 le fameux Windows PowerShell ISE que nous utiliserons dans ce chapitre :

Windows PowerShell ISE sur Windows 10
Windows PowerShell ISE sur Windows 10

Pensez à bien vérifier les configurations IP de votre poste client, elles devraient ressembler à ça :

la configuration IP du poste client
La configuration IP du poste client

Testez la communication avec votre serveur :

Testez votre connection entre le serveur et le client
Testez votre connexion entre le serveur et le client

Super, pensez également à insérer votre poste client dans le domaine si vous n’avez pas récupéré les machines virtuelles au début du cours :

Insertion du poste client dans le domaine
Insertion du poste client dans le domaine

Après un redémarrage, authentifiez-vous avec le compte utilisateur lombard comme ceci :

Authentification sur le client
Authentification sur le client

Bon, nous allons voir comment copier des fichiers de notre poste local vers notre répertoire partagé SAUVEGARDE sur notre serveur.

Nous allons créer 3 répertoires dans notre dossier Documents sur notre poste client et créer un  Document de Test.Txt  que vous copierez dans vos 3 dossiers créés précédemment, comme ceci :

Structure de votre Dossier Documents
Structure de votre dossier Documents

De base, votre Windows 10 interdit l’exécution de scripts PowerShell, à l’inverse de Windows Server. Pour le savoir, tapez la commande suivante :

PS C:\Users\Administrateur> Get-ExecutionPolicy
Restricted

Nous voyons que l’exécution de scripts sous PowerShell est restreinte.

Pour désactiver cette restriction, il faut d'abord allumer la console en mode Administrateur :

Exécution de la commande en mode Administrateur
Exécution de la commande en mode Administrateur

Authentifiez-vous en tant qu'administrateur lorsqu'il vous le demande :

Authentification en administrateur
Authentification en administrateur

Une fois dans la console PowerShell, utilisez la commandeSet-ExecutionPolicy Unrestricted  et cliquez sur T pour "Oui pour tout" :

PS C:\Users\Administrateur> Set-ExecutionPolicy Unrestricted

Modification de la stratégie d'exécution
La stratégie d’exécution permet de vous prémunir contre les scripts que vous
jugez non fiables. En modifiant la stratégie d’exécution, vous vous exposez aux
risques de sécurité décrits dans la rubrique d’aide
about_Execution_Policies à l’adresse https://go.microsoft.com/fwlink/?LinkID=135170. Voulez-vous modifier la stratégie
d’exécution ?
[O] Oui [T] Oui pour tout [N] Non [U] Non pour tout [S] Suspendre [?] Aide (la
valeur par défaut est « N ») : T

Vérifions que ça a bien marché en rappelant la commande  Get-ExecutionPolicy  :

PS C:\Users\Administrateur> Get-ExecutionPolicy
Unrestricted

Ça a marché !

Démarrez votre script de sauvegarde

Nous allons utiliser une commande PowerShell pour copier le contenu du dossier Documents, du poste client vers le dossier partagé Sauvegarde du serveur. Voici la commande à taper sur votre poste client :

PS C:\Users\Administrateur> Copy-Item -Path C:\Users\lombard\Documents\ -Destination \\Serveur\Sauvegarde\ -Recurse

Donnez les droits d'accès à votre utilisateur

Bon, mon serveur est bien allumé, mais j’ai ce message d’erreur maintenant, pourquoi ? 🤔

Donnez les bons droits pour éviter les erreurs d'accès
Donnez les bons droits pour éviter les erreurs d'accès

Ben c’est normal, mon utilisateur Lombard n’a pas les accès d’écriture pour ce répertoire. Donc nous allons créer un sous-dossier dans Lombard, dans le dossier partagé Sauvegarde, qui aura les bons droits :

Créez le dossier de sauvegarde de l'utilisateur
Créez le dossier de sauvegarde de l'utilisateur

Pour des questions de commodité, nous partagerons également notre sous-dossier Lombard et nous mettrons les droits de partage suivants (le groupe Administrateurs aura un contrôle total) :

Partagez le dossier de l'utilisateur
Partagez le dossier de l'utilisateur

Modifions notre script comme ceci pour l’adapter à la copie de notre nouveau dossier Lombard :

Copy-Item -Path C:\Users\lombard\Documents\ -Destination \\Serveur\Lombard\ -Recurse

Pensez à sauvegarder votre  Script_Sauvegarde.ps1  dans le dossier Documents du poste client :

Votre script de sauvegarde
Votre script de sauvegarde

Ça y est, je peux aller voir sur le serveur, et j’ai bien copié tout mon dossier Documents dans le sous-dossier partagé Lombard :

Les dossiers correctement copiés
Les dossiers correctement copiés

Et voilà, nous avons fait notre premier script de sauvegarde. Nous allons maintenant voir comment lancer ce script toutes les nuits !

Planifiez le lancement d'un script avec le planificateur de tâches

Pour faire cette partie, nous allons travailler avec l’outil Planificateur de tâches qui se trouve dans les outils d’administration Windows de notre poste client :

L'icône du planificateur de tâche
L'icône du planificateur de tâche

Voici notre planificateur de tâches :

Interface du planificateur de tâches
Interface du planificateur de tâches

Cliquez sur Créer une tâche de base et remplissez la fenêtre comme suit pour planifier une tâche qui se lancera toutes les nuits à 22 h 00. Il faudra penser à copier le script créé précédemment dans  C:\Scripts, que vous créerez également : 

Création d'une tâche
Création d'une tâche
Faites exécuter la tâche tous les jours
Faites exécuter la tâche tous les jours et configurez l'heure
Sélectionnez votre script
Sélectionnez votre script

Nous pouvons voir notre tâche planifiée, et nous pouvons l’exécuter maintenant en faisant un clic droit et en cliquant sur Exécuter :

Exécutez votre script
Exécutez votre script

Si vous supprimez le contenu du dossier Lombard dans le dossier partagé Sauvegarde, et que vous lancez l’exécution de ce script, vous verrez que tous les fichiers et tous les sous-dossiers ont bien été copiés.

Vos dossiers ont bien été sauvegardés
Vos dossiers ont bien été sauvegardés

Planifiez un script de sauvegarde sur un poste client avec une GPO

Étant donné que l’on a un domaine Windows Server, autant utiliser une GPO pour l’éxecution du script ; allons-y !

Ouvrez la console de gestion des stratégies de groupe sur le serveur :

Gestionnaire de stratégie de groupes
Gestionnaire de stratégie de groupes

Nous allons créer une nouvelle stratégie de groupe que nous nommerons :  Strat_Script  comme ceci : 

Créez votre nouveau GPO
Créez votre nouveau GPO

Nous configurerons une tâche planifiée dans la configuration ordinateur si nous voulons planifier une tâche pour tous les utilisateurs, ou alors dans la configuration utilisateur  si nous voulons planifier une tâche pour un utilisateur en particulier :

Créez la tâche planifiée
Créez la tâche planifiée

Mettez les propriétés suivantes pour la tâche planifiée (vous penserez à créer un répertoire  C:\Scripts  sur le serveur, et vous copierez votre script Script_Sauvegarde.ps1 dans ce dossier) :

Configurez la tâche planifiée
Configurez la tâche planifiée

Planifiez la tâche tous les jours à 22 h 00 :

Configurez la fréquence d'exécution de la tâche
Configurez la fréquence d'exécution de la tâche

Et vous n’oublierez pas de rajouter l’utilisateur (ou l’ordinateur) sur lequel vous voulez que la stratégie de groupe s’applique :

Ajout de l'utilisateur sur lequel s'applique la stratégie
Ajout de l'utilisateur sur lequel s'applique la stratégie

Bon, vous pouvez tester cette configuration maintenant, mais il faudra attendre la nuit pour la tester.

Résumé

Dans ce chapitre, nous avons vu :

  • la création d’un script PowerShell afin d’automatiser des tâches de sauvegarde ;

  • l’activation et la désactivation de l’exécution des scripts PowerShell sur un poste client ;

  • l’utilisation de l’outil Planificateur de tâches qui permet de lancer des scripts PowerShell à certains moments de la journée ;

  • la planification d’un script de sauvegarde sur un poste client grâce à une GPO.

Et voilà, ce cours est bientôt terminé ! Je suis ravi de vous avoir guidé dans la création de vos scripts de sauvegarde avec PowerShell. Je vous souhaite bon courage pour la suite de vos aventures dans l'informatique !

Exemple de certificat de réussite
Exemple de certificat de réussite