22 05 | 2011

Sonar, un écran de veille qui pingue

Written by Tanguy

Classified in : Homepage, Divers, Auto-hébergement, Debian-FR, Libre, April

Sonar

Parmi les nombreux écrans de veille fournis avec XScreenSaver, sonar(6) affiche en 3D une simulation d'écran de sonar au phosphore. Par défaut, il affiche les positions de quatre MIG et quatre F18. Comme tous les écrans de veille XScreenSaver, il peut être lancé :

  • en tant qu'écran de veille ;
  • à la main dans une fenêtre : /usr/lib/xscreensaver/sonar ;
  • à la main sur le bureau, pour impressionner la galerie : /usr/lib/xscreensaver/sonar -root.

Pinguer des hôtes

En réalité, il s'agit de son mode de simulation. Bien sûr, sonar n'est pas capable d'afficher les positions de vraies nefs, en revanche il peut afficher des données correspondant aux durées de ping d'hôtes réseau : le distance des points au centre de l'écran de sonar correspond alors à la durée d'aller-retour du paquet de ping — et l'angle est bidon, à ma connaissance. Pour cela, il a doit être installé avec setuid, pour disposer des privilèges de root afin de créer des paquets de ping. Sous Debian, pour éviter que ce setuid ne soit enlevé à la prochaine mise à jour, on utilise dpkg-statoverride(8) qui indiquera à dpkg le mode à appliquer en cas de réinstallation ou de mise à jour :

# dpkg-statoverride --update --add root root 4755 /usr/lib/xscreensaver/sonar

Il faut ensuite indiquer à sonar les hôtes à pinguer :

  • soit directement sur sa ligne de commande : sonar -ping floc.example.com,fendant.example.com,muscadet.example.com ;
  • soit dans un fichier contenant le nom ou l'adresse d'un hôte par ligne : sonar -ping .config/sonar/hosts.

Dans le second cas, le plus utile en pratique, sonar est assez flexible pour accepter un /etc/hosts ou un .ssh/known_hosts non haché.

Utiliser avec XScreenSaver

Pour que sonar soit lancé comme écran de veille XScreenSaver avec cette option, il faut éditer la ligne correspondante de son .xscreensaver, ou passer par l'interface graphique xscreensaver-demo(1) et chercher les paramètres avancés de Sonar.

Ainsi, vous pouvez maintenant donner à votre bureau des airs de salle de contrôle tout en surveillant en réalité les performances de votre réseau et la disponibilité de vos serveurs ! Choisissez le mode qui vous semblera le plus impressionnant^Wefficace entre l'écran de veille, la fenêtre dédiée ou le fond d'écran…

Je conclurai en signalant que cet écran de veille est en réalité un hommage aux origines de l'outil ping(8), qui a été nommé ainsi d'après le bruit d'un sonar.

3 comments

monday 23 may 2011 à 11:05 macsim said : #1

J'adore ;) merci pour le tips

monday 23 may 2011 à 20:53 Stéphane said : #2

Pourquoi avoir besoin de droit superutilisateur? Un utilisateur classique a le droit de faire des ping:
stephane@foehn:~$ ping tanguy.ortolo.eu
PING dick.ortolo.eu (78.232.240.21) 56(84) bytes of data.
64 bytes from dick.ortolo.eu (78.232.240.21): icmp_req=1 ttl=56 time=51.0 ms
64 bytes from dick.ortolo.eu (78.232.240.21): icmp_req=2 ttl=56 time=48.5 ms
^C
--- dick.ortolo.eu ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 48.513/49.794/51.076/1.300 ms

tuesday 24 may 2011 à 08:36 Tanguy said : #3

@Stéphane : Parce que ping est lui-même setuid root… :-)
-rwsr-xr-x 1 root root 35K 14 oct. 2010 /bin/ping*

Write a comment

What is the third letter of the word bzzwt? : 

Archives