#!/bin/bash # Script de désinstallation du contrôleur de ventilateurs Dell iDRAC pour LXC # Usage: ./uninstall-lxc.sh set -euo pipefail # Couleurs pour l'affichage RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' # No Color # Configuration INSTALL_DIR="/opt/idrac-fan-controller" SERVICE_NAME="idrac-fan-controller" CONFIG_FILE="$INSTALL_DIR/config/environment" echo -e "${RED}=== Désinstallation du contrôleur de ventilateurs Dell iDRAC ===${NC}" echo # Vérifier les privilèges root if [[ $EUID -ne 0 ]]; then echo -e "${RED}Erreur: Ce script doit être exécuté en tant que root${NC}" exit 1 fi # Confirmation echo -e "${YELLOW}Cette opération va :${NC}" echo "• Arrêter et désactiver le service $SERVICE_NAME" echo "• Supprimer tous les fichiers dans $INSTALL_DIR" echo "• Supprimer le service systemd" echo "• Supprimer les logs" echo echo -e "${RED}ATTENTION: Cette action est irréversible !${NC}" read -p "Êtes-vous sûr de vouloir continuer ? (yes/NO): " -r if [[ ! $REPLY =~ ^yes$ ]]; then echo -e "${GREEN}Désinstallation annulée.${NC}" exit 0 fi echo echo -e "${BLUE}1. Arrêt du service...${NC}" if systemctl is-active --quiet "$SERVICE_NAME"; then systemctl stop "$SERVICE_NAME" echo -e "${GREEN}Service arrêté${NC}" else echo -e "${YELLOW}Service déjà arrêté${NC}" fi echo -e "${BLUE}2. Désactivation du service...${NC}" if systemctl is-enabled --quiet "$SERVICE_NAME" 2>/dev/null; then systemctl disable "$SERVICE_NAME" echo -e "${GREEN}Service désactivé${NC}" else echo -e "${YELLOW}Service déjà désactivé${NC}" fi echo -e "${BLUE}3. Suppression du fichier de service systemd...${NC}" if [ -f "/etc/systemd/system/$SERVICE_NAME.service" ]; then rm -f "/etc/systemd/system/$SERVICE_NAME.service" systemctl daemon-reload echo -e "${GREEN}Fichier de service supprimé${NC}" else echo -e "${YELLOW}Fichier de service non trouvé${NC}" fi echo -e "${BLUE}4. Sauvegarde de la configuration...${NC}" if [ -f "$CONFIG_FILE" ]; then BACKUP_FILE="/tmp/idrac-fan-controller-config-backup-$(date +%Y%m%d-%H%M%S)" cp "$CONFIG_FILE" "$BACKUP_FILE" echo -e "${GREEN}Configuration sauvegardée dans: $BACKUP_FILE${NC}" fi echo -e "${BLUE}5. Suppression des fichiers d'installation...${NC}" if [ -d "$INSTALL_DIR" ]; then rm -rf "$INSTALL_DIR" echo -e "${GREEN}Répertoire d'installation supprimé${NC}" else echo -e "${YELLOW}Répertoire d'installation non trouvé${NC}" fi echo -e "${BLUE}6. Suppression des logs...${NC}" if [ -d "/var/log/$SERVICE_NAME" ]; then rm -rf "/var/log/$SERVICE_NAME" echo -e "${GREEN}Logs supprimés${NC}" else echo -e "${YELLOW}Répertoire de logs non trouvé${NC}" fi echo -e "${BLUE}7. Nettoyage des logs systemd...${NC}" journalctl --vacuum-time=1d --quiet || true echo -e "${GREEN}=== Désinstallation terminée avec succès ! ===${NC}" echo echo -e "${BLUE}Actions effectuées:${NC}" echo "• Service $SERVICE_NAME arrêté et désactivé" echo "• Fichiers d'application supprimés" echo "• Logs nettoyés" if [ -f "$BACKUP_FILE" ]; then echo -e "${YELLOW}• Configuration sauvegardée: $BACKUP_FILE${NC}" fi echo echo -e "${YELLOW}Note: Les ventilateurs sont maintenant contrôlés par le système Dell par défaut${NC}"