Ce document s’adresse a des utilisateurs n’ayant pas peur de l’interface console de linux ( y compris au sein de l’interface graphique ).
Les manipulations que je décrit ne sont pas longues ni compliquées, il faut juste savoir utiliser un éditeur de texte comme vim ou kwrite.
J’ai créé ce document pour indiquer comment modifier une distribution de base REDHAT ou FEDORA, afin de l’optimiser ou de lui donner quelques fonctions sympathiques qui facilitent la vie.
Je ne détaille pas ici l’installation de ces distribution, je n’indique que les modifications que je fais habituellement au reboot de la machine juste après l’install.
1- Modifications des interfaces réseau.
1.1 – Permuter deux interfaces :
Il peut arriver, si on a deux cartes réseau sur une machine, que l’on souhaite changer l’ordre des interfaces définie par l’installation.
C’est à dire, que lors de l’installation, si tout se passe bien, anaconda a trouvé 2 cartes réseau et vous a demandé de les paramétrer. Elles sont effectivement marquées actives quand on tape la commande « ifconfig ».
Par contre, pour des raisons pratiques, vous voulez changer l’ordre des cartes. Par exemple sur une machine ayant un réseau internet et un réseau externe : Vous voulez utiliser la carte « intégrée » à votre carte mère en tant qu’interface « interne » pour mémoriser plus facilement l’emplacement du câble réseau? Ou alors, utiliser la carte gigabit de la machine sur le switch interne gigabit et cantonner la carte 100Mbps à l’usage internet.
Pour modifier cet ordre, il suffit de modifier un fichier texte avec votre éditeur favoris.
Ce fichier est /etc/modules.conf sur les redhat 8.0 et 9, alors que sur une fedora, ce fichier est /etc/modprobe.conf.
Vous allez rencontrer dans ce fichier deux lignes du genre :
alias eth0 tg3
alias eth1 8139too
Ici l’interface internet eth0 est ma carte gigabit. Si je souhaite permuter les deux interfaces, il me suffit de corriger ces deux lignes comme suit :
alias eth0 8139too
alias eth1 tg3
Au redémarrage j’aurais bien ma carte gigabit en interne.
Attention, sur FEDORA, il se peut que vous ayez un message d’erreur vous indiquant que l’adresse matérielle attendue ne correspond pas à l’adresse physique de la carte. Si c’est le cas éditez les fichiers ifcfg-eth_mon_interface ( cf ci-dessous ) et supprimez la ligne indiquant l’adresse MAC de la carte réseau dans chacun d’eux.
1.2 – Modification de l’adresse ip des cartes réseau :
Pour ceci, sous REDHAT ou FEDORA, vous avez deux possibilités en mode ligne de commande.
1.2.1 Modification des fichiers texte :
Vous pouvez manipuler les fichiers de configuration directement. Ces fichiers sont nommés : /etc/sysconfig/network-scripts/ifcfg-nom_de_mon_interface où « nom_de_mon_interface » peut être eth0 eth1 , etc…
Chaque fichier contient du texte que vous pouvez modifier en prenant garde à conserver la syntaxe originale.
Par exemple, pour eth0 le contenu du fichier /etc/sysconfig/network-scripts/ifcfg-eth0 contient :
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.200.1
NETMASK=255.255.255.0
GATEWAY=192.168.200.254
Si je souhaite modifier cette adresse ip et la définir en 10 au lieu de 1 , je modifie la ligne IPADDR comme ceci :
IPADDR=192.168.200.10
Attention, si vous changez de réseau en mettant par exemple IPADDR=192.168.0.1 , vous devrez modifier aussi les lignes NETWORK et BROADCAST si elles existent dans votre configuration, ici, je n’en ai pas besoin.
De plus, la variable GATEWAY peut être séparée de la configuration de l’interface réseau elle même, et c’est souvent la cas après l’installation.
Pour modifier l’adresse IP de la passerelle, modifiez la variable GATEWAY dans le fichier /etc/sysconfig/network.
1.2.2 – Utiliser la commande netconfig :
Par exemple, pour modifier l’interface eth1 de votre machine, tapez la commande :
netconfig -d eth1
Elle vous affichera le tableau suivant, qu’il vous faudra remplir à votre convenance.
Pour info :
– si vous voulez sélectionner une case à cocher, vous utilisez la barre d’espace.
– si vous voulez vous déplacer d’un bouton à un autre, vous utilisez la touche TAB ( deux flèches opposées ).
Pour prendre en compte les modifications, tapez la commande « service network restart »
2 – Activation du routage IP :
Quand vous utilisez une machine REDHAT ou FEDORA en tant que routeur ou firewall, il faut autoriser la machine à laisser transiter les paquets réseau qu’elle va recevoir. Et ceci, sue ce soit de sa première carte réseau vers la seconde, ou de sa carte réseau vers le routeur qu’elle connaît.
Pour se faire, il faut modifier le fichier /etc/sysctl.conf.
Éditez le et modifiez la ligne ip_forward comme suit :
# Controls IP packet forwarding
net.ipv4.ip_forward = 1
Une fois fait, tapez la commande « service network restart », pour prendre en compte les modifications.
Si le forward est bien actif, vous devez obtenir 1, comme résultat de la commande suivante :
cat /proc/sys/net/ipv4/ip_forward
3 – Activation du pavé numérique :
Par habitude, on aime bien avoir le pavé numérique activé au démarrage du système, or avec linux, il est inactif.
Pour l’activer automatiquement, éditez le fichier /etc/rc.d/rc.local et ajoutez à la fin de ce fichier les lignes suivantes :
INITTY=/dev/tty[1-8]
for tty in $INITTY; do setleds -D +num $tty
done
Pour activer la modification, il vous faudra relancer le script en tapant simplement la commande suivante en ligne de commande : /etc/rc.d/rc.local
Remarque : Si vous avez du mal à retenir ces lignes, ce qui ne saurait être étonnant… 🙂
Vous pouvez les retrouver en consultant l’aide de la commande setleds comme suit : man setleds
L’exemple fourni est justement l’activation du pavé numérique.
4 – Mise à jour du système via l’outil APT :
Une fois installée, votre distribution toute neuve, a déjà vu fleurir des mises à jour que l’on peut trouver sur le net. La méthode la plus simple et la plus efficace pour se tenir à jour, et d’utiliser des outils spécialisés.
REDHAT et FEDORA ont un outil inclus ( up2date ) que je n’utilise pas car il faut souvent enregistrer un profil chez REDHAT et cela fonctionne une fois quand cela veut.
Il existe d’autre outils comme yum qui peuvent s’affranchir de la tâche, mais je vous conseille fortement APT .
APT est un outil fourni au départ sur la distribution DEBIAN, mais qui vient d’être porté sur REDHAT et FEDORA. C’est l’outil le plus efficace que je connaisse, pour installer un paquet, ou mettre à jour toute sa distribution le plus facilement du monde.
Fedora utilise beaucoup yum, mais je considère que son moteur de recherche de paquetages est bien en dessous de celui de apt. En effet, si on ne connaît pas exactement le nom du paquet qu’on recherche, son usage devient compliqué.
Ceci dit, rien ne vous empêche de faire vos tests pour trouver l’outil qui vous va le mieux.
Vous pouvez trouver APT pour REDHAT, FEDORA ou d’autres distribs redhat-like ici :
http://dag.wieers.com/packages/apt/
Une fois téléchargé sur votre machine, vous utilisez la commande standard rpm pour installer APT.
rpm -ivh apt-0.5.15cnc6-4.1.fc3.rf.i386.rpm
Une fois installée, tapez les commandes suivantes pour mettre à jour votre distribution.
apt-get update # met à jour la base apt contenant la liste des paquets
apt-get dist-upgrade # met à jour la distribution complète ( les paquets que vous avez installés en fait )
Si vous faites régulièrement cette série de commandes ( via cron, par exemple), cela vous permet de garder un système toujours à jour. Ce qui est très utile sur une machine exposée sur INTERNET.
Si vous voulez chercher une commande ou un paquet qui comporte un mot que vous connaissez, il vous suffit de taper la commande «apt-cache search ce_que_je_cherche»
5 – Installation de la BASH COMPLETION :
Bash est « l’interpréteur de commande » standard de REDHAT ou FEDORA. C’est lui qui vous permet de taper les commandes. Il a une fonctionnalité intéressante qui est la complétion des commandes. C’est à dire, qui si je tape les lettres ifc puis tab 2 fois, bash m’indique que j’ai deux commandes valides commençant par ces lettres, ifcfg et ifconfig. Si je complète ces 3 lettres en ifco et que je fais tab à nouveau, il n’y a plus d’ambiguïté et bash complète la commande que je cherche, soit ifconfig.
Ceci permet de retrouver rapidement une commande dont on n’est pas sûr de l’orthographe et avec de l’habitude, cela permet d’aller beaucoup plus vite dans la saisie des commandes au clavier.
Le paquet BASH COMPLETION permet d’augmenter significativement les capacités de bash.
Pour installer cet add-on, utilisez votre nouvel outil APT 🙂
apt-get install bash-completion
Déconnectez-vous puis connectez vous à nouveau et BASH COMPLETION est actif.
Par exemple, si je tape la commande service puis tab 2 fois, j’obtiens la liste des services susceptibles d’être appelés. Ceci n’est pas vrai si la complétion n’est pas installée, car bash ne complète que les commandes, sans compléter les options de celles-ci.
6 – Suppression des services inutiles :
Une installation de REDHAT ou FEDORA installe beaucoup de paquets que l’on ne va pas utiliser et donc au démarrage de linux, on a des services qui se lancent dont on n’a que faire.
Pour les désactiver, vous pouvez utiliser les commandes chkconfig ou ntsysv.
chkconfig s’utilise en passant le nom du service puis le mot clef on ou off.
On active le service au démarrage, off le désactive.
La commande ntsysv est plus « visuelle ». Chaque service actif est coché avec un astérisque , alors que les services inactifs, sont vides.
– si vous voulez activer ou désactiver un service, appuyez sur la barre d’espace. – si vous voulez vous déplacer d’un bouton à un autre, vous utilisez la touche TAB ( deux flèches opposées ).
Si vous ne savez pas à quoi sert un service, utilisez la touche F1 pour avoir un détail sur le service.
Conseils :
Pour le bon fonctionnement de votre machine, évitez de désactiver crond, keytable, network, random, sshd, et syslog.
Le système s’en sert très fréquemment. Si votre machine n’est pas constamment allumée, comme c’est le cas des stations de travail, conservez aussi anacron qui complète alors crond.
Conserver également xfs si vous utilisez l’interface graphique sur votre machine.