Sophie

Sophie

distrib > Mandriva > 9.0 > i586 > by-pkgid > 0d5cd12c82d627a82c59047e1ba7b8a9 > files > 1630

howto-html-fr-9.0-0.2mdk.noarch.rpm

<HTML>
<HEAD>
<TITLE>Comment donner une configuration par d&eacute;faut</TITLE>
</HEAD>
<BODY>
<H1>4. <A NAME="s4"></A>Comment donner une configuration par d&eacute;faut</H1>
<P>
<A HREF="Colour-ls.html#toc4">Contenu de cette section</A></P>

<P>Ceci est r&eacute;alis&eacute; individuellement pour chaque console virtuelle &agrave; l'aide de la
s&eacute;quence ANSI :
<SL>Cette information a &eacute;t&eacute; trouv&eacute;e en parcourant le source 
du noyau. Je ne peux donc dire s'il s'agit d'un standard.</SL>

<PRE>
        ESC [ 8 ]
</PRE>

qui sp&eacute;cifie les valeurs par d&eacute;faut des couleurs d'avant et arri&egrave;re-plan.
La s&eacute;quence ANSI de recomposition des attributs (<CODE>ESC [ m</CODE>) permet alors
de prendre en compte ces couleurs plut&ocirc;t que du blanc sur fond noir.</P>
<P>La m&eacute;thode d&eacute;crite ici est suppos&eacute;e &ecirc;tre pour des syst&egrave;mes "isol&eacute;s", dans
le sens o&ugrave; les logins ne se font que sur la console. Ceci ne marche pas forc&eacute;ment
pour des logins se faisant depuis des terminaux distants, des connexions par modem 
ou d'autres machines, qui dans ce cas ne comprendrait pas les s&eacute;quences.
L'interpr&eacute;tation des codes ANSI est une propri&eacute;t&eacute; des consoles Linux et n'existe 
que dans peu d'autres programmes de terminal.</P>
<P></P>
<P>Si vous &ecirc;tes sur un syst&egrave;me "isol&eacute;", un bon moyen de faire prendre en compte
les couleurs pour chaque console est de modifier le fichier <CODE>/etc/issue</CODE>, et
d'en voir le r&eacute;sultat en se d&eacute;logeant. G&eacute;n&eacute;ralement (et en particulier dans les 
distributions Slackware) ce fichier est lu et affich&eacute; &agrave; chaque reboot.
Ainsi si votre <CODE>/etc/rc.d/rc.S</CODE> contient (aux environs de la ligne 75) :
<PRE>
  # Initialise /etc/issue et /etc/motd pour qu'il donne la version du noyau utilise
  # ATTENTION : les fichiers /ETC/ISSUE AND /ETC/MOTD sont crees a chaque boot.
  # Mettez ceci en commentaire si vous desirez personnaliser une bonne fois pour
  # toute ces fichiers.
  echo &quot;&quot;&gt; /etc/issue
  echo Bienvenue dans le monde merveilleux de Linux \
       `/bin/uname -a | /bin/cut -d\  -f3`. &gt;&gt; /etc/issue
  echo &gt;&gt; /etc/issue
</PRE>
</P>
<P></P>
<P>Mettez ces lignes en commentaire ou modifiez comme suit :
<PRE>
...
  # Mettez ceci en commentaire si vous desirez personnaliser une bonne fois pour
  # toute ces fichiers
  ESCAPE=&quot;&lt;remplacez ici par un seul caractere d'echappement&gt;&quot;
  echo &quot;${ESCAPE}[H${ESCAPE}[37;44m${ESCAPE}[8]${ESCAPE}[2J&quot;&gt; /etc/issue
...
</PRE>
</P>
<P>Mon shell de d&eacute;marrage ne comprend pas le <CODE>\033</CODE>, je dois alors sp&eacute;cifier
le code ASCII 27 dans mon script comme indiqu&eacute; dans le premier paragraphe.
La ligne ressemble alors &agrave; <CODE>ESCAPE="&circ;["</CODE>.</P>
<P>Ce code a pour effet de ramener le curseur en d&eacute;but de fen&ecirc;tre, changer les couleurs,
sauver la s&eacute;lection et effacer l'&eacute;cran. Cette modification n'aura un effet 
qu'au prochain reboot.</P>
<P>Si votre "bo&icirc;te  Linux" n'est pas "isol&eacute;e", il se peut que
certains probl&egrave;mes apparaissent lors des connexions des utilisateurs distants.
Ceci est d&ucirc; au fait que leur terminal ne comprend pas les s&eacute;quences d'&eacute;chappement ANSI.</P>
<P>Vous devez alors ajouter au niveau de l'utilisateur :
<HR>
<PRE>
.profile (sh/bash) :
  if [ &quot;$TERM&quot; = &quot;console&quot; ]; then
      echo &quot;\033[37;44m\033[8]&quot;
  fi

ou

.login (csh/tcsh) :
  if ( &quot;$TERM&quot; == &quot;console&quot; ) then
    echo &quot;\033[37;44m\033[8]&quot;
  endif
</PRE>
<HR>
</P>
<P>Si l'on d&eacute;sire que la modification se fasse pour tous les utilisateurs du syst&egrave;me,
il suffit alors que <CODE>root</CODE> modifie les fichiers <CODE>/etc/profile</CODE> ou
<CODE>/etc/csh.login</CODE>.
(Je rappelle une derni&egrave;re fois que si le shell ne peut interpr&eacute;ter les <CODE>\0xx</CODE>
(en particulier l'&eacute;chappement <CODE>\033</CODE>), il suffit de remplacer ce dernier par 
"ESC".</P>
<P></P>
<P></P>
<HR>
<P>
Chapitre <A HREF="Colour-ls-5.html">suivant</A>,
Chapitre <A HREF="Colour-ls-3.html">Pr&eacute;c&eacute;dent</A>
<P>
Table des mati&egrave;res de <A HREF="Colour-ls.html#toc4">ce chapitre</A>,
 <A HREF="Colour-ls.html#toc">Table des mati&egrave;res</A> g&eacute;n&eacute;rale</P>
<P>
<A HREF="Colour-ls.html">D&eacute;but</A> du document,
 <A HREF="#0"> D&eacute;but de ce chapitre</A></P>
</BODY>
</HTML>