Introduction
Ubuntu Server est une distribution Linux fiable et largement adoptée, mais même les systèmes les plus fiables peuvent rencontrer des difficultés qui affectent les performances ou perturbent les opérations. Savoir dépanner les problèmes courants est essentiel pour maintenir la disponibilité et garantir un fonctionnement sans faille. Dans ce guide « Dépannage des problèmes courants sur Ubuntu Server » nous explorerons des techniques pratiques pour diagnostiquer et résoudre les problèmes fréquents, tels que les échecs de démarrage, les erreurs de connectivité SSH, les problèmes réseau, et plus encore. Vous apprendrez également à utiliser efficacement les journaux système pour identifier la cause première des problèmes et restaurer les performances optimales de votre serveur.
Articles précédents :
01. Introduction à Ubuntu Server – SysOSX: AI & Cloud
02. Comment configurer votre premier serveur Ubuntu : guide du débutant – SysOSX: AI & Cloud
03.Maîtriser la ligne de commande Linux pour Ubuntu Server – SysOSX: AI & Cloud
05. Notions de base du réseau pour Ubuntu Server : guide complet – SysOSX: AI & Cloud
06. Installer et gérer des logiciels sur Ubuntu Server : guide complet – SysOSX: AI & Cloud
07.Appliquer des correctifs et mettre à jour Ubuntu Server : guide complet – SysOSX: AI & Cloud
09. Audit et journalisation du serveur Ubuntu
10. Outils de supervision système pour Ubuntu Server : guide complet – SysOSX: AI & Cloud
11. Journalisation centralisée pour le serveur Ubuntu : un guide indispensable – SysOSX: AI & Cloud
12. Audit et conformité pour Ubuntu Server : meilleures pratiques – SysOSX: AI & Cloud
14. Héberger plusieurs sites web sur un seul serveur Ubuntu : conseils utiles – SysOSX: AI & Cloud
15. Gérer le stockage et les disques sur Ubuntu Server : guide simple – SysOSX: AI & Cloud
18. Comment configurer et utiliser LVM sur Ubuntu Server : guide complet – SysOSX: AI & Cloud
21. Premiers pas avec LXD : installer des conteneurs facilement + aide-mémoire – SysOSX: AI & Cloud
22. Premiers pas avec Podman sur Ubuntu Server : guide complet – SysOSX: AI & Cloud
23. Déployer Ubuntu Server dans le cloud : guide étape par étape – SysOSX: AI & Cloud
24. Automatiser la configuration d'Ubuntu Server avec Ansible : guide pratique – SysOSX: AI & Cloud
25.Mettre à niveau Ubuntu Server de 22.04 vers 24.04 : guide étape par étape – SysOSX: AI & Cloud
Table des matières
Problèmes courants d'Ubuntu Server et comment les dépanner
1. Problèmes de démarrage
Les problèmes de démarrage peuvent survenir en raison de fichiers corrompus, de pannes matérielles ou d'erreurs de configuration.
Symptômes :
- Le serveur ne démarre pas et affiche un écran vide ou des messages d'erreur.
- Le menu GRUB est inaccessible ou manquant.
- Des erreurs de panique du noyau apparaissent au démarrage.
Étapes de dépannage :
Étape 1 : accéder au menu GRUB
Redémarrez le serveur et maintenez la touche Shift enfoncée (ou la touche Esc pour les systèmes UEFI) pour accéder au menu GRUB.
Étape 2 : démarrer en mode de récupération
Sélectionnez Advanced Options > Recovery Mode pour démarrer dans un environnement minimal à des fins de dépannage.
Étape 3 : vérifier les journaux système
Inspectez les journaux système pour rechercher les erreurs liées au processus de démarrage :
sudo journalctl -b
Recherchez les erreurs ou avertissements liés aux modules du noyau, au montage des disques ou aux services.
Étape 4 : réparer les paquets cassés
Exécutez les commandes suivantes pour réparer les paquets cassés :
sudo apt update
sudo apt install --fix-broken
Étape 5 : réinstaller GRUB
Si GRUB est corrompu, réinstallez-le :
sudo grub-install /dev/sda
sudo update-grub
Étape 6 : vérifier l'état du disque
Utilisez fsck pour vérifier et réparer les erreurs de disque :
sudo fsck /dev/sda
2. Erreurs SSH
Les erreurs SSH peuvent empêcher l'accès distant au serveur, perturbant les tâches de gestion et d'automatisation.
Symptômes :
- Impossible de se connecter au serveur via SSH.
- Erreurs « Connection refused » ou « Permission denied ».
- SSH se bloque ou expire.
Étapes de dépannage :
Étape 1 : vérifier le service SSH
Assurez-vous que le service SSH est en cours d'exécution :
sudo systemctl status ssh
Si le service est inactif, démarrez-le :
sudo systemctl start ssh
Étape 2 : vérifier les journaux SSH
Inspectez les journaux SSH pour des messages d'erreur détaillés :
sudo tail -n 50 /var/log/auth.log
Les problèmes courants incluent :
- Échecs d'authentification.
- Blocages d'adresses IP dus à fail2ban ou aux règles du pare-feu.
Étape 3 : vérifier les règles du pare-feu
Assurez-vous que le pare-feu autorise le trafic SSH :
sudo ufw allow OpenSSH
sudo ufw status
Étape 4 : inspecter la configuration SSH
Vérifiez la présence d'erreurs dans le fichier de configuration SSH :
sudo nano /etc/ssh/sshd_config
Redémarrez SSH après avoir apporté des modifications :
sudo systemctl restart ssh
Étape 5 : vérifier la connectivité réseau
Assurez-vous que le serveur est joignable :
ping <server-ip>
3. Problèmes de connectivité réseau
Les problèmes réseau peuvent empêcher le serveur d'accéder à Internet ou de communiquer avec d'autres appareils.
Symptômes :
- Impossible d'envoyer un ping vers des sites web externes ou d'autres serveurs.
- Erreurs de résolution DNS.
- Les interfaces réseau sont hors service ou mal configurées.
Étapes de dépannage :
Étape 1 : vérifier les interfaces réseau
Répertoriez les interfaces réseau actives :
ip a
Si une interface est hors service, activez-la :
sudo ip link set <interface-name> up
Étape 2 : vérifier les journaux pour les erreurs réseau
Inspectez les journaux liés au réseau pour détecter d'éventuels problèmes :
sudo journalctl -u systemd-networkd
Étape 3 : vérifier la configuration IP
Vérifiez l'adresse IP, la passerelle et les paramètres DNS du serveur :
cat /etc/netplan/*.yaml
Si la configuration est incorrecte, modifiez le fichier et appliquez les modifications :
sudo nano /etc/netplan/*.yaml
sudo netplan apply
Exemple de configuration Netplan :
network:
version: 2
ethernets:
eth0:
dhcp4: true
Étape 4 : tester la résolution DNS
Vérifiez la résolution DNS :
nslookup google.com
Si la résolution DNS échoue, mettez à jour /etc/resolv.conf avec des serveurs DNS valides :
nameserver 8.8.8.8
nameserver 8.8.4.4
4. Problèmes d'espace disque
Un faible espace disque peut provoquer le plantage d'applications ou empêcher les mises à jour.
Symptômes :
- Erreurs « No space left on device ».
- Le serveur ne répond plus.
Étapes de dépannage :
Étape 1 : vérifier l'utilisation du disque
Utilisez df pour vérifier l'utilisation du disque :
df -h
Étape 2 : identifier les fichiers volumineux
Trouvez les fichiers volumineux qui consomment de l'espace disque :
sudo du -ah / | sort -rh | head -n 10
Étape 3 : vérifier la taille des fichiers journaux
Les fichiers journaux peuvent devenir excessivement volumineux. Vérifiez /var/log pour repérer les journaux surdimensionnés :
sudo du -sh /var/log/*
Supprimez ou archivez les anciens journaux :
sudo rm -rf /var/log/*.gz
sudo rm -rf /var/log/*.log.old
Étape 4 : étendre l'espace disque
Si le disque est plein, étendez le volume (les plateformes cloud comme AWS, Azure et GCP permettent de redimensionner les disques).
5. Erreurs d'installation de paquets
Les erreurs d'installation de paquets peuvent survenir en raison de dépendances cassées ou de problèmes de dépôts.
Symptômes :
- Erreurs « Unable to locate package » ou « Dependency errors » lors de l'installation.
Étapes de dépannage :
Étape 1 : vérifier les journaux pour les erreurs de paquets
Inspectez les journaux apt pour des erreurs détaillées :
sudo tail -n 50 /var/log/apt/history.log
Étape 2 : mettre à jour l'index des paquets
Assurez-vous que l'index des paquets est à jour :
sudo apt update
Étape 3 : corriger les dépendances cassées
Exécutez la commande suivante pour résoudre les problèmes de dépendances :
sudo apt install --fix-broken
Étape 4 : ajouter les dépôts manquants
Si un paquet n'est pas disponible, ajoutez le dépôt requis :
sudo add-apt-repository universe
sudo apt update
6. Utilisation élevée du processeur ou de la mémoire
Une utilisation excessive des ressources peut entraîner une dégradation des performances et des temps de réponse lents.
Symptômes :
- Le serveur ne répond plus.
- Les applications plantent ou expirent.
Étapes de dépannage :
Étape 1 : surveiller l'utilisation des ressources
Utilisez top ou htop pour surveiller l'utilisation du processeur et de la mémoire :
top
Étape 2 : vérifier les journaux pour les erreurs d'application
Inspectez les journaux spécifiques aux applications dans /var/log pour rechercher les erreurs provoquant une utilisation élevée des ressources.
Étape 3 : identifier les processus gourmands en ressources
Trouvez les processus consommant des ressources excessives :
ps aux --sort=-%cpu | head -n 10
ps aux --sort=-%mem | head -n 10
Étape 4 : arrêter les processus inutiles
Arrêtez les processus gourmands en ressources :
sudo kill <pid>
Utiliser les journaux pour le dépannage
Les journaux sont l'un des outils les plus précieux pour dépanner les problèmes de serveur. Voici comment vérifier les journaux pour les problèmes courants :
- Journaux système:
sudo journalctl -xeFournit des journaux détaillés sur les erreurs et avertissements au niveau du système. - Journaux d'authentification:
sudo tail -n 50 /var/log/auth.logUtiles pour diagnostiquer les problèmes liés à SSH et à la connexion. - Journaux spécifiques aux applications:
Vérifiez/var/logpour les journaux spécifiques aux applications (par exemple, Apache, MySQL). - Journaux du noyau:
sudo dmesgAffiche les messages liés au noyau, utiles pour les problèmes matériels et de démarrage.
Conclusion
Le dépannage des problèmes d'Ubuntu Server exige une approche systématique pour diagnostiquer et résoudre les problèmes. Dans ce guide, nous avons couvert :
- La résolution des problèmes de démarrage, des erreurs SSH et des problèmes de connectivité réseau.
- La correction des erreurs d'espace disque et d'installation de paquets.
- L'utilisation efficace des journaux pour diagnostiquer les problèmes.
En suivant ces étapes et en tirant parti des journaux, vous pouvez identifier et corriger efficacement les problèmes de serveur, garantissant un environnement Ubuntu Server stable et fiable.