Données du problème
J’ai un serveur avec écran, dans une armoire fermée à clef avec un porte transparente qui démarre sans interface graphique. Je souhaitais faire apparaître un htop systématiquement à chaque démarrage.
Méthode testée sur Ubuntu, mais pouvant certainement être adaptée à d’autres distributions.
Il suffit de mettre le code suivant dans le fichier /etc/event.d/tty1
# tty1 - getty # # This service maintains a getty on tty1 from the point the system is # started until it is shut down again. start on stopped rc2 start on stopped rc3 start on stopped rc4 start on stopped rc5 stop on runlevel 0 stop on runlevel 1 stop on runlevel 6 respawn exec /sbin/getty 38400 tty1 -nl /usr/bin/htop |
Attention
- Dans cette configuration, le clavier est actif. Il est donc utilisable par n’importe quel utilisateur accédant au clavier.
- Le logiciel est lancé en root! Donc, si le clavier est accessible, n’importe quel utilisateur peut killer un processus appartenant à un autre (même init!)
- htop consomme de la mémoire et de la puissance processeur. Même si c’est relativement peu, c’est à prendre en compte.
Du fait que le clavier est inacessible, dans mon cas, cela n’est pas un problème, mais c’est à garder en tête avant d’activer cette fonctionalité.
Update du 24/01/2011
Depuis que la version de Upstart a changé sur Ubuntu, cela ne fonctionne plus exactement de la même manière:
- Il faut modifier le fichier /etc/init/tty1.conf
- Il faut remplacer la ligne exec /sbin/getty -8 38400 tty1 par exec /usr/bin/htop </dev/tty6 >/dev/tty6
- Le clavier est toujours actif! Attention: si vous avez installé GPM, la souris l’est aussi et permet d’utiliser les menus de htop! Pensez à la mettre sous clef.