Page suivante Page précédente Table des matières

7. Linux à peu de frais

Par Vivek Haldar

Cet article est paru en premier dans le numéro de septembre 1998 de PC Quest, le magazine phare des techniques informatique en Inde.

7.1 Introduction

Avec tous ces logiciels, partout, criant « Encore plus ! », plus d'espace disque, plus de RAM, plus de Mhz, il est réconfortant de savoir qu'il existe un sauveur, quelque part, pour ceux d'entre nous qui ne sont pas doté de la dernière technologie matérielle aguichante. Oui, je suis en train de parler de Linux.

Bien que Linux brille comme système d'exploitation réseau, et qu'il est souvent prévu comme cela, le fait est qu'il est un super système d'exploitation pour un utilisateur individuel, quelque chose que l'on pourrait utiliser sur un PC personnel non connecté au réseau.

Et dans ce cas, il y a un certain nombre de façons de tirer le maximum de votre système, même sur des machines aussi dépassées que les 486, et avec aussi peu de RAM que 8 Mo.

Maintenant veuillez vous rappeler que vous avez besoin d'être connecté root pour faire tout ce qui suit. Notre attaque se fera sur deux fronts  : diminuer l'utilisation de la RAM, et économiser de l'espace disque.

7.2 Économisez la RAM

Recompilez le noyau

Le noyau qui est pré-installé fait le travail, mais c'est un noyau fourre-tout, avec pratiquement tout dedans. Ce qui signifie qu'il est plus gros qu'il ne le devrait pour vous. Si vous compilez votre propre noyau à partir de ses sources, il peut être réduit jusqu'à 100kb par rapport à la taille du noyau vmlinuz par défaut. En outre, il est peut être très utile de savoir comment compiler le noyau. C'est plutôt simple en fait. D'abord vous le configurez, c'est-à-dire que vous dites tout ce que vous voulez dans le noyau. Puis vous le compilez.

Linux a atteint ce stade avancé dans son évolution où même la configuration du noyau peut être faite graphiquement. Les sources du noyau se trouvent habituellement dans /usr/src/linux. Pour obtenir la configuration graphique, faite un "make menuconfig" (pour les menus en mode texte), ou "make xconfig" (pour une installation graphique sous X). Une longue liste d'options configurables vous sera présentée, et avant de décider, il est recommandé de consulter les notes avisées de l'aide qui vont avec. Les notes vous donne toujours un conseil judicieux, et vous devriez le suivre. Ce faisant, vous tomberez exactement sur ce que ce qui doit être compilé dans votre noyau, et rien d'autre. Je vous suggère aussi de lire le fichier README dans le répertoire des sources du noyau. Une fois que vous avez tout configuré, quitter X si vous l'utilisez. C'est pour pouvoir faire la compilation en mode texte, sans le lourd environnement X, et avec le plus de RAM disponible.

Faire un "make dep; make zImage", allez prendre un café, et revenez après un petit bout de temps. Une fois cela fait, le README explique sans ambiguité quoi faire de votre nouveau noyau, et je ne ferais que le reproduire si j'étais vous.

Arrêtez quelques services

Lorsqu'un système Linux s'exécute, il y a un certain nombre de travaux en tâches de fond qui fonctionnent constamment, chacun dans un but particulier. Ces derniers sont appelés des démons. Par exemple, sendmail, le démon courrier électronique, est le processus qui prend soin des envois et du routage du courrier. Un certain nombre de ces démons sont démarrés à l'amorçage du système. Et pour grouper ensemble des séries de démons, que vous voulez démarrer pour des objectifs particuliers, vous avez les niveaux d'exécution (Runlevels), qui sont simplement des regroupements de services à démarrer et à stopper. Par exemple, le niveau d'exécution 1 d'un système Linux standard, à savoir le mode utilisateur individuel (le 'single user mode'), aura évidemment besoin de nettement moins de services en fonction que le niveau d'exécution 3, le mode multi-utilisateurs au maximum de ses possibilités.

Linux, par défaut, s'exécute en niveau d'exécution 3. Maintenant, il apparaît que, parmi la myriade de services démarrés dans ce niveau d'exécution, un PC personnel non connecté au réseau peut se passer de quelques uns. Par exemple, vous ne souhaitez évidemment pas gaspiller la précieuses RAM à exécuter sendmail sur une telle machine. Ouais, c'est peut être fun de s'envoyer réciproquement des Email entre root@localhost et un.utilisateur@localhost, mais l'intérêt s'évanouit rapidement

Comment enlever des services d'un niveau d'exécution (runlevel)

Avec la RedHat, c'est très simple. L'administration est définitivement un des secteurs où la RedHat marque des points par rapport aux autres distributions. Après s'être connecté root, avoir lancé X à partir d'une xterm, exécutez "tksysv". C'est l'éditeur graphique des niveaux d'exécution.

