Paramètres linux

De Wiki doc

Révision datée du 5 juin 2018 à 16:58 par Ycharbi (discussion | contributions) (Ajout d'une source)

Cette page regroupe quelques paramètres que l'on peut passer au noyau Linux lors de son démarrage.

Passer des paramètres au noyau

GRUB

Pour éditer les paramètres passés au noyau lors de son démarrage, il faut éditer le fichier /etc/default/grub et les ajouter dans la variable suivante: GRUB_CMDLINE_LINUX="" séparés par des espaces pour enfin mettre à jour le menu GRUB:

update-grub

PXELinux

Avec PXELinux, les paramètres s'ajoutent après la section APPEND en les séparant par des espaces.

Liste de paramètres

Activer un shell sur un port série

Afin de pouvoir ce connecter à une machine Linux via son port série, il faut passer l'argument suivant au noyau:

console=ttyS0,9600n8

INFORMATION

Cette façon de faire semble spécifique à Systemd comme expliqué ici. Pour init et SystemV, il faut passer par le fichier /etc/inittab documenté ici. Pour Upstart, voir ici.

Nom des interfaces réseaux

Avec la version 197 de Systemd (qui intègre désormais udev), une nouvelle méthode de nommage des interfaces réseaux a été introduite, portant le nom de Predictable Network Interface Names.

Voici la justification de l'introduction de cette fonctionnalité:

Traditionnellement, les interfaces de réseau sous Linux sont énumérées eth[0123…], mais ces noms ne correspondent pas forcément à des étiquettes sur le châssis. Les plateformes des serveurs modernes avec de multiples adaptateurs réseau peuvent rencontrer des noms d'interfaces qui ne sont pas déterminants et contre-intuitifs. Ceci affecte les adaptateurs réseau intégrés à la carte mère (Lan-on-Motherboard, or LOM) et les adaptateurs add-in (uniques et multi-ports). Dans Red Hat Enterprise Linux 7, udev prend en charge un certain nombre de schémas d'affectation de noms. Le comportement par défaut est d'assigner des noms fixes basés sur le microprogramme, la topologie et les informations sur l'emplacement. Ceci a pour avantage d'offrir des noms complètement automatiques et prévisibles, qui resteront fixes, même lorsque du matériel est ajouté ou supprimé (il ne se produit pas de ré-énumération) et le matériel endommagé peut être remplacé de façon transparente. L'inconvénient de ce comportement est que les noms sont parfois plus difficiles à lire que les noms traditionnellement utilisés au préalable comme eth0 ou wlan0. Exemple : enp5s0.

Personnellement je trouve ce système merdique car en plus de rendre les noms d'interfaces incroyablement complexes (si encore il n'y avait que ça...), il les nomment différemment en fonction de la machine sur laquelle est installé le système. Ce qui rend toute tentative d'automatisation par script impossible en plus d'obliger l'administrateur à lister ses interfaces avant de commencer à les configurer pour connaître leur nom car in-devinable. Et encore, imaginez quand vous êtes forcé d'utiliser un mappage clavier QWERTY sur un clavier AZERTY et que vous avez un nom d'interface comme celui-ci: wlx00c0ca4034 ou celui-là: "enx000ec6d8bdac"...

À mon humble avis, il est déplorable qu'une "fonctionnalité" aussi chiante et qui doit concerner le 0,00001% des administrateurs systèmes ayant déjà rencontré LE cas (en fonction de l'alignement des astres dans une galaxie lointaine) où une interface réseau, suite à sont remplacement, a un truck chelou qui se produit avec son nom soit activé de base et face chier les 99,99999% restant...

Pour le désactiver, il faut entrer le paramètre suivant:

net.ifnames=0

Cependant, il est indispensable de laisser cette fonctionnalité activé si vous voulez renommer vous-même vos interfaces réseaux comme sur cette documentation. De plus amples informations sont disponibles (notamment sur les 3 méthodes possibles de désactivation) sur le site officiel.

Source