| Bash | ||
| Bitlocker | ||
| PowerShell | ||
| .gitignore | ||
| rapport.md | ||
| README.md | ||
Scripts de maintenance pour l'école
Ce dépôt regroupe des scripts utilisés pour préparer, diagnostiquer et entretenir des postes de travail, principalement sous Windows 11, ainsi que deux utilitaires pour Linux.
Attention : plusieurs scripts modifient le système, installent des logiciels, suppriment des fichiers temporaires ou redémarrent le PC. Vérifiez toujours le poste ciblé et les données ouvertes avant de les lancer.
Contenu du dépôt
| Dossier | Usage |
|---|---|
Bash/ |
Diagnostic S.M.A.R.T. et test de débit sous Linux. |
PowerShell/ |
Maintenance, diagnostic de disques et préparation de postes Windows. |
PowerShell/VitruV/ |
Nettoyage du cache de l'application VitruV. |
Bitlocker/ |
Export des informations de protection BitLocker du lecteur système. |
Prérequis généraux
- Sous Windows : Windows PowerShell 5.1 ou PowerShell récent.
- Lancez les scripts qui le demandent depuis un compte administrateur.
- Pour l'installation automatique : Windows 11, connexion Internet et WinGet installé.
- Sous Linux :
bash,lsblk,ddet, pour le diagnostic S.M.A.R.T., le paquetsmartmontools.
Si PowerShell bloque temporairement l'exécution d'un script local, ouvrez une console PowerShell puis lancez :
Set-ExecutionPolicy Bypass -Scope Process -Force
Cette commande ne s'applique qu'à la fenêtre PowerShell en cours.
Windows / PowerShell
Nettoyage du cache VitruV
Fichier : Clean-VitruVCache.ps1
Résout le problème d'affichage Directory: /vitruv-app/ en supprimant le contenu du cache de VitruV situé dans C:\Program Files\VitruV\webkitEngine-windows\cache. Si VitruV est en cours d'exécution, le script le ferme avant le nettoyage.
.\PowerShell\VitruV\Clean-VitruVCache.ps1
Lancez-le avec des droits administrateur si l'accès au dossier d'installation de VitruV l'exige. Le script demande une confirmation avant sa fermeture.
Installation automatique des logiciels
Fichiers : Installer.ps1 et Lanceur.cmd
Prépare un poste Windows 11 en installant silencieusement, via WinGet :
- Mozilla Firefox, Google Chrome et Opera ;
- 7-Zip, Audacity, Blender, LibreOffice et VLC ;
- AnyDesk et Microsoft Teams.
Le script vérifie les droits administrateur, la version de Windows et la disponibilité de WinGet. Un journal Installation.log est créé dans le même dossier que le script. EDT Monoposte BE n'est pas installé automatiquement.
Utilisation recommandée : double-cliquer sur Lanceur.cmd, puis accepter l'élévation administrateur. Il lance automatiquement Installer.ps1 avec les paramètres nécessaires.
Vous pouvez aussi lancer le script depuis une console PowerShell ouverte en administrateur :
cd ".\PowerShell\Installation automatique des programmes commun"
.\Installer.ps1
Menu de maintenance Windows
Fichier : maintenance_menu.ps1
Affiche un menu interactif proposant :
- le nettoyage de disque Windows (
cleanmgr) ; - la suppression des fichiers temporaires utilisateur et système ;
- la vérification/réparation de Windows avec
sfcetDISM; - la recherche et l'installation des mises à jour Windows avec le module
PSWindowsUpdate; - le redémarrage vers le BIOS/UEFI ;
- un test de lecture/écriture du disque ;
- la sortie du menu.
Lancez-le de préférence en administrateur :
.\PowerShell\maintenance_menu.ps1
Des journaux sont enregistrés dans C:\Temp ou dans Documents\MaintenanceLogs, selon l'action exécutée. Le test de débit crée temporairement un fichier de 1 Go dans le dossier temporaire de l'utilisateur avant de le supprimer.
État S.M.A.R.T. des SSD
Fichier : SMART.ps1
Liste les SSD détectés et affiche leur modèle, leur état de santé, leur capacité et, si le matériel le permet, des compteurs de fiabilité (température, heures de fonctionnement et arrêts non sûrs). Les informations de base fonctionnent sans droits administrateur ; certains compteurs peuvent ne pas être accessibles.
.\PowerShell\SMART.ps1
Tests de vitesse sans administrateur
Fichiers : Test_vitesse_ssd_noadmin.ps1 et Test_vitesse_ssd_no_admin.ps1
Ces deux scripts mesurent le débit de lecture et d'écriture avec un fichier temporaire, sans nécessiter de droits administrateur :
-
Test_vitesse_ssd_noadmin.ps1utilise un fichier de 500 Mo dansTéléchargements; il contient une fonction à appeler après chargement du script :. .\PowerShell\Test_vitesse_ssd_noadmin.ps1 Test-DiskSpeedUser -
Test_vitesse_ssd_no_admin.ps1lance le test directement et utilise un fichier de 1 Go dans le dossier temporaire :.\PowerShell\Test_vitesse_ssd_no_admin.ps1
Prévoyez l'espace libre correspondant. Les résultats varient selon le cache, l'usage du disque et le matériel ; ils servent surtout à un contrôle rapide, pas à un benchmark certifié.
Tri de photos par date
Fichier : tri-photos.ps1
Trie les images présentes dans le dossier courant, sans parcourir ses sous-dossiers. Les formats pris en charge sont : .jpg, .jpeg, .png, .gif, .webp, .heic et .heif.
- Les images dont le nom contient une date au format
YYYYMMDDsont déplacées dans l'arborescenceYYYY\MMcorrespondante. - Un fichier se terminant par
(1)est supprimé lorsque son original existe, dans le dossier courant ou dans le dossier daté correspondant ; il est conservé si l'original est absent. - Les suffixes
(2),(3), etc., les fichiers sans date et les conflits de nom dans le dossier de destination sont conservés et signalés. - Les fichiers qui ne sont pas des images sont ignorés.
Lancez d'abord le script en mode simulation pour vérifier les actions prévues :
cd "C:\chemin\vers\le\dossier\de\photos"
& "C:\chemin\vers\tri-photos.ps1" -Simulation
Une fois le résultat validé, relancez-le sans -Simulation pour créer les dossiers et déplacer ou supprimer les fichiers :
& "C:\chemin\vers\tri-photos.ps1"
Le script affiche un résumé des doublons, déplacements, fichiers sans date, fichiers ignorés et conflits détectés. Vérifiez la simulation avant l'exécution réelle : cette dernière peut supprimer des doublons et déplacer des photos.
BitLocker
Fichier : GetBitLockerInfo.ps1
Exporte les informations des protecteurs BitLocker du lecteur C: dans un fichier texte placé à côté du script : BitLockerInfo_<nom-du-PC>.txt. Si le nom de l'ordinateur n'est pas disponible, le nom comporte la date et l'heure.
.\Bitlocker\GetBitLockerInfo.ps1
Le fichier produit peut contenir des informations de récupération sensibles. Conservez-le dans un emplacement sécurisé et ne le déposez pas dans un dépôt public.
Fichiers ignorés par Git
Le fichier .gitignore empêche l'ajout accidentel des exports BitLocker, des journaux et des fichiers temporaires générés par les tests. Il ignore notamment :
Bitlocker/BitLockerInfo_*.txt, les exports produits parGetBitLockerInfo.ps1;Bitlocker/*.TXT, car Windows peut créer sur une clé USB un fichier BitLocker dont l'extension est en majuscules ;*.log,*.tmp,speedtest.tmp,DiskSpeedTest.tmpetssd_speed_test.tmp.
Cette règle réduit le risque d'ajout involontaire avec git add ., mais un export contenant une clé de récupération doit toujours être conservé hors du dépôt, dans un emplacement sécurisé.
Linux / Bash
Retirer la quarantaine de Krita sur iMac
Fichier : fix-krita-sur-iMac.sh
Pour l'utiliser sur un iMac où Krita a été installé depuis une ancienne version, branchez la clé USB qui contient le script et ouvrez Terminal. Tapez bash suivi d'une espace, puis faites glisser le fichier du script depuis le Finder dans la fenêtre du Terminal. macOS y insère son chemin complet, même si la clé porte un nom difficile à retrouver. Appuyez ensuite sur Entrée pour lancer le script.
Le script vérifie que Krita se trouve dans /Applications, retire son attribut de quarantaine et demande le mot de passe administrateur si nécessaire. Un journal est créé à côté du script sur la clé USB. Une fois le message de succès affiché, essayez d'ouvrir Krita.
Informations S.M.A.R.T. des SSD
Fichier : smart.sh
Liste les disques non rotatifs détectés, demande le nom du disque (sda, nvme0n1, etc.), puis affiche ses informations S.M.A.R.T. avec smartctl.
Installez d'abord l'outil si nécessaire :
sudo apt install smartmontools
Puis rendez le script exécutable et lancez-le :
chmod +x Bash/smart.sh
./Bash/smart.sh
Le mot de passe administrateur sera demandé pour lire les données S.M.A.R.T.
Test de débit du disque
Fichier : speed.sh
Demande un point de montage, crée un fichier temporaire speedtest.tmp de 1 Go, mesure l'écriture puis la lecture, et supprime le fichier à la fin.
chmod +x Bash/speed.sh
./Bash/speed.sh
Saisissez un point de montage existant, par exemple /, /home ou /media/usb. Le script écrit réellement 1 Go : vérifiez l'espace libre et évitez de le lancer sur un support amovible ou un système de production sans nécessité.
Bonnes pratiques
- Tester d'abord sur un poste non critique.
- Fermer les applications avant une maintenance, une mise à jour ou un test de disque.
- Conserver les fichiers journaux lorsqu'un problème doit être analysé.
- Ne pas versionner les journaux, fichiers de test ni exports BitLocker contenant des données sensibles.