Vous allez voir six colonnes, une pour chaque niveau d'exécution. Maintenant nous allons seulement nous amuser avec le niveau d'exécution 3, celui dans lequel, normalement, Linux démarre. Chaque colonne sera en deux parties, celle du haut pour les services à amorcer au démarrage, et celle du bas pour les services à stopper lors de l'arrêt du système. Tout ce que vous avez à faire pour enlever un service particulier est de le sélectionner, et d'appuyer sur Suppr. Voilà. Se rappeler seulement de sauver vos modifications avant de quitter.

Quels services supprimer et lesquels garder

Au fait, il est beaucoup plus simple de vous dire lesquels garder. Rappelez-vous, toutes ces optimisations sont seulement pour le niveau d'exécution 3. Allons-y pour l'essentiel :

  • kerneld - rien ne fonctionnera sans ça !
  • syslog - doit être présent quelque part pour que le noyau archive les messages systèmes. Les fichiers de trace sont utiles pour savoir ce qui se passe sur votre système dans le cas où quelque chose va mal (en fait, rien ne va mal avec Linux!)
  • keytable - vous en aurez besoin si vous voulez être capable d'utiliser votre clavier !
  • rc.local - c'est là que certaines choses banales essentielles se passent, après que tous les autres services aient été démarrés.

Vous aurez simplement besoin des quatre services ci-dessus. Sans eux, comme qui dirait, « tout ne marchera pas ».

Les services que vous pourriez vouloir garder

Puis il y a les services qui ménagent la chèvre et le choux, des services non critiques, que vous pourriez vouloir garder, si vous en avez besoin, ou si vous en avez envie.

  • crond - il exécute plusieurs travaux courant de moindre importance périodiquement, le plus important d'entre eux étant de s'assurer que les fichiers de trace ne prennent pas trop de place. Vous pouvez l'utiliser si vous êtes paranoïaques.
  • atd - ce démon est requis si vous voulez utilisez des travaux avec "at", i.e. des travaux dont l'exécution commence à une heure indiquée par vous. Les personnes travaillant sur des systèmes multi-utilisateurs importants qui sont opérationnels 24 heures sur 24, tous les jours, l'utilisent pour exécuter la nuit de lourds travaux, lorsque la charge de la machine est plus légère, mais sur une simple machine personnelle, je n'en vois pas beaucoup d'utilité. Après tout, vous êtes le seul à l'utiliser!
  • gpm - cela vous permet d'utiliser la souris en mode texte. Utile parfois, seulement si vous travaillez en mode texte, et un gâchis total si vous travaillez sous X.

7.3 Économisez de l'espace disque

En fait, il n'y a pas grand chose à faire ici, à part enlever des logiciels que vous ne voulez pas. La Linux RedHat a un système de gestion de progiciels superbe, facile à utiliser, et exhaustif qui garde trace de la plupart des fichiers, autres qu'utilisateurs, de votre disque. Tout ce qui est installé sur votre système fait partie d'un progiciel (package), et les progiciels peuvent être désinstallés.

Comment supprimer un logiciel

Lancez simplement "glint", l'interface graphique du système RedHat de gestion de progiciels, à partir d'une ligne de commande lorsque vous êtes sous X, et vous obtiendrez une interface graphique de tous les logiciels installés sur votre système. Les logiciels sont classés, et apparaissent dans un navigateur de répertoires comme sous windows. Pour enlever un logiciel, simplement le sélectionner et cliquer le bouton "uninstall" sur le côté droit.

Quels logiciels j'enlève ?

Mais attention, il y a certains logiciels critiques qui ne doivent pas être désinstallés. Dans glint, il est généralement avisé de ne pas toucher à "base" et "library" sauf si vous savez exactement ce que vous faites.

Pour les autres, regarder leurs descriptions (cliquer sur le bouton "query"). Si vous n'avez pas utilisé le progiciel depuis longtemps, ou n'envisagez pas de l'utiliser, il est en général sans danger de l'enlever. Dans le cas où l'enlèvement d'un progiciel affecte n'importe quel autre progiciel, glint vous en informera. Dans l'ensemble c'est plutôt sans danger. Si vous finissez par avoir besoin du progiciel, vous pourrez toujours le réinstaller à partir du CD.

7.4 Concluons

Ce ne sont que quelques suggestions que vous pourriez essayer. Plus vous aurez l'habitude de Linux, plus vous explorerez, plus vous aurez d'idée pour l'améliorer et en tirer le maximum.

Linux est un système d'exploitation qui pardonne plus facilement l'expérimentation que les autres.
Donc pensez et testez !

_______________________________________________________________________________

Copyright © 1999, Vivek Haldar - Publié dans le n°36 de la Linux Gazette, janvier 1999

Adaptation française : Frédéric Gacquer (Neuronnexion)


Page suivante Page précédente Table des matières