Formations en informatique
Accueil > Paramétrer Linux > Configurer une application sous Linux

Configurer une application sous Linux

PDF 

 

1. Configurer une application sous Linux

1.1. Principe

 

Sous Linux, l'essentiel de la configuration se fait par le biais de fichiers texte. Ces fichiers peuvent être générés ou corrigés par le biais d'une interface graphique et le plus souvent directement à l'aide d'un éditeur texte.

 

Un fichier de configuration est généralement lu à un moment bien précis, typiquement au moment de lancer l'application concernée. Ce fichier n'est a priori pas relu tant que l'on ne le demande pas explicitement. Si ce fichier était lu au démarrage de l'application, il faudra donc probablement relancer cette application pour qu'elle en tienne compte ou lui dire explicitement de relire ce fichier.

 

Exemples :

  • Vous venez de personnaliser la configuration d'un serveur web en modifiant ses fichiers de configuration. Vous devez le relancer pour qu'il en tienne compte.
  • Vous venez de personnaliser les fichiers de configuration de votre shell. Tant que vous ne lancez pas un nouveau shell, ces fichiers ne sont pas pris en compte.

1.2. Profil global et profil utilisateur

 

Pour la plupart des applications Linux, la configuration se découpe en deux parties :

  • un profil global à tous les utilisateurs, qui se traduit par des fichiers de configuration situés dans /etc
  • une partie spécifique à chaque utilisateur, qui se traduit par des fichiers de configuration situés dans son home directory pour l'utilisateur courant.

Rappelons que si mando est un utilisateur local à la machine, son home directory noté ~mando est équivalent à /home/mando pour l'utilisateur mando. Si on est loggué en mando, alors ~ et ~mando on la même signification. Le caractère ~ "tilde" s'obtient en appuyant sur alt gr 2.

 

Les fichiers de configuration stockés dans /etc ne sont modifiables que par l'administrateur de la machine, c'est-à-dire l'utilisateur root. Lorsqu'une application est volumineuse, ses fichiers sont rassemblés dans un sous répertoire de /etc qui porte généralement son nom (par exemple /etc/iceweasel pour le logiciel iceweasel).


Un profil utilisateur est stocké un ensemble d'un ou plusieurs fichiers stockés à la racine du home directory de cet utilisateur (par exemple directement dans /home/mando). Lorsque ces fichiers sont trop nombreux, ils sont regroupés dans un répertoire.

 

1.3. Droits

 

Les profil globaux, en tant que fichier de /etc, appartiennent normalement toujours à root et ne sont modifiables que par lui. Ceci évite qu'un utilisateur qui n'a pas des droits root puisse nuire aux autres utilisateurs de l'ordinateur.

 

