Trucs & Astuces Software

De BlaxWiki
Aller à la navigationAller à la recherche

Cette page regroupe quelques trucs & astuces sur des problèmes liés à des Software

  • Apache "Could not reliably determine..."
"httpd: Could not reliably determine the server's fully qualified domain name, using preprod.agrasc.notaires.fr for ServerName"
Cela arrive quand on il manque dans le /etc/hosts le nom du serveur sur l'ip privé (de l'avoir en 127.0.0.1 ne change rien) et que ce nom de serveur est précisé dans la configuration
d'apache : il faut un ServerName dans la configuration globale d'apache et pas seulement dans un virtual host

Un /etc/hosts correct :
127.0.0.1       localhost.localdomain localhost ben.blaxeen.com ben
::1             localhost6.localdomain6 localhost6
192.168.203.71  ben.blaxeen.com ben
  • Apache problème de virtual host
Erreur : [warn] _default_ VirtualHost overlap on port 443, the first has precedence && [warn] _default_ VirtualHost overlap on port 80, the first has precedence
Solution : Cela arrive quand on a defini à la fois des <VirtualHost *:80>, des <VirtualHost *:443> et qu on rajoute un <VirtualHost *>. Il faut bien avoir un NameVirtualHost *:80 et 
NameVirtualHost *:443

Erreur : [warn] NameVirtualHost *:80 has no VirtualHosts
Solution : Cela arrive quand on a un NameVirtualHost *:80 mais pas de <VirtualHost *:80>
  • Mail
Il peut arriver que des mails envoyés sur root en local termine dans la mailbox du user nobody. Si le fichier /etc/aliases est correct (lancer la commande newaliases si il y a une 
modif), il faut regarder du cote du main.cf au niveau de mailbox_command, mettre procmail -a $DOMAIN -d $LOGNAME au lieu de procmail -a "$EXTENSION"
  • Mail de la crontab et de logrotate
Lorsqu'une commande est lancée dans la crontab, elle génère toujours un mail vers root avec comme contenu la sortie standard et / ou la sortie d'erreur de la commande lancé via la
crontab. Pour éviter cela, rajouter à la fin des lignes de /etc/crontab :  >> /dev/null 2>&1 (pour que la sortie standard soit  aussi redirige vers /dev/null comme pour la sortie 
d'erreur).
Si un service comme squid envoie ses logs vers rsyslog, qui aura donc une ligne "local6.*  /var/log/squid/squid.log", le fichier /etc/logrotate.d/squid devra donc aussi être modifié
pour ne pas recevoir de mail lors du reload de rsyslog : "/etc/init.d/syslog-ng reload > /dev/null 2>&1"
  • Process & consommation de ressouce cpu
Il peut arriver que mysql ou un autre process consomme soudainement trop de ressources cpu sans raison. Cela peut être  suite au changement a la perte de temps, ou comme en 2012 où
une seconde a été rajoutée fin juin (seconde intercalaire)
(http://blog.mozilla.org/it/2012/06/30/mysql-and-the-leap-second-high-cpu-and-the-fix/). Il faut dans ce cas exécuter les commandes suivantes :
# export LANG=en_US.utf-8
# /etc/init.d/ntpd stop; date -s "`date`" ; /etc/init.d/ntpd start
  • Serveur syslog
Sur un serveur de log (rsyslog, syslog-ng ou autres), il faut le configurer (généralement dans le script d'init) afin qu'il ne fasse pas de résolution dns lorsqu'il recoit des logs 
des différents serveurs, cela permet de gagner du temps, la résolution dns étant inutiles. On peut en plus renseigner le /etc/hosts du serveur syslog avec le nom des machines qui 
envoient les logs