Concrétisons Nos Idées

JAH-10 – Des petits réglages pas indispensables mais bien pratiques

Rédigé par Samaël - - 1 commentaire

Journal de bord du capitaine :
Date : 21 avril 2011
Lieu : Perdu dans le cyber espace

Pendant les longues heures que j'ai passé à jouer avec mon serveur auto-hébergé, je me suis parfois détourné de mes grands objectifs initiaux pour m'occuper de petits détails à la fois divertissants et instructifs.

Lorsque l'on se connecte à l'aide d'un terminal sur une machine distante sans aucun serveur graphique, les réglages de résolutions d'affichage du serveur sont inintéressant car sans conséquence pour le client. Néanmoins, après mon déménagement, j'ai eu l'occasion de travailler directement sur mon serveur en y connectant un écran et en travaillant dans des TTYs or dans ce cas la résolution du TTY redevient un sujet d'actualité.

Sur le web on trouve beaucoup du tutoriels sur ce réglage pour grub 1 or dans debian squeeze, grub est par défaut dans sa version 2. Avec un peu de patience, j'ai pu trouver le nom du paramètre qui m'intéressait : GRUB_LINUX_GFX_MODE. En cherchant ce paramètre dans le man et le info de grub, j'ai pu avoir les informations nécessaires sur les valeurs qu'il pouvait accepter (déterminée à l'aide de vbeinfo) et son paramètre complémentaire : GRUB_LINUX_GFX_PAYLOAD. Auparavant la configuration de grub se faisait principalement en éditant le fichier menu.lst, dorénavant la configuration de grub est "éclatée" en plusieurs fichiers et scripts qui créent le fichier de configuration final avec la commande update-grub. Il convient donc de définir ces deux paramètres au bon endroit en l'occurrence dans /etc/default/grub. Une fois ce réglage fait et grub mis à jour, j'avais, au redémarrage suivant, le menu de sélection de grub ainsi que mes TTYs en 1280 x 1024 x 32 (le dernier paramètre étant lié à la profondeur des couleurs).

De même, lorsque l'on passe de nombreuses heures à lire des fichiers de configuration dans un terminal, il est très appréciable de pouvoir bénéficier de la coloration syntaxique. Cela permet de colorer certaines parties de texte selon leur fonction, par exemple : mettre les commentaires d'un fichier de configuration dans une couleur différente du corps du fichier. J'utilise comme éditeur de texte : nano, qui est installé par défaut avec des exemples de configurations de coloration syntaxique qui ne sont néanmoins pas activées. Selon l'emplacement du fichier de configuration de nano qui est modifié pour activer cette option, la coloration syntaxique sera disponible pour tout les utilisateurs ou seulement pour un utilisateur en particulier. Étant administrateur sur ma machine, j'ai fais le choix de l'activer pour tout les utilisateurs. Il peut être bon de noter qu'une des raisons pour lesquelles la coloration syntaxique est désactivée par défaut est certainement le surcoût en ressources processeur que cela induit, en effet, des règles de coloration parfois complexes appliquées à un gros fichier peuvent occasionnellement provoquer un ralentissement [1].

Chaque fichier de configuration de coloration syntaxique regroupe un certain nombre de règles qui s'appliquent à tout les fichiers dont l'extension correspond à ce qui est inscrit dans l'en-tête du fichier. Concrètement, cela signifie par exemple que les règles de coloration pour les fichiers écrit en langage C seront regroupées dans un seul fichier prenant en charge les fichiers d'extension "c" et "h". Bien que nombreux, les types de fichiers pris en charge pour la coloration syntaxique ne sont pas exhaustif, heureusement on trouve facilement sur le web des fichiers pour compléter ceux déjà présent. Dans mon cas, j'ai trouvé un exemple de fichier gérant les .conf et .cnf auquel je n'ai eu qu'à apporter de petites modifications pour colorer les fichiers de configurations d'ejabberd.

Dans un autre domaine, par soucis d'économie d'électricité et de bruit (bien que globalement très faible), je me suis intéressé aux utilitaires de gestion de vitesse du ventilateur de ma carte mère. Pour que fancontrol puisse fonctionner, il doit récupèrer les informations de la carte mère grâce aux sensors dont j'ai brièvement parlé dans une précédente entrée de ce journal. Ces sensors permettent de connaître, par exemple, la température du contrôleur de la carte mère ainsi que celle du processeur ou encore la vitesse de rotation des ventilateurs. Lors de mon installation sous lenny cela fonctionnait parfaitement mais j'ai dû faire face à une difficulté imprévue lors de la mise à jour de mon noyau : les données de vitesse des ventilateurs et de températures ne pouvaient plus être lues. Une recherche sur le site de lm-sensors m'apprit que cela était dû à un mauvais fonctionnement de l'ACPI et que pour contourner ce problème, il fallait lancer le noyau avec une option particulière [2]. Bien que déconseillé, j'ai activé cette option en modifiant la configuration de grub. Après un redémarrage, les données étaient de nouveau accessibles et j'ai pu procéder à la configuration de fancontrol.

Les paramètres nécessaires à la configuration de fancontrol ne sont pas nombreux mais néanmoins pas forcement triviaux. La création du fichier de configuration est assistée par un programme interactif faisant par exemple varier l'intensité du courant dans un bus de la carte mère et il faut surveiller à quel moment le ventilateur s'arrête, redémarre etc. En soit cela n'est pas compliqué mais les vérifications demandées à l'utilisateur ne sont pas forcément claires. Malgré tout, j'ai fini par obtenir un fichier conforme à mes attentes.

Comme la plupart des logiciels de mon serveur fancontrol est configuré à l'aide d'un fichier texte placé dans le répertoire /etc [3]. Lorsqu'un logiciel est complexe et qu'il nécessite plusieurs fichiers de configurations, ils sont en général regroupés dans un sous répertoire de /etc tel apache2, dans le cas contraire le fichier est à la racine du répertoire. Étant débutant dans l'administration avancée d'un système, il pouvait être intéressant de garder une trace des évolutions de mes fichiers de configurations afin de pouvoir revenir en arrière à une configuration fonctionnelle en cas d'erreur de ma part. En discutant sur le salon debian-fr@chat.jabberfr.org, j'ai découvert etckeeper qui est en réalité une surcouche au gestionnaire de version git. Il permet tout simplement d'automatiser le versionnage du répertoire /etc en effectuant, par exemple, des commits automatiques après chaque installation d'un paquet. Son installation et sa configuration sont enfantin, je n'ai même pas eu à modifier les paramètres par défaut.

Dans la catégorie des petits utilitaires bien pratique, le salon debian-fr m'a également permis de découvrir ncdu qui ajoute une navigation graphique à l'aide d'une interface ncurses au programme du permettant de connaître le Disk Usage.

Conclusions :

  • Augmenter la résolution et ajouter un peu de couleurs dans un terminal est très simple et permet de rendre les heures passées sur un serveur beaucoup plus agréable.
  • De nombreux utilitaires simple à installer et à configurer existent afin de mieux contrôler son PC, il ne faut pas hésiter à s'en servir.
  • Les utilisateurs d'expérience sont une des meilleures sources pour découvrir de nouveaux logiciels bien pratiques. De plus, ils peuvent donner des retours sur leurs utilisations qui permettent de connaître les qualités et les défauts d'un logiciel

Prochaine entrée dans le journal : Du partage des données par BitTorrent.

Notes

[1] Précisons tout de même que je n'ai pu observer ce type de ralentissement que sur de très gros fichiers de logs, de plusieurs dizaines de mébioctets, et jamais sur de simples fichiers de configuration.

[2] Heureusement, rien ne disparaît jamais vraiment d'internet. Malgré la disparition du site officiel de lm-sensors, grâce à web.archive.org j'ai pu retrouver l'information qui m'avait aidée à l'époque, donc pour les curieux elle est ici .

[3] Il est amusant de noter la controverse quand à la signification du nom de ce répertoire : dans d'anciennes documentation UNIX il était appelé le répertoire etcetera car il contenait tout ce qui n'allait nulle part ailleurs, par la suite le nom fût réinterprété comme l'acronyme de Editable Text Configuration ou Extended Tool Chest.

1 commentaire

#1 benoit a dit :

Pas mal ! J'avoue que j'ai installé la Debian avec gnome sur mon serveur pour ne pas me faire chier quand je droits travailler dessus.

Écrire un commentaire

Capcha
Entrez le code de l'image :