Tous les noyaux Linux fournis avec les distributions sont assez bouffis et contiennent plus de fonctions que ce qu'aucun d'entre nous utilisera jamais. Si vous n'avez pas recompil� votre propre noyau, il est fortement recommand� de le faire. Comment recompiler un noyau est en dehors du domaine de ce document mais d'excellents livres et guides sur Linux couvrent ce sujet en d�tails.
Si vous recompilez votre noyau, pensez � ne pas inclure plus de fonctions que ce dont vous avez besoin. Par exemple : combien d'entre vous ont inclus le support de PLIP dans leur noyau ? Combien de ceux qui l'ont inclus l'utilisent effectivement ? Les noyaux plus petits requi�rent moins de temps pour se charger, utilisent moins de m�moire et de cycles CPU.
Autre possibilit� : les modules. Je ne les utilise pas personnellement parce que je les trouve encombrants. Si vous les utilisez et les aimez alors ils peuvent aider � soulager "l'embonpoint du noyau".
Les consoles virtuelles sont un merveilleux moyen de lib�rer de la m�moire. La majorit� des distributions de Linux lance environ 6 consoles par d�faut. En moyenne l'ex�cution de 6 consoles n�cessite � peu pr�s 4Mo de m�moire. En retirer deux ou trois peut lib�rer quelques m�gas de m�moire.
La plupart des utilisateurs peuvent d�marrer en ne lan�ant que 3 ou 4 consoles. Combien vous choisirez d'en retirer est une question de pr�f�rences personnelles. Souvenez vous simplement que moins vous en ex�cuterez, plus vos applications auront de la m�moire pour tourner.
Le fichier qui indique combien de consoles virtuelles doivent �tre lanc�es est
/etc/inittab
. Pour d�sactiver des consoles :
/etc/inittab
dans un �diteur de texte.c1:12345:respawn:/sbin/getty tty1 38400 linux
Commencez par le nombre le plus �lev� (ici c6) et commentez la ligne en
ins�rant un '#
' � la premi�re colonne. R�p�tez cette �tape autant de
fois que n�cessaire. Souvenez vous que chaque ligne que vous mettez en
commentaire est une console virtuelle de moins.Beaucoup de distributions de Linux lancent de nombreux d�mons dont la majorit�
d'entre nous n'aura jamais l'usage. La plupart de ces d�mons se charge par
des scripts. La localisation de ces scripts, ainsi que leur nom d�pendent de votre
distribution de Linux. Les scripts de d�marrage de la Slackware sont regroup�s
dans /etc/rc.d/rc.*
.
Avant de poursuivre, une connaissance de la programmation de shell-scripts Unix serait un avantage certain. Si toutefois vous n'avez aucune exp�rience dans l'�criture de scripts pour Unix, ce qui suit est probablement la plus courte introduction � la programmation de scripts jamais �crite.
Prenez le script suivant :
#!/bin/sh
echo "salut tout le monde"
#echo "adieu monde cruel"
Ce script va afficher la cha�ne "salut tout le monde"
. Les shell scripts
doivent contenir la ligne
"#!/bin/sh"
en toute premi�re ligne. Apr�s cela chaque ligne sera
ex�cut�e comme si vous l'aviez tap�e au clavier (consid�rez les scripts comme
rien d'autre que des macros du clavier am�lior�es).
Les lignes qui commencent par un '#
' sont dites comment�es car
elles ne sont pas ex�cut�es par l'interpr�teur de commande. Beaucoup de scripts
de d�marrage, quand ils chargent des d�mons, ressemblent � :
if conditionquelconque
do quelquechose
fi
Ce que vous voulez faire, c'est mettre en commentaire toutes les lignes allant
de la marque if
� la marque fi
.
Vouloir localiser o� un d�mon est charg� c'est rechercher le nom du d�mon dans
les scripts de d�marrage. Si je voulais trouver o� inetd
est charg�
dans la Slackware je ferais :
cd /etc/rc.d
grep -n inetd rc.*
inetd
permet de faire des choses telles que telnet, ftp et envoyer des
requ�tes de type talk
� votre machine. Si vous n'utilisez pas votre syst�me en
tant que serveur et que vous n'avez pas besoin d'acc�der � l'un de ces services
� distance vous pouvez supprimer inetd
.
lpd
est utilis� pour imprimer des fichiers sur votre imprimante en
employant la commande lpr
. Si vous n'imprimez jamais � partir de votre
station Linux vous pouvez retirer lpd
. Si toutefois vous poss�dez une
imprimante HP Deskjet et aimeriez imprimer je recommande fortement l'ensemble
dj-printcap
disponible sur le site
ftp://sunsite.unc.edu/pub/Linux/system/Printing/dj-printcap.tar.gz
Ces deux d�mons sont utilis�s pour lancer un serveur NFS. Si vous n'utilisez jamais votre syst�me Linux comme serveur NFS vous pouvez les retirer en toute s�curit�.
Le d�mon portmap
permet de g�rer les services RPC (NdT :
Remote Procedure Call = Ex�cution de fonctions sur une autre
machine). Si vous ne lancez pas de serveur NFS ou tout autre
programme RPC, vous pouvez enlever portmap
.
sendmail
est un autre d�mon n�cessitant pas mal de m�moire. Si vous
n'utilisez jamais votre station Linux pour relayer l'envoi de courrier
�lectronique et que vous ne recevez jamais de courrier vous pouvez probablement
le retirer. Si vous envoyez du courrier de votre station Linux, la plupart des
logiciels clients peuvent �tre configur�s pour poster le courrier � partir d'un
autre serveur.
Il peut y avoir d'autres d�mons lanc�s par votre syst�me dont vous n'avez pas
besoin. Retirez ce que vous jugez inutile. Deux d�mons doivent imp�rativement
�tre lanc�s : syslogd
et klogd
.
Ce qui pr�c�de illustre le chemin que j'ai suivi pour �conomiser la m�moire sur ma station Linux. J'esp�re vous avoir fourni quelques cl�s pour vous permettre de conserver toute la m�moire de votre station Linux.
Bonne chance et bon bidouillage !
Todd Burgess