Script de suppression de compte d'hébergement
Par Guillaume RUAS, 21/11/2005 à 20:44 :: Linux :: #21 :: rss
Après avoir publié un script de création de compte d'hébergement, voici le script permettant facilement de supprimer un compte.
Ce script supprime ce qui a été créé par le script de création de compte web. Je ne vais donc pas revenir sur ce qu'est un compte d'hébergement et comment il se présente. Je vous laisse le soin de lire l'article sur la création si ce n'est pas déjà fait.
Principe de fonctionnement
Ce script accepte en entrée 3 paramètres obligatoires, qui sont :
- Nom du compte à supprimer.
- Un booléen pour l'effacement du répertoire /var/www/nom_du_compte (1 on efface / 0 on efface pas).
- Un booléen pour la suppression de la base de donnée (1 on efface / 0 on efface pas).
Le script effacera dans tous les cas la configuration d'Apache.
Le script
1. On récupère les infos passées en paramètre et on les stocke dans des variables :
login=$1; home=$2; www=$3; base=$4;
2. On supprime le compte utilisateur qui fait tourner le site :
# --- Suppression du user --- /usr/sbin/userdel $login #echo "Utilisateur $login supprimé."
3. Si on en a demandé la suppression on supprime le répertoire /var/www/nom_du_compte
# --- Suppression du repertoire www--- if [ $www = '1' ] then /bin/rm -R -f /var/www/$login #echo "Répertoire www supprimé." fi
4. On supprime le fichier de configuration de apache :
# --- Suppression du virtual host--- rm -f /etc/apache/vhosts/$login.conf #echo "Virtualhots $login supprimé."
5. Si demandé on supprime la base de donnée et l'utilisateur MySQL :
# --- Suppression de la base de donnée et de l'utilisateur--- if [ $base = '1' ] then mysql -u root --password=mot_de_passe_mysql mysql <<END_COMMANDS REVOKE ALL ON *.* FROM $login@localhost; REVOKE ALL ON $login.* FROM $login@localhost; DELETE FROM mysql.user WHERE user='$login'; DROP DATABASEE IF EXISTS $login; FLUSH PRIVILEGES; END_COMMANDS /usr/bin/mysqladmin -u root -p"mot_de_passe_mysql" reload fi
6. Enfin on recharge la configuration de apache
#On recharge la configuration de apache /etc/init.d/apache reload #echo "Apache relancé ..." #echo "Suppression du compte $login terminée."
Voilà, c'est terminé.
Si vous voulez télécharger le script complet, cliquez ici

Commentaires
Aucun commentaire pour le moment.
Ajouter un commentaire
Les commentaires pour ce billet sont fermés.