Catégorie : Systèmes

17 octobre 2016 /

Si cette erreur apparaît au démarrage de ndo2db (Centreon):

/etc/init.d/ndo2db start

Starting ndo2db:Could not bind socket: Address already in use

Cette erreur empêche le poller de démarrer, ce qui devient bloquant lorsque l’on veut recharger la configuration.
C’est dû à la présence d’un fichier de verrouillage qu’il faut supprimer pour pouvoir démarrer ndo2db.

La localisation du fichier ndo.sock a été configuré dans le fichier /usr/local/nagios/etc/ndo2db.cfg via le paramètre socket_name :

socket_name=/usr/local/nagios/var/ndo.sock

Nous pouvions aussi le localiser avec locate:

updatedb
locate ndo.sock

Pour finalement le supprimer.

rm -f /usr/local/nagios/var/ndo.sock

12 octobre 2016 /

Un processus zombie est un processus qui a été lancé par un processus parent et qui s’est terminé sans que le processus père ne soit mis au courant.

Le système a donc vidé la mémoire et les ressources utilisées par le processus zombie.
La table des processus garde cependant une trace de celui-ci, (attendant simplement le moment où le processus parent demandera au système d’exploitation l’état de son processus fils) cela crée un processus zombie.

Trop de processus zombies provoque un gaspillage énorme de ressources et peut aussi amener à ne plus pouvoir lancer de nouveaux programmes si le nombre de processus max est atteint au sein du système.

Vous pouvez identifier le nombre maximal de processus:

cat /proc/sys/kernel/pid_max

32768

Généralement, c’est la valeur 32768 qui apparaît.

Pour éviter ce genre de situation, tout processus bien écrit ne devrait pas créer de zombie et par extension, il n’est donc pas normal d’en trouver.
Pour supprimer un zombie, vous devez tuer le processus père.

Attention tout de même, le fait de tuer un processus parent peut rendre votre système instable et vous obliger à redémarrer.

Pour vérifier l’état des processus, on va utiliser la commande ps:

ps aux | grep Z

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
starmate 7294 0.0 0.0 0 0 pts/9 Z 20:47 0:00 [08_zombie]
starmate 7282 0.0 0.0 11812 2316 pts/9 S+ 20:48 0:00 grep --colour=auto Z

La colonne STAT (en gras) affiche un Z si le processus est dans l’état zombie.
C’est le cas du processus qui a le PID 7294.

Pour connaître le processus père, il suffit d’utiliser la commande pstree:

pstree -p -s 7294

init(1)───mdm(1354)───mdm(1381)───init(2525)───entropia(3509)───bash(3682)───08_zombie(7293)───08_zombie(7294)

On peut voir que le processus père est le programme 08_zombie dont le PID est 7293.
Pour tuer ce programme, on utilise la commande kill:

kill -9 7293

Bravo, vous avez tué votre premier zombie.

1 juillet 2016 /

Lors de l’exécution de la commande « setenforce 1 », vous pouvez recevoir en retour ce message:

setenforce 1

setenforce: SELinux is disabled

Cette erreur « setenforce: SELinux est désactivé » apparaît parce que vous avez désactivé définitivement SELinux sur votre serveur.

Cela peut ce vérifier via cette commande:

sestatus

setenforce command has no effect if you have selinux disabled permanently in the main configuration file.

Pour activer SELinux, éditez le fichier /etc/sysconfig/selinux :

vi /etc/sysconfig/selinux

Et définissez le paramètre SELinux sur la valeur « enforcing »:

SELINUX=enforcing
SELINUXTYPE=targeted

Si le fichier n’existe pas, créer le!

28 juin 2016 /

On commence par sauvegarder son fichier hosts:

cp /etc/hosts /etc/hosts.old

On télécharge le fichier hosts généré contenant la liste d’adresses à blacklister:

wget http://winhelp2002.mvps.org/hosts.txt

Il n’y a pas que ce site, il y en a d’autres qui en propose aussi.

On copie le fichier hosts dans son home:

cp /etc/hosts ~/

On l’incrémente avec le fichier hosts téléchargé:

cat hosts.txt >> hosts

On le copie dans /etc:

cp hosts /etc/hosts

Cela couplé avec un Adblock Plus, Ublock Origin ou autres, et c’est parfait !

stop

Si besoin d’un retour arrière:

cp /etc/hosts.old /etc/hosts

20 mai 2016 /

Lors de la duplication d’une VM, je suis tombé sur cette erreur, l’interface eth0 n’apparait pas avec la commande ifconfig:

ifconfig

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:15469561 errors:0 dropped:0 overruns:0 frame:0
TX packets:15469561 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:5183498564 (4.8 GiB) TX bytes:5183498564 (4.8 GiB)

Puis une tentative d’activation via ifup sur eth0 remonte cette fameuse erreur:

ifup eth0

Device eth0 does not seem to be present, delaying initialisation

6545

Pour solutionner le problème, et on commence par mettre à jour la carte mac avec sa nouvelle adresse:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

Puis on supprime la configuration udev des interfaces réseaux (qui seront régénérés au redémarrage de la machine):

rm -f /etc/udev/rules.d/70-persistent-net.rules
reboot