#!/bin/bash # Couleurs pour le texte GREEN="\e[32m" RED="\e[31m" BLUE="\e[34m" RESET="\e[0m" # Fonction pour afficher un message de succès success() { echo -e "${GREEN}[SUCCESS]${RESET} $1" } # Fonction pour afficher un message d'erreur error() { echo -e "${RED}[ERROR]${RESET} $1" } # Fonction pour mettre à jour et nettoyer le système update_and_clean_system() { echo -e "${BLUE}Mise à jour et nettoyage du système...${RESET}" sudo apt update && sudo apt full-upgrade -y && sudo apt autoremove -y && sudo apt autoclean -y if [ $? -eq 0 ]; then success "Mise à jour et nettoyage effectués avec succès." else error "Échec de la mise à jour et du nettoyage." fi } # Fonction pour installer et configurer un serveur NFS install_nfs_server() { echo -e "${BLUE}Installation et configuration du serveur NFS...${RESET}" sudo apt install -y nfs-kernel-server sudo systemctl enable nfs-server sudo systemctl start nfs-server if [ $? -eq 0 ]; then success "Serveur NFS installé et configuré." else error "Échec de l'installation du serveur NFS." fi } # Fonction pour installer un client NFS install_nfs_client() { echo -e "${BLUE}Installation du client NFS...${RESET}" sudo apt install -y nfs-common if [ $? -eq 0 ]; then success "Client NFS installé." else error "Échec de l'installation du client NFS." fi } # Fonction pour installer et configurer un serveur Samba install_samba_server() { echo -e "${BLUE}Installation et configuration du serveur Samba...${RESET}" sudo apt install -y samba sudo systemctl enable smbd sudo systemctl start smbd if [ $? -eq 0 ]; then success "Serveur Samba installé et configuré." else error "Échec de l'installation du serveur Samba." fi } # Fonction pour ajouter l'utilisateur actuel à sudo add_user_to_sudo() { echo -e "${BLUE}Ajout de l'utilisateur actuel au groupe sudo...${RESET}" sudo usermod -aG sudo $USER if [ $? -eq 0 ]; then success "Utilisateur ajouté au groupe sudo." else error "Échec de l'ajout de l'utilisateur au groupe sudo." fi } # Fonction pour installer Docker avec post-installation install_docker() { echo -e "${BLUE}Installation de Docker...${RESET}" sudo apt install -y docker.io docker-compose sudo systemctl enable docker sudo systemctl start docker echo -e "${BLUE}Ajout de l'utilisateur actuel au groupe docker...${RESET}" sudo usermod -aG docker $USER echo -e "${BLUE}Création d'un dossier pour les conteneurs Docker...${RESET}" mkdir -p ~/docker/containers if [ $? -eq 0 ]; then success "Docker installé et configuré avec succès." else error "Échec de l'installation de Docker." fi } # Fonction pour configurer le réseau configure_network() { echo -e "${BLUE}Configuration du réseau...${RESET}" echo -e "1. IP Statique\n2. DHCP\n" read -p "Choisissez une option (1/2) : " net_choice case $net_choice in 1) read -p "Entrez l'adresse IP statique : " ip read -p "Entrez le masque de sous-réseau (par ex. 255.255.255.0) : " netmask read -p "Entrez la passerelle : " gateway read -p "Entrez le DNS (par ex. 8.8.8.8) : " dns sudo bash -c "cat > /etc/network/interfaces < /etc/network/interfaces <