La checklist des trucs à la con à vérifier quand ça ne fonctionne pas
Parce que même avec des années d’expérience derrière soi personne n’est à l’abri d’oublier un truc à la con qui empêche un service de démarrer voire tout un système de fonctionner, voici une liste non exhaustive mais un peu quand même des points à vérifier avant de commencer à marteler son clavier et gifler son écran. Note : cette liste n’est pas rangée par ordre d’importance.
- Clavier en QWERTY au lieu d’AZERTY (et vice-versa).
- Cette $@!0P# de touche
CapsLock
activée. - Cette $@!0P# de touche
NumLock
désactivée. - Signe d’espace/retour chariot/caractère non-imprimable qui s’invite dans un copier-coller.
- Permissions foireuses sur les fichiers/dossiers.
- Permissions sur
/tmp
incorrectes (rappel : 1777). - Variables d’environnement non/mal définies (cas typique :
$PATH
dans les crontabs). - Un fichier
.htaccess
qui outrepasse les paramètres de configuration globaux ou d’un vhost Apache. - Directive
AllowOverride None
déclarée dans la configuration qui empêche la prise en compte de fichiers.htaccess
dans leDocumentRoot
. - Oubli du
.
final dans un enregistrement DNS, de fait le nom de la zone ou le$ORIGIN
est concaténé à l’enregistrement. - Oubli d’incrémenter le serial avant de recharger la zone DNS.
- La partition
/
ou/var/log
remplie à 100%. - Variante : plus d’inodes disponibles (
df -i
pour vérifier). - Exécution d’un binaire 32 bits sur un système 64 bits (et vice-versa).
- Connecté à la mauvaise machine lors d’une session shell distante (on ne rigole pas, ça m’est réellement arrivé…)
- L’extension d’un fichier ne correspond pas à son type réel.
- Le service est “chrooté” dans une partie de l’arborescence et ne peut pas accéder à certains fichiers/sockets hors de cette arborescence.
- Pas d’interface de boucle locale (loopback, ou encore
lo
généralement à 127.0.0.1), ou une politique de filtrage réseau qui bloque les communications vers/depuis la loopback. - Pas d’alias
localhost
déclaré pour l’interface de loopback dans/etc/hosts
. - Netmask inadapté à l’adresse IP (trop court/large).
- Oubli de propagation de VLAN.
- Un serveur DHCP fantôme interfère avec les serveurs DHCP officiels.
- Un service écoute déjà sur le port souhaité.
- Pas de route ou mauvaise route par défaut.
- Conflit d’adresse IP sur le réseau.
- Routage asymétrique.
Ressources
Outils
Dans l’art du troubleshooting, vos meilleurs amis seront :
top
/htop
,iftop
lsof
,fuser
netstat
,ss
,tcpdump
strace
traceroute
,ping
,netcat
- …et bien entendu,
man
et Google
Lecture
À lire dans le même registre :
- A list of dumb things to check (en anglais)