Category Archives: Outils système

Montage automatique de partages NFS

Dans certains cas de figure il peut arriver d'avoir besoins de monter différents partages NFS d'un serveur à un autre. On va donc se retrouver sur le serveur client NFS avec un fichier fstab volumineux, ce qui peut ralentir voir poser des problèmes en cas de redémarrage du serveur. De plus certaines montages ne sont peut être pas nécessaires tout le temps et donc utilisent le réseau pour rien.

Une solution est de déporter les montages avec un outils comme autofs. Ce qui présente plusieurs avantages :

  • on allège les montages au démarrage, donc le serveur démarre plus vite
  • les montages se font que quand c'est nécessaire et se démontent au bout d'un laps de temps défini

Lire la suite »

Montage de répertoire distant avec sshfs

Il peut parfois être nécessaire de monter un répertoire d'une machine distante en passant par Internet, on ne peut pas utiliser les système de fichiers réseau habituels tels que NFS et Samba.

On va donc utiliser sshfs qui va nous permettre de monter un répertoire en passant par un tunnel ssh.

Lire la suite »

Surveiller l'utilisation de la mémoire

Les commandes top et htop ne permettent pas toujours de voir toute la mémoire utilisée par une application, je dis bien une application et non pas un processus. Il est intéressant de pouvoir voir la mémoire utilisée par une application.

Le script ps_mem permet d'avoir une estimation assez proche de cette utilisation.

Utilisation classique :

# ./ps_mem.py
 Private  +   Shared  =  RAM used    Program

100.0 KiB + 232.0 KiB = 332.0 KiB    mdadm
 68.0 KiB + 508.0 KiB = 576.0 KiB    logger
136.0 KiB + 472.0 KiB = 608.0 KiB    smartd
 80.0 KiB + 548.0 KiB = 628.0 KiB    init
152.0 KiB + 488.0 KiB = 640.0 KiB    dbus-daemon
264.0 KiB + 484.0 KiB = 748.0 KiB    udevd
448.0 KiB + 404.0 KiB = 852.0 KiB    getty (7)
140.0 KiB + 820.0 KiB = 960.0 KiB    unlinkd
188.0 KiB + 792.0 KiB = 980.0 KiB    cron
544.0 KiB + 580.0 KiB =   1.1 MiB    proftpd
460.0 KiB + 720.0 KiB =   1.2 MiB    screen
200.0 KiB +   1.0 MiB =   1.2 MiB    mysqld_safe
720.0 KiB + 960.0 KiB =   1.6 MiB    rsyslogd
312.0 KiB +   1.4 MiB =   1.7 MiB    pickup
336.0 KiB +   1.4 MiB =   1.8 MiB    master
372.0 KiB +   1.5 MiB =   1.9 MiB    qmgr
836.0 KiB +   1.3 MiB =   2.2 MiB    bash (2)
  1.8 MiB + 388.0 KiB =   2.2 MiB    cronolog (33)
824.0 KiB +   2.5 MiB =   3.3 MiB    sshd (2)
 12.1 MiB +   1.7 MiB =  13.8 MiB    named
 18.2 MiB +   2.6 MiB =  20.8 MiB    squid3 (2)
 46.3 MiB +   5.6 MiB =  51.9 MiB    mysqld
140.9 MiB +  36.7 MiB = 177.6 MiB    apache2 (12)

 Private  +   Shared  =  RAM used    Program

Warning: Shared memory is not reported accurately by this system.
Values reported could be too large, and totals are not reported

 

Ce qui peut nous intéresser c'est de récupérer seulement les applications qui utilisent plus d'1 MiB et de trier tout ceci dans l'ordre du plus consomateur au moins consomateur :

./ps_mem.py | grep -v Private | awk '{ print $7 " " $8 " " $9}' | grep -v KiB \
| sort -nr
Warning: Shared memory is not reported accurately by this system.
Values reported could be too large, and totals are not reported
183.1 MiB apache2
51.9 MiB mysqld
20.8 MiB squid3
13.8 MiB named
3.3 MiB sshd
2.2 MiB cronolog
2.2 MiB bash
1.9 MiB qmgr
1.8 MiB master
1.7 MiB pickup
1.6 MiB rsyslogd
1.2 MiB screen
1.2 MiB mysqld_safe
1.1 MiB proftpd