Un profil utilisateur est généralement créé par cette utilisateur (typiquement la première fois qu'il lance cette application). Aussi bien lui que root peuvent lire et modifier ce profil.

 

1.4. Priorité

 

Si le profil utilisateur et le profil global divergent sur un point de configuration, le profil utilisateur prend en général le pas sur le profil global. En effet, celui-ci est généralement lu après le profil global et peut donc corriger les réglages fait par le profil global.

 

2. Conventions

2.1. Fichiers cachés

 

Afin de ne pas mélanger les documents d'un utilisateur avec ses profils, ces derniers sont stockés sous forme de fichiers cachés. Un fichier caché est un fichier dont le nom commence par un ".".  C'est sa seule nuance par rapport à un fichier ordinaire. Il n'est pas affiché par défaut dans un explorateur de fichier ou avec la commande ls.

 

Pour afficher les profils stockés dans votre home, tapez la commande :

 

ls -a ~

 

Lorsqu'un profil est composé de nombreux fichiers, ceux-ci sont souvent rassemblés dans un répertoire cachés. Par exemple, le profil KDE de l'utilisateur mando est stocké dans le répertoire ~mando/.kde/.

 

2.2. Convention de nommage

 

Voici quelques conventions de nommage classiques ;

  • Un fichier lu au démarrage d'une application est souvent postifixé "rc".
  • Un fichier de configuration global relatif à l'application xxx est souvent rangé dans /etc/xxx.
  • Un fichier de profil utilisateur relatif à l'application xxx est souvent rangé dans ~/.xxx.

 

Exemples :

  1. /etc/bash.bashrc est lu au lancement de l'application bash par tous les utilisateurs
  2. ~mando/.bashrc est lu au lancement de l'application bash lancée par l'utilisateur mando.
  3. /etc/vim/vimrc est lu au démarrage de vim par tous les utilisateurs
  4. ~mando/.vimrc est lu au démarrage de vim s'il est lancé par mando.

 

2.3. Quand vous modifiez un fichier de configuration

 

N'hésitez pas à rajouter un petit commentaire pour indiquer que vous avez sciemment personnaliser ce fichier. Généralement le caractère # permet d'écrire des commentaire dans un fichier. Il y a quelques exceptions (notamment les fichiers de configuration de vim).

 

Supposons par exemple que vous vouliez modifier le fichier /etc/bash.bashrc, n'hésitez pas à rajoutez au début et à la fin de la section que vous modifiez/ajoutez une ligne du genre "#config perso". Cela vous aidera par la suite et notamment au cours des mises à jour à venir.

3. Problème de configuration

3.1. Mise à jour

 

Lorsque vous mettez des paquets à jour, il peut arriver que les fichiers de /etc/ soient également corrigés. Si vous avez personnalisé un tel fichier, votre gestionnaire de paquets devrait vous demander au moment de déployer la mise à jour ce qu'il doit faire et vous permettre d'afficher un comparatif.

 

  • Si au moment d'afficher ce comparatif, la seule différence qui apparaît concerne le point de configuration que vous avez personnalisé, vous pouvez conserver votre fichier de configuration.
  • Si ce fichier de vous dit rien, prenez la version du mainteneur.
  • Dans le doute ouvrez un autre terminal et copiez votre fichier de configuration quelque part et prenez la version du mainteneur.

3.2. L'application ne marche plus pour aucun utilisateur

 

Ceci ne devrait vous arriver que si l'application en question ne marche pour aucun utilisateur.

 

Les fichiers de configuration présents dans /etc ont été générés au moment d'installer un paquet. Il suffit donc de réinstaller ou de reconfigurer ce paquet pour la restaurer. Supposons que le paquet en question soit vim et qu'on soit loggué en root sous Debian.

  • dpkg-reconfigure vim : reconfigure le paquet vim avec sa configuration par défaut,
  • aptitude purge vim : désinstalle vim et supprime sa configuration globale (dans /etc),
  • aptitude remove vim : désinstalle vim en conservant sa configuration globale (dans /etc),
  • aptitude reinstall vim : réinstalle vim en régénérant sa configuration globale/

Toutefois, manipuler des paquets n'impacte jamais les profils utilisateurs. Cela signifie que si une application fonctionne mal avec certains utilisateurs mais pas tous, leur profil est probablement corrompu.

 

3.3. L'application ne marche plus certains utilisateurs

 

Dans ce cas le profil de cet utilisateur est probablement corrompu.

 

3.3.1. Principe

 

Vous pouvez commencer par créer un nouvel utilisateur (en root) pour voir s'il est soumis aux mêmes problèmes avec la commande adduser (à lancer en root). Exemple :

 

adduser toto

 

Si pour cet utilisateur l'application fonctionne correctement, vous êtes probablement dans le cas d'un profil corrompu.

 

Dans un premier temps renommez le profil corrompu et relancez l'application. Il sera toujours temps de le supprimer par la suite. En effet, un profil peut contenir des informations précieuses. Typiquement, vos emails sont en réalité stockés dans le profil de votre application qui sert à retirer les mails. Supprimer ce profil revient donc à supprimer vos emails !

 

3.3.2. Exemple

 

Supposons que l'application vim fonctionne mal juste pour l'utilisateur mando, tentez renommer son profil pour voir si cela règle le problème. Il faut pour cela regarder quels fichiers sont stockés dans son profil par rapport à cette application :

 

ls ~/mando/.vim*

 

Typiquement vim stocke ses informations dans ~/.vimrc, ~/.vim/ et ~/.viminfo. Dans ce cas :

 

mv ~mando/.vim ~mando/.vim.bak

mv ~mando/.vimrc ~mando/.vimrc

mv ~mando/.viminfo ~mando/.viminfo

 

Ensuite tentez de lancer vim avec cet utilisateur pour voir si cela règle le problème... Vous pouvez ensuite petit à petit écraser le profil généré avec votre ancien profil pour voir quel fichier du profil est mis en cause.

 

mv ~/.vimrc.bak ~/.vimrc

 

(faire un test, et ainsi de suite pour chaque aspect du profil).

 

Découvrez nos formations et venez poser vos questions sur notre nouveau forum.

Contrat Creative Commons

L'ensemble des tutoriels Mistra by Mistra est mis à disposition selon les termes de la licence Creative Commons Paternité - Partage des Conditions Initiales à l'Identique 3.0 Unported. Les autorisations au-delà du champ de cette licence peuvent être obtenues à http://www.mistra.fr/contact-mistra.html.