Une collection de scripts utiles pour l'administration, la configuration et la maintenance des systèmes Ubuntu et Debian.
- Installation automatisée : Scripts de post-installation et configuration d'environnement
- Maintenance système : Nettoyage, mises à jour et optimisation
- Configuration serveur : Nginx, Apache, bases de données, firewall
- Utilitaires : Monitoring, sauvegarde, analyse de logs
- Scripts de développement : Configuration d'environnements de développement
- Ubuntu 20.04+ ou Debian 11+
- Bash 4.0+
- Droits sudo pour certains scripts
# Cloner le repository
git clone https://github.com/NDXDeveloper/ubuntu-debian-scripts.git
cd ubuntu-debian-scripts
# Lancer l'installation
chmod +x install.sh
./install.sh
Le script d'installation va :
- ✅ Créer le dossier
~/scripts
- ✅ Copier tous les scripts dans ce dossier
- ✅ Les rendre exécutables
- ✅ Ajouter le dossier au PATH
- ✅ Configurer votre environnement
Après l'installation, rechargez votre shell :
exec bash
./uninstall.sh
Vérifie toutes les mises à jour disponibles sur votre système (APT, Snap, Flatpak).
Utilisation :
check-updates # Vérification complète
check-updates --summary-only # Afficher uniquement le résumé
check-updates --security-only # Uniquement les mises à jour de sécurité
check-updates --no-snap # Ignorer Snap
check-updates --no-flatpak # Ignorer Flatpak
Met à jour automatiquement tous les paquets du système avec options avancées.
Utilisation :
update # Mise à jour standard
update -s # Avec création de snapshot Timeshift
update --dist-upgrade # Mise à jour avec gestion avancée des dépendances
update -l # Activer le logging
update --log-stats # Voir les statistiques des logs
update --clean-logs # Nettoyer les fichiers de log
Fonctionnalités :
- ✅ Mise à jour APT (upgrade ou dist-upgrade)
- ✅ Mise à jour Snap
- ✅ Mise à jour Flatpak
- ✅ Création de snapshot avant mise à jour (Timeshift)
- ✅ Vérification de l'espace disque
- ✅ Logging avec rotation automatique
- ✅ Proposition de redémarrage si nécessaire
Affiche la liste complète des applications Flatpak et Snap installées avec détails.
Utilisation :
list-apps # Affiche toutes les applications
Affiche :
- 📦 Applications Flatpak (nom, ID, version)
- 📱 Applications Snap (nom, version, révision, éditeur)
- 📊 Résumé avec total
Liste tous les scripts disponibles dans ~/scripts
avec leurs informations.
Utilisation :
list-scripts # Liste simple
list-scripts -d # Liste détaillée
list-scripts -i <nom> # Informations sur un script spécifique
list-scripts -r <nom> # Exécuter un script interactivement
list-scripts -e <nom> # Éditer un script
list-scripts --check # Vérifier l'intégrité des scripts
Ajoute un dossier de scripts à votre variable PATH de manière permanente.
Utilisation :
add-scripts-to-path # Ajoute ~/scripts au PATH
add-scripts-to-path ~/bin # Ajoute un autre dossier
add-scripts-to-path --check # Vérifier si un dossier est dans PATH
Supporte : Bash, Zsh, Fish
Nettoyage en profondeur du système avec confirmation pour chaque action.
Utilisation :
system-deep-clean # Mode interactif (recommandé)
system-deep-clean --dry-run # Simulation sans suppression
system-deep-clean --auto # Mode automatique (sans confirmation)
Ce qui est nettoyé :
- 🗂️ Cache APT et paquets orphelins
- 📱 Anciennes versions Snap
- 📋 Logs système anciens (> 7 jours)
- 💥 Rapports de crash
- 🗑️ Fichiers temporaires
- 📦 Cache des gestionnaires de paquets
- 🌐 Cache des navigateurs (optionnel)
Sécurité :
- Mode safe par défaut (demande confirmation)
- Mode dry-run pour tester
- Affichage de l'espace libéré
- Logging optionnel
ubuntu-debian-scripts/
├── 📄 install.sh # Script d'installation automatique
├── 📄 uninstall.sh # Script de désinstallation
├── 📄 README.md # Ce fichier
├── 📄 LICENSE # Licence MIT
├── 📂 admin/ # Scripts d'administration système
│ ├── check-updates.sh # Vérification des mises à jour
│ ├── update.sh # Mise à jour automatique du système
│ ├── list-apps.sh # Liste des applications Flatpak/Snap
│ ├── list-scripts.sh # Liste des scripts disponibles
│ └── add-scripts-to-path.sh # Ajouter un dossier au PATH
├── 📂 maintenance/ # Scripts de maintenance
│ └── system-deep-clean.sh # Nettoyage avancé du système
└── 📂 docs/ # Documentation additionnelle
Après l'installation, tous les scripts sont disponibles directement dans votre terminal (sans .sh
) :
# Scripts d'administration
check-updates # Vérifier les mises à jour
update # Mettre à jour le système
list-apps # Lister les applications installées
list-scripts # Lister les scripts disponibles
add-scripts-to-path # Ajouter un dossier au PATH
# Scripts de maintenance
system-deep-clean # Nettoyage en profondeur
Exemple de workflow typique :
# 1. Vérifier les mises à jour disponibles
check-updates
# 2. Mettre à jour avec snapshot
update -s
# 3. Nettoyer le système
system-deep-clean
# 4. Vérifier les applications installées
list-apps
Si vous préférez installer manuellement :
# 1. Créer le dossier
mkdir -p ~/scripts
# 2. Copier les scripts
cp admin/*.sh ~/scripts/
# 3. Rendre exécutables
chmod +x ~/scripts/*.sh
# 4. Ajouter au PATH dans ~/.bashrc
echo '' >> ~/.bashrc
echo '# scripts perso' >> ~/.bashrc
echo 'if [[ ":$PATH:" != *":$HOME/scripts:"* ]]; then' >> ~/.bashrc
echo ' export PATH="$HOME/scripts:$PATH"' >> ~/.bashrc
echo 'fi' >> ~/.bashrc
# 5. Recharger
exec bash
Les contributions sont les bienvenues !
- Fork le projet
- Créer une branche (
git checkout -b feature/nouvelle-fonctionnalite
) - Commiter vos changements (
git commit -am 'Ajout: nouvelle fonctionnalité'
) - Pusher (
git push origin feature/nouvelle-fonctionnalite
) - Ouvrir une Pull Request
- ✅ Testez sur au moins 2 distributions (Ubuntu + Debian)
- ✅ Ajoutez une option
--help
à vos scripts - ✅ Utilisez des couleurs pour améliorer la lisibilité
- ✅ Gérez les erreurs correctement
- ✅ Documentez votre code avec des commentaires
- ✅ Respectez le style de code existant
Vous avez trouvé un bug ou avez une suggestion ? Ouvrez une issue sur GitHub !
Fonctionnalités à venir :
- Script de sauvegarde automatique (backup)
- Script d'installation d'environnement de développement
- Script de configuration serveur web (Nginx/Apache)
- Script de monitoring des ressources système en temps réel
- Script de gestion avancée des logs
- Script de configuration firewall (UFW)
- Notifications desktop pour les mises à jour importantes
- Script d'audit de sécurité
- Interface TUI (Text User Interface) pour gérer tous les scripts
- Export des rapports en HTML/PDF
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.
Nicolas DEOUX
- Email : [email protected]
- GitHub : @NDXDeveloper
- La communauté Ubuntu/Debian pour la documentation
- Tous les contributeurs du projet
- Les mainteneurs de Snap et Flatpak
Ces scripts peuvent modifier la configuration de votre système.
Recommandations :
- Testez d'abord dans une machine virtuelle ou un environnement de test
- Lisez le code avant d'exécuter (c'est du bash, c'est lisible !)
- Faites des sauvegardes régulières
- L'auteur n'est pas responsable des éventuels dommages
# Ajouter dans ~/.bashrc
alias maj='check-updates && update -s' # Vérif + mise à jour avec snapshot
alias clean='system-deep-clean --dry-run' # Simulation de nettoyage
alias apps='list-apps' # Lister les apps rapidement
alias scripts='list-scripts -d' # Liste détaillée des scripts
# Ajouter dans ~/.bashrc
check-updates --summary-only
⭐ Si ce projet vous est utile, n'hésitez pas à mettre une étoile sur GitHub !