Fog_Reinitialisation
Attention, ce projet est en cours de dévelopement et peut ne pas fonctionner pour l'instant
Reinit - Réinitialisation rapide des PC via FogProject
Un script Bash permettant de réinitialiser rapidement et simplement les PC des salles de TP en s'appuyant sur l'API de FogProject.
🔧 Fonctionnalités
- Réinitialisation à distance des machines via FogProject
- Automatisation simple par script Bash
- Utilisation prévue dans des environnements scolaires ou universitaires
- Déploiement transparent : Allumage via Wake On Lan -> Déploiement multicast -> Extinction des machines.
🛠️ Prérequis
- Serveur FogProject configuré et accessible
- Accès à l'API REST de Fog (clé d'authentification si nécessaire)
- Les machines clientes doivent être correctement enregistrées dans Fog
⚠️ Problèmes connus sur les machines Windows
❗ Erreur : The NTFS partition is in an unsafe state
🧭 Cause
Cette erreur apparaît lors de la capture ou du déploiement d'une image via démarage réseau. Elle indique que Windows ne s'est pas arrêté correctement. Le système de fichiers NTFS est resté dans un état non sécurisé.
✅ Solution
- Démarrer la machine sous Windows
- Ouvrir PowerShell
- Exécuter la commande suivante pour forcer un arrêt complet :
powershell shutdown -s -t 0
Cela assurera un arrêt propre de Windows, évitant les erreurs lors du démarrage sous Fog.
📁 Structure du projet
Fog_Reinitialisation/ # Dossier du projet
├── reinitialisation_salle.sh # Script Bash principal
├── .env.exemple # Variables pour l'API Fog
└── README.md # Ce fichier
🚀 Utilisation
-
Téléchargement, mettez vous dans le répertoire de votre choix pour installer le dossier du projet (De façon à ce qu'il ne soit pas déplacé par la suite):
curl -L "https://git.nelson-thomas.fr/nelson/Fog_Reinitialisation/archive/main.tar.gz" | tar -xz -
Rentrer dans le répertoire du projet :
cd ./fog_reinitialisation -
Mettre les token de l'api fog dans le .env.exemple et le renommer :
nano .env.exemplePuis
mv .env.exemple ./.env -
Rendre le script exécutable :
chmod u+x reinitialisation_salle.sh -
(Optionnel) Installer globalement :
sudo ln -s $(pwd)/reinitialisation_salle.sh /usr/local/bin/reinit -
Exécuter la commande depuis n'importe où :
reinit