Table of contents

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.

  1. Clavier en QWERTY au lieu d'AZERTY (et vice-versa).
  2. Cette $@!0P# de touche CapsLock activée.
  3. Cette $@!0P# de touche NumLock désactivée.
  4. Signe d'espace/retour chariot/caractère non-imprimable qui s'invite dans un copier-coller.
  5. Permissions foireuses sur les fichiers/dossiers.
  6. Permissions sur /tmp incorrectes (rappel : 1777).
  7. Variables d'environnement non/mal définies (cas typique : $PATH dans les crontabs).
  8. Un fichier .htaccess qui outrepasse les paramètres de configuration globaux ou d'un vhost Apache.
  9. Directive AllowOverride None déclarée dans la configuration qui empêche la prise en compte de fichiers .htaccess dans le DocumentRoot.
  10. Oubli du . final dans un enregistrement DNS, de fait le nom de la zone ou le $ORIGIN est concaténé à l'enregistrement.
  11. Oubli d'incrémenter le serial avant de recharger la zone DNS.
  12. La partition / ou /var/log remplie à 100%.
  13. Variante : plus d'inodes disponibles (df -i pour vérifier).
  14. Exécution d'un binaire 32 bits sur un système 64 bits (et vice-versa).
  15. Connecté à la mauvaise machine lors d'une session shell distante (on ne rigole pas, ça m'est réellement arrivé…)
  16. L'extension d'un fichier ne correspond pas à son type réel.
  17. Le service est ''chrooté'' dans une partie de l'arborescence et ne peut pas accéder à certains fichiers/sockets hors de cette arborescence.
  18. 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.
  19. Pas d'alias localhost déclaré pour l'interface de loopback dans /etc/hosts.
  20. Netmask inadapté à l'adresse IP (trop court/large).
  21. Oubli de propagation de VLAN.
  22. Un serveur DHCP fantôme interfère avec les serveurs DHCP officiels.
  23. Un service écoute déjà sur le port souhaité.
  24. Pas de route ou mauvaise route par défaut.
  25. Conflit d'adresse IP sur le réseau.
  26. 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 :