lfs:lkn-c10-kernel-boot-command-line-parameter-reference

LKN Chapitre 10. Référence des paramètres de ligne de commande de démarrage du noyau

Source: Linux Kernel in a Nutshell: 10 Kernel boot command-line parameter reference

Il existe trois façons de passer des options au noyau et ainsi de contrôler son comportement:

  • Lors de la construction du noyau. La plupart de ce livre traite de ces options.
  • Lors du démarrage du noyau. Habituellement, les paramètres sont transmis au noyau lorsqu'il est appelé à partir d'un fichier de démarrage tel que le fichier de configuration GRUB ou LILO.
  • Au moment de l'exécution, en écrivant dans des fichiers des répertoires /proc et /sys.

Ce chapitre décrit la deuxième méthode de passage des options. Le chapitre divise les options de démarrage en différentes sections logiques. Un certain nombre d'options de pilote spécifiques à l'architecture et individuelles ne sont pas répertoriées ici. Pour une liste complète de toutes les options connues, consulter le fichier Documentation/kernel-parameters.txt dans l'arborescence des sources du noyau et les fichiers de documentation spécifiques à l'architecture.

Toutes les options répertoriées ne sont pas toujours disponibles. La plupart sont associés à des sous-systèmes et ne fonctionnent que si le noyau est configuré avec ces sous-systèmes intégrés. Ils dépendent également de la présence du matériel auquel ils sont associés.

Tous ces paramètres sont sensibles à la casse.

Options spécifiques au module

En plus des options répertoriées dans ce chapitre, les paramètres des modules intégrés au noyau peuvent également être passés sur la ligne de commande. (Les modules chargés dynamiquement, bien sûr, ne sont pas en mémoire lorsque le noyau démarre et ne peuvent donc pas être passés de paramètres au démarrage.) La syntaxe pour passer des paramètres comprenant le nom du module suivi d'un point (.) Et du paramètre.

Par exemple, le module usbcore accepte le paramètre blinkenlights pour afficher des lumières clignotantes sur tous les concentrateurs USB 2.0 pris en charge (ne dites jamais que les développeurs du noyau n'ont pas le sens de l'humour). Pour définir ce paramètre lors du chargement dynamique du module, vous devez entrer:

modprobe usbcore blinkenlights=1

Mais si le module usbcore est intégré au noyau, on a le même effet en appelant le noyau avec l'option suivante:

usbcore.blinkenlights=1

La plupart des options de module pour les modules intégrés au noyau peuvent également être modifiées au moment de l'exécution en écrivant dans des fichiers du sous-répertoire nommé d'après le module sous le répertoire / sys / module /. Ainsi, l'option blinkenlights est représentée par le fichier / sys / module / usbcore / blinkenlights. voulu.

[14] La majeure partie de ce chapitre est basée sur la documentation dans le noyau pour les différentes options de référence de ligne de commande de démarrage du noyau, qui ont été écrites par les développeurs du noyau et publiées sous la GPL.

Options de la console

Ces options concernent le journal de la console ou du noyau, où le débogage du noyau et les informations d'erreur sont affichés.

Paramètre Commande Description
console Périphérique et options de la console de sortie.
tty n Utilise le périphérique de console virtuelle n.
ttyS n[,options],ttyUSB0[,options], Utilise le port série spécifié. Les options sont de la forme bbbbpnf, où bbbb est le débit en bauds, p est la parité (n, o ou e), n est le nombre de bits et f est le contrôle de flux (r pour RTS ou omis). La valeur par défaut est 9600n8.
uart, io, addr [, options], uart, mmio, addr [, options], Démarre une console en mode interrogation précoce sur l'UART 8250/16550 au port d'E / S spécifié ou à l'adresse MMIO, en passant ultérieurement au périphérique ttyS spécifié. Les options sont les mêmes que pour les ttyS montrées précédemment.
netconsole netconsole=[src-port]@[src-ip]/[dev],[target-port]@target-ip/[target-mac-address] Sortie des données de la console sur le réseau.

Envoi des données de console du noyau sur le réseau à l'aide de paquets UDP vers une autre machine. Les options sont:
src-port: Port source pour les paquets UDP. La valeur par défaut est 6665.
src-ip: Adresse IP source de l'interface à utiliser.
dev: Interface réseau à utiliser. eth0 en est un exemple. L'interface réseau peut également exécuter un trafic réseau normal, car les données de la netconsole ne sont pas intrusives et ne devraient provoquer aucun ralentissement dans les autres opérations réseau.
target-port: Port que l'agent de journalisation utilisera. La valeur par défaut est 6666.
target-ip: Adresse IP de l'agent de journalisation.
target-mac-address: Adresse MAC Ethernet pour l'agent de journalisation.
Pour écouter ces données, la machine distante peut utiliser le programme syslogd ou exécuter le programme netcat comme suit: netcat -u -l -p
port
debug Active le débogage du noyau. Fait en sorte que le niveau de journal du noyau soit défini sur le niveau de débogage, de sorte que tous les messages de débogage soient imprimés sur la console au démarrage.
quiet Désactive tous les messages du journal. Définit le niveau de journal du noyau par défaut sur KERN_WARNING (4), ce qui supprime tous les messages au démarrage, sauf ceux extrêmement graves. (Les niveaux de journalisation sont défini sous le paramètre loglevel.)
earlyprintk earlyprintk=[vga/serial][,ttyS n [,baudrate]][,keep] Affiche les messages du journal du noyau qui précèdent l'initialisation de la console traditionnelle. Ces messages ne sont généralement jamais vus sur la console, sauf si vous utilisez cette option. L'activer peut être très utile pour dépister les problèmes matériels. Actuellement, l'option peut spécifier le périphérique VGA ou le port série, mais pas les deux en même temps. De plus, seuls les périphériques série ttyS0 ou ttyS1 fonctionneront. L'interaction avec le pilote série standard n'est pas très bonne, et la sortie VGA sera éventuellement remplacée par la vraie console.
Ajouter, keep afin de ne pas désactiver les messages affichés par cette option lorsque la vraie console du noyau est initialisée et prend le contrôle du système.
loglevel loglevel=level Définit le niveau de journal de la console par défaut. Tous les messages de journal avec des niveaux inférieurs à cela (c'est-à-dire de priorité plus élevée) seront imprimés sur la console, tandis que tous les messages avec des niveaux égaux ou supérieurs à cela ne seront pas affichés.
Le niveau de consignation de la console peut également être modifié par le programme klogd ou en écrivant le niveau spécifié dans le fichier /proc/sys/kernel/printk.

Les niveaux de journalisation du noyau sont les suivants:
0 (KERN_EMERG): Le système est inutilisable.
1 (KERN_ALERT): Actions qui doivent être prises en charge immédiatement.
2 (KERN_CRIT): Conditions critiques.
3 (KERN_ERR): Conditions d'erreur non critiques.
4 (KERN_WARNING): Conditions d'avertissement à prendre en compte.


5 (KERN_NOTICE): Événements normaux mais significatifs.
6 (KERN_INFO): Messages d'information qui ne nécessitent aucune action.
7 (KERN_DEBUG): Messages de débogage du noyau, émis par le noyau si le développeur a activé le débogage au moment de la compilation. |

log_buf_len log_buf_len=n[KMG] Définit la taille du tampon de journal interne du noyau. n doit être une puissance de 2, sinon, il sera arrondi à une puissance de deux. Cette valeur peut également être modifiée par la valeur de configuration du noyau CONFIG_LOG_BUF_SHIFT.
initcall_debug Fait en sorte que le noyau trace toutes les fonctions appelées par le noyau lors de l'initialisation du système lors du démarrage du noyau. Cette option est utile pour déterminer où le noyau se meurt au démarrage
kstack kstack=n Spécifie le nombre de mots de la pile du noyau à imprimer dans les vidages du noyau. n est une valeur entière.
time Fait en sorte que le noyau préfixe chaque message de journal du noyau avec un horodatage.

Options d'interruption

Les interruptions sont un aspect complexe du comportement du noyau. Les options de démarrage concernent principalement l'interface entre le noyau et le matériel qui gère les interruptions, comme le contrôleur d'interruption programmable avancé (APIC) de la puce Intel.

Paramètre Commande Description
apic apic=[ quiet(default)\verbose\debug ] Modifie la verbosité du sous-système APIC lors du démarrage.
noapic Empêche le noyau d'utiliser l'un des IOAPIC éventuellement présents dans le système.
lapic Fait en sorte que le noyau active l'APIC local même si le BIOS l'a désactivé.
nolapic Dit au noyau de ne pas utiliser l'APIC local.
noirqbalance Désactive toute la logique d'équilibrage IRQ du noyau intégré.
irqfixup Lorsqu'une interruption n'est pas gérée, recherchez-la dans tous les gestionnaires d'interruption connus. Ceci est destiné à faire fonctionner des systèmes avec un firmware gravement endommagé.
irqpoll Lorsqu'une interruption n'est pas gérée, recherchez-la dans tous les gestionnaires d'interruption connus et vérifiez également tous les gestionnaires à chaque interruption du minuteur. Ceci est destiné à faire fonctionner des systèmes avec un firmware gravement endommagé.
noirqdebug Par défaut, le noyau tente de détecter et de désactiver les sources d'interruption non gérées car elles peuvent entraîner des problèmes de réactivité du reste du noyau si elles ne sont pas contrôlées. Cette option désactivera cette logique.

Options de mémoire

Le noyau gère la mémoire dans de nombreux morceaux et catégories différents à des fins différentes. Ces options vous permettent de modifier les tailles et les paramètres.

Paramètre Commande Description
highmem highmem=n Force la zone de mémoire highmem à avoir une taille exacte de n octets. Cela fonctionnera même sur les boîtes qui n'ont pas de zones highmem par défaut. Il peut également réduire la taille de la zone highmem pour les machines avec beaucoup de mémoire.
hugepages hugepages=n La fonction hugetlb permet de configurer Linux pour utiliser des pages de 4 Mo, mille fois la taille par défaut. Si Linux est configuré de cette façon, cette option définit le nombre maximal de pages hugetlb sur n.
ihash_entries ihash_entries=n Remplace le nombre par défaut de compartiments de hachage pour le cache d'inode du noyau. Recommandé uniquement pour les experts du noyau.
max_addr max_addr=n Fait en sorte que le noyau ignore toute la mémoire physique supérieure ou égale à l'adresse physique n.
mem mem=n[KMG] Définit la quantité de mémoire spécifique utilisée par le noyau. Lorsqu'il est utilisé avec l'option memmap=, les collisions de l'espace d'adressage physique peuvent être évitées. Sans l'option memmap=, cette option pourrait entraîner le placement de périphériques PCI à des adresses appartenant à la mémoire RAM inutilisée. n spécifie la quantité de mémoire à forcer et est mesurée en unités de kilo-octets (K), mégaoctets (M) ou gigaoctets (G).
mem mem=nopentium Désactive l'utilisation d'énormes pages (4 Mo) pour la mémoire du noyau.
memmap memmap=exactmap Active une carte mémoire spécifique. Les lignes de la carte exacte peuvent être construites en fonction de la sortie du BIOS ou d'autres exigences
memmap memmap=n[KMG]@start[KMG] Force le noyau à utiliser une région mémoire spécifique. n est la taille de l'emplacement mémoire et start est l'emplacement de départ en mémoire de la plage. Les unités peuvent être des kilo-octets (K), des mégaoctets (M) ou des gigaoctets (G).
noexec noexec=[on/off] Active ou désactive la capacité du noyau à mapper des sections de mémoire comme non exécutables. Par défaut, le mappage est activé (activé).
reserve reserve=n[KMG] Force le noyau à ignorer certaines des zones de mémoire d'E/S.
vmalloc vmalloc=n[KMG] Force vmalloc à avoir la taille exacte spécifiée par n. Cela peut être utilisé pour augmenter la taille minimale de la zone vmalloc (qui est de 128 Mo sur le processeur x86). Il peut également être utilisé pour réduire la taille et laisser plus de place à la RAM du noyau directement mappée.
norandmaps Par défaut, le noyau randomise l'espace d'adressage de tous les programmes au démarrage. Cette option désactive cette fonctionnalité. Cela équivaut à écrire 0 dans le fichier /proc/sys/kernel/randomize_va_space.
vdso vdso=[0/1] Désactive (0) ou active (1) l'option de mappage VDSO (Virtual Dynamic Shared Object). Par défault, c'est activé.

Options de suspension

Ces options modifient la façon dont le noyau gère la suspension à des fins d'économie d'énergie.

Paramètre Commande Description
resume resume=suspend_device Indique au noyau quel périphérique de disque contient l'image du noyau suspendu. Si les données sur l'image sont une image de noyau valide créée par le sous-système de suspension du logiciel, elles seront chargées en mémoire et le noyau l'exécutera au lieu de poursuivre le processus de démarrage normal. suspend_device est le nom du périphérique du noyau, qui peut être différent de ce que l'espace utilisateur pense que le nom du périphérique est, alors soyez prudent avec cette option.
noresume Désactive la fonctionnalité de reprise du noyau. Toutes les partitions de swap utilisées pour contenir des images système sur lesquelles le noyau pourrait être restauré reviendront à l'espace de swap disponible.

Options CPU

Ces options contrôlent un large éventail de comportements concernant la synchronisation, l'utilisation du processeur dans les systèmes multiprocesseurs et d'autres problèmes de processeur.

Paramètre Commande Description
cachesize cachesize=n Remplace la détection de la taille du cache du processeur de niveau 2. Parfois, les bogues matériels du processeur leur font signaler la taille du cache de manière incorrecte. Le noyau tentera de contourner et de résoudre les problèmes connus avec la plupart des processeurs, mais pour certains processeurs, il n'est pas possible de déterminer la taille correcte. Cette option fournit un remplacement pour ces situations. n est mesuré en unités d'octets.
lpj lpj=n Précise les boucles par jiffy qui devrait être utilisé par le noyau, et ainsi éviter au noyau la détection automatique fastidieuse au démarrage de cette valeur. Si n est 0, la valeur sera automatiquement détectée comme d'habitude.

Sur les systèmes SMP, cette valeur sera définie sur tous les processeurs, ce qui pourrait provoquer des problèmes si les différents processeurs nécessitent des paramètres différents. Une valeur incorrecte entraînera des retards incorrects dans le noyau, ce qui peut entraîner des erreurs d'E/S imprévisibles et d'autres pannes. Bien que cela soit peu probable, dans le cas extrême, cela pourrait endommager le matériel.
nmi_watchdog nmi_watchdog = [0\1\2\3] Il s'agit d'une fonction de débogage qui permet à l'utilisateur de remplacer la valeur de surveillance par défaut d'interruption non masquable (NMI). 0 spécifie qu'aucun watchdog NMI ne doit être utilisé. 1 spécifie que l'APIC doit être utilisé s'il est présent. 2 spécifie que l'APIC local doit être utilisé s'il est présent. 3 signifie que le watchdog NMI n'est pas valide, ne pas l'utiliser.
no387 Utilise toujours la bibliothèque d'émulation mathématique 387, même si un coprocesseur mathématique 387 est présent dans le système.
nofxsr Désactive la sauvegarde et la restauration du registre étendu à virgule flottante x86. Le noyau enregistrera uniquement les registres à virgule flottante hérités sur un commutateur de tâches.
no-hlt Cette option est disponible car l'instruction HLT ne fonctionne pas correctement pour certains processeurs x86. Cette option indique au noyau de ne pas utiliser l'instruction.
mce Certains processeurs peuvent vérifier les erreurs de la machine (généralement des erreurs matérielles). Cette option active ce sous-système s'il a été intégré à la configuration du noyau. Désactive la prise en charge x86 SYSENTER/SYSEXIT dans le noyau. Cela peut entraîner des appels système plus longs.
nosmp Indique à un noyau SMP d'agir comme un noyau uniprocesseur, même sur une machine multiprocesseur.
notsc Désactive le compteur d'horodatage dans le système, le cas échéant.
max_cpus maxcpus=n Spécifie le nombre maximum de processeurs qu'un noyau SMP doit utiliser, même s'il y a plus de processeurs présents dans le système.

Options du planificateur

Ces options modifient les paramètres utilisés pour prendre des décisions de planification. La plupart dépendent d'une compréhension intime du fonctionnement de la planification sous Linux.

Paramètre Commande Description
isolcpus isolcpus=cpu_number[,cpu_number,…] Supprime les CPU spécifiés, tels que définis par les valeurs cpu_number, des algroithmes généraux d'équilibrage SMP du noyau et du planificateur. La seule façon de déplacer un processus vers ou hors d'un processeur “isolé” est via les appels système d'affinité du processeur. cpu_number commence à 0, la valeur maximale est donc inférieure de 1 au nombre de CPU sur le système.

Cette option est le moyen préféré pour isoler les CPU. L'alternative, la définition manuelle du masque CPU de toutes les tâches du système, peut entraîner des problèmes et des performances d'équilibrage de charge sous-optimales.
migration_cost migration_cost=niveau-1-useconds [niveau-2-useconds …] Remplace les coûts de migration du planificateur par défaut.
Il s'agit d'une option de débogage qui remplace la matrice de coût de migration du planificateur par défaut. Les nombres spécifiés par level-N-useconds sont indexés par la “distance du domaine CPU” et sont mesurés en microsecondes.
Un exemple de cette option est migration_cost=1000,2000,3000 pour une machine SMT NUMA. Il établit un coût de migration intra-cœur de 1 ms, un autre coût de migration inter-cœur de 2 ms et un autre coût de migration entre nœuds de 3 ms.

Des valeurs incorrectes peuvent gravement dégrader les performances du planificateur, cette option doit donc être utilisée uniquement pour le développement du planificateur, jamais pour les environnements de production.
migration_debug migration_debug=[0/1/2] Définit le niveau de débogage des coûts de migration. Si 0 est spécifié, aucun message supplémentaire ne sera affiché dans le journal du noyau. Ceci est la valeur par défault. 1 affiche quelques informations sur la façon dont la matrice est déterminée. 2 est très prolixe et n'est utile que lorsqu'on utilise une console série, car la quantité d'informations débordera de la mémoire tampon du journal du noyau.
migration_factor migration_factor=per cent Multiplie ou divise les coûts de migration.

Modifie les coûts de migration par défaut selon le pourcentage spécifié. Il s'agit d'une option de débogage qui peut être utilisée pour augmenter ou diminuer proportionnellement les coûts de migration détectés automatiquement pour toutes les entrées de la matrice de migration. Par exemple, migration_factor=150 augmente les coûts de migration de 50%, donc le planificateur sera moins désireux de migrer les tâches cache-hot. migration_factor=80 diminue les coûts de migration de 20%, ce qui rend le planificateur plus désireux de migrer les tâches.

Des valeurs incorrectes peuvent gravement dégrader les performances du planificateur, cette option doit donc être utilisée uniquement pour le développement du planificateur, jamais pour les environnements de production.

Options de Ramdisk

Ces options contrôlent la façon dont le stockage des informations en mémoire pour imiter les disques (Ramdisks) est effectué, y compris les ramdisks init qui contiennent les informations nécessaires à certaines étapes du démarrage.

Paramètre Commande Description
initrd initrd=filename Spécifie l'emplacement du disque virtuel initial pour l'amorçage du noyau.
load_ramdisk load_ramdisk=n Charge un ramdisk du noyau à partir d'une
Si n est défini sur 1, un disque virtuel est chargé par le noyau au démarrage à partir du lecteur de disquette.
noinitrd Ne charge aucun disque virtuel initial, même s'il est configuré dans d'autres options transmises au noyau.
prompt_ramdisk prompt_ramdisk=1
ramdisk_blocksize ramdisk_blocksize=n Indique au pilote ramdisk le nombre d'octets à utiliser par bloc. La taille par défaut est 1024.
ramdisk_size ramdisk_size=n Spécifie la taille du disque RAM initial en kilo-octets. La taille par défaut est 4096 (4 Mo). Cette option doit être utilisée à la place de l'ancienne option de ligne de commande ramdisk.

Options de disque racine

Ces options contrôlent la façon dont le noyau trouve et gère le système de fichiers qui contient le système de fichiers racine.

Paramètre Commande Description
ro Monte le périphérique racine en lecture seule au démarrage. La valeur par défaut pour le noyau est de monter le périphérique racine en lecture seule au démarrage. Cette option garantit qu'il s'agit du mode utilisé par le noyau. Il remplace l'option de ligne de commande rw, si elle avait été spécifiée précédemment sur la ligne de commande de démarrage.
root root=device Indique au noyau sur quel périphérique disque l'image du système de fichiers racine se trouve. périphérique peut être spécifié de l'une des manières suivantes:
nnnn: Un numéro de périphérique en hexadécimal représente le numéro majeur et mineur du périphérique au format interne attendu par le noyau. Cette méthode n'est pas recommandée, sauf si vous avez accès aux composants internes du noyau.
/dev/nfs: Utilise le disque NFS spécifié par l'option de démarrage nfsroot comme disque racine.
/dev/<diskname>: Utilise le nom de disque du noyau spécifié par <diskname> comme disque racine.
/dev/<diskname><decimal>: Utilise le nom de disque du noyau spécifié par <diskname> et la partition spécifiée par <decimal> comme disque racine.
/dev/<diskname>p<decimal>: Utilise le nom de disque du noyau spécifié par <diskname> et la partition spécifiée par <decimal> comme disque racine. C'est la même chose que ci-dessus, mais c'est nécessaire lorsque <diskname> se termine par un chiffre.
rootdelay rootdelay=n Délai d'attente avant de tenter de monter le système de fichiers racine.

Attende n secondes avant d'essayer de monter le système de fichiers racine. Cela peut être utile si le système de fichiers racine se trouve sur un périphérique USB ou Firewire, car ces périphériques de disque mettent un peu plus de temps à être découverts par le noyau.
rootflags rootflags=options Options de montage que le noyau doit utiliser pour monter le système de fichiers racine. La valeur des options dépend du type de système de fichiers; voir la documentation pour les types individuels pour plus de détails sur ce qui est valide.
rootfstype rootfstype=type
rw La valeur par défaut pour le noyau est de monter le périphérique racine en lecture seule au démarrage. Cette option monte le périphérique racine en lecture-écriture à la place.

Options d'initialisation

Le processus init est le premier à être démarré par le noyau et est l'ancêtre de tous les autres processus. Ces options contrôlent quel programme est exécuté et comment il est exécuté.

Paramètre Commande Description
init init=filename Programme à exécuter au moment de l'initialisation.
Exécute le binaire spécifié en tant que processus init au lieu du programme /sbin/init par défaut.
rdinit rdinit=full_path_name Exécute le programme spécifié par fullpathname comme processus d'initialisation. Ce fichier doit se trouver sur le disque virtuel du noyau plutôt que sur le système de fichiers racine.
S La valeur par défaut pour le noyau est d'exécuter init en mode multi-utilisateur. Cette option exécute à la place init en mode mono-utilisateur.

options kexec

Le sous-système kexec est une fonction de redémarrage spécialisée qui permet un redémarrage rapide et est généralement combinée avec la fonction kdump qui permet de vider la mémoire du noyau précédent vers un endroit sûr pour une analyse ultérieure. Ces options modifient les paramètres du sous-système kexec.

Paramètre Commande Description
crashkernel crashkernel=n[KMG]@start[KMG] Réservez une partie de la mémoire physique pour que kexec l'utilise.

Le sous-système kexec aime avoir une partie de la mémoire physique qui lui est réservée. Cette option réserve cette mémoire du reste du noyau et basculera pour l'utiliser si le noyau panique. n spécifie la quantité de mémoire à réserver et start spécifie l'emplacement de ce bloc de mémoire. Les deux sont mesurés en unités de kilo-octets (K), de mégaoctets (M) ou de gigaoctets (G).
elfcorehdr elfcorhdr=n Début de l'en-tête ELF de l'image centrale du noyau.

Le noyau, comme tout exécutable Linux, est stocké au format ELF. Cette option spécifie l'adresse physique où l'en-tête ELF de l'image principale du noyau démarre. Ceci est utilisé par kexec pour trouver le noyau lors du démarrage de l'image du noyau secondaire.

Options RCU

Read Copy Update (RCU) est une partie du noyau qui gère l'exclusion mutuelle pour une variété de sous-systèmes de manière sans verrouillage. Il existe un certain nombre d'options qui peuvent être utilisées pour régler RCU de différentes manières:

Paramètre Commande Description
rcu.blimit rcu.blimit=n Définit le nombre maximal de rappels RCU terminés à traiter en un seul lot.
rcu.qhimark rcu.qhimark=n La limitation des lots est désactivée lorsque le nombre de rappels RCU en file d'attente dépasse n.
rcu.qlowmark rcu.qlowmark=n La limitation des lots est réactivée lorsque le nombre de rappels RCU en file d'attente tombe en dessous de n.
rcu.rsinterval rcu.rsinterval=n Définit le nombre de rappels RCU supplémentaires qui doivent être mis en file d'attente avant de forcer une replanification sur tous les CPU.

Options ACPI

Ces options contrôlent les paramètres que le sous-système Advanced Configuration and Power Interface (ACPI) peut utiliser.

Paramètre Commande Description
acpi acpi=[force/off/noirq/ht/strict] Il s'agit de l'option principale pour la configuration avancée et l'interface d'alimentation (ACPI). Les valeurs sont:
force: Force ACPI à être activé. Peut être utilisé pour remplacer l'option de configuration du noyau qui l'a désactivée.
off: Désactive ACPI. Peut être utilisé pour remplacer l'option de configuration du noyau qui l'a activée.
noirq: Empêche ACPI d'être utilisé pour le routage IRQ.
ht: exécute uniquement suffisamment de la couche ACPI pour activer HyperThreading sur les processeurs qui en sont capables.
strict: Rend la couche ACPI moins tolérante des plates-formes qui ne sont pas entièrement conformes à la spécification ACPI.
acpi_sleep acpi_sleep=[s3_bios],[s3_mode] Pendant la reprise de S3 (qui se produit après que la machine a été suspendue à la RAM), le matériel doit être réinitialisé correctement. Pour la plupart des appareils, c'est simple, sauf pour les cartes vidéo, qui sont normalement initialisées par le BIOS. Le noyau n'a pas suffisamment d'informations pour restaurer le périphérique vidéo, car ces informations sont dans le BIOS et ne sont pas accessibles du tout. Cette option permet au noyau d'essayer d'utiliser le sous-système ACPI pour restaurer la carte vidéo de deux manières différentes.

Voir le fichier Documentation /power/video.txt pour plus d'informations sur cette option et comment trouver la valeur appropriée pour votre type de matériel.
acpi_sci acpi_sci=[level/edge/high/low] Définit le mode de déclenchement Interruption du contrôle du système ACPI.
acpi_irq_balance Active l'équilibre ACPI IRQ. Il s'agit de l'option par défaut lorsqu'on travaille en mode APIC.
acpi_irq_nobalance Désactive l'équilibre ACPI IRQ. Il s'agit de l'option par défaut lorsqu'on travaille en mode PIC.
acpi_irq_isa acpi_irq_isa=irq[,irq …] Si l'option d'équilibre IRQ est activée, marque les IRQ répertoriés comme utilisés par le sous-système ISA.
acpi_irq_pci acpi_irq_pci=irq [,irq …] Si l'option d'équilibre IRQ est activée, marquez les IRQ répertoriés comme utilisés par le sous-système PCI.
acpi_os_name acpi_os_name=name Indique au BIOS ACPI que le nom du système d'exploitation en cours d'exécution est “name”. Cela peut être utile pour usurper le BIOS en pensant que Windows fonctionne au lieu de Linux, ce qui peut aider à résoudre certains problèmes ACPI pour les BIOS plus anciens. Par exemple, utiliser la chaîne Microsoft 2001 pour usurper le BIOS en pensant que Windows 2001 s'exécute sur la machine.
acpi_osi acpi_osi=[n] Si n est absent, ACPI désactivera la méthode _OSI. Si n est présent, _OSI ne sera pas désactivé.
acpi_serialize Force la sérialisation des méthodes ACPI Machine Language (AML).
acpi_skip_timer_override Permet à la couche ACPI de reconnaître et d'ignorer les problèmes de dérogation d'interruption IRQ0/pin2 pour les BIOS nForce2 cassés qui entraînent l'activation du temporisateur XT-PIC.
acpi_dbg_layer acpi_dbg_layer=n Définit les couches de débogage ACPI. n est un entier dans lequel chaque bit indique une couche de débogage ACPI différente. Après le démarrage du système, les couches de débogage peuvent être définies via le fichier /proc/acpi/debug_layer.
acpi_fake_ecdt solution de contournement ECDT. S'il est présent, cela permet à ACPI de contourner les échecs du BIOS lorsqu'il manque un tableau de description du contrôleur intégré.
acpi_generic_hotkey Utilise un pilote générique de raccourci clavier ACPI. Cela permet au pilote de raccourci générique consolidé ACPI de remplacer le pilote spécifique à la plate-forme s'il en existe un.
acpi_pm_good Force le noyau à supposer que le pmtimer de la machine verrouille sa valeur et renvoie toujours de bonnes valeurs.
ec_intr ec_intr=n Spécifie le mode d'interruption du contrôleur intégré ACPI. Si n est 0, le mode d'interrogation sera utilisé, sinon le mode d'interruption sera utilisé. Le mode d'interruption est la valeur par défaut.
memmap memmap=n[KMG]#start[KMG] Marque un emplacement et une plage de mémoire spécifiques en tant que données ACPI. n est la taille de l'emplacement mémoire et start est l'emplacement de départ en mémoire de la plage. Les deux sont mesurés en unités de kilo-octets (K), de mégaoctets (M) ou de gigaoctets (G).
memmap=n[KMG]$start[KMG] Cela marque un emplacement et une plage de mémoire spécifiques comme réservés. n est la taille de l'emplacement mémoire et start est l'emplacement de départ en mémoire de la plage.
pnpacpi pnpacpi=off Désactive la fonctionnalité PnP ACPI.
processor.max_cstate processor.max_cstate=n Limite le processeur à un état C maximum, peu importe ce que les tables ACPI disent qu'il peut prendre en charge. n est une valeur d'état C valide. Une valeur de 9 remplace toute limite de liste noire DMI qui pourrait être présente pour ce processeur.
processor.nocst Le noyau ACPI ignore la méthode _CST de détermination des états C du processeur et utilise à la place la méthode FADT héritée.

Options SCSI

Ces options spécifient différents paramètres que le sous-système SCSI peut utiliser. Un certain nombre d'options spécifiques au pilote SCSI sont également disponibles; veuillez consulter les différents fichiers de documentation des pilotes dans le répertoire du noyau Documentation / scsi / pour plus de détails.

Paramètre Commande Description
max_luns max_luns=n Spécifie le nombre maximal de LUN SCSI que le système doit sonder. n est un entier de 1 à 4294967295.
max_report_luns max_report_luns=n Spécifie le nombre maximum de LUN SCSI que le système peut recevoir. n est un entier de 1 à 16384.
scsi_dev_flags scsi_dev_flags=vendor:model:flags Cette option permet à l'utilisateur d'ajouter des entrées à la liste noire/blanche SCSI pour un fournisseur et un modèle de périphérique spécifiques.

Options PCI

Ces options spécifient différents paramètres que le sous-système PCI peut utiliser.

Paramètre Commande Description
pci pci=option[,option …] Chaque option peut être l'une des suivantes:
off: Ne cherche pas le bus PCI.
bios: Force l'utilisation du BIOS PCI en n'accédant pas directement au matériel. Cela signifie que le noyau doit faire confiance au BIOS, ce qui n'est pas la chose standard à faire (car les BIOS sont connus pour mentir plus qu'ils ne sont valides). Utilisez-le uniquement si votre machine a un pont hôte PCI non standard et la méthode de démarrage normale ne fonctionne pas correctement
nobios: Force à ne pas utiliser le BIOS PCI, mais accéde directement au matériel. Il s'agit de la méthode par défaut de détection des périphériques PCI dans tous les noyaux après 2.6.13.
conf1: Force l'utilisation du mécanisme de configuration PCI 1 (un moyen d'accéder à la mémoire PCI sur les machines i386.)
conf2: Forcr l'utilisation du mécanisme de configuration PCI 2 (un moyen d'accéder à la mémoire PCI sur les machines i386.)
nommconf: Désactive l'utilisation de la table ACPI MMCONFIG pour la configuration PCI.
nomsi: Si le paramètre de configuration du noyau PCI_MSI est activé, cette option de démarrage du noyau peut être utilisée pour désactiver l'utilisation des interruptions MSI à l'échelle du système.
nosort: Ne trie pas les périphériques PCI selon l'ordre donné par le BIOS PCI. Ce tri est effectué pour obtenir un ordre de périphérique compatible avec des versions de noyau beaucoup plus anciennes.
biosirq: Utilise les appels BIOS PCI pour obtenir la table de routage des interruptions. Ces appels sont connus pour être bogués sur plusieurs machines et bloquer ces machines lorsqu'ils sont utilisés, mais sur d'autres machines, ils sont le seul moyen d'obtenir la table de routage d'interruption. Essayez cette option si le noyau n'est pas en mesure d'allouer des IRQ ou de découvrir des bus PCI secondaires sur votre carte mère.
ROM: Attribue un espace d'adressage aux ROM d'extension. Utilisez-le avec prudence car certains appareils partagent des décodeurs d'adresses entre les ROM et d'autres ressources.
irqmask=0x nnnn: Définit un masque de bits d'IRQ autorisés à être attribués automatiquement aux périphériques PCI. Vous pouvez faire en sorte que le noyau exclue les IRQ de vos cartes ISA de cette façon.
pirqaddr=0x n: Spécifie l'adresse physique de la table PIRQ (normalement générée par le BIOS) si elle se trouve en dehors de la plage F0000-100000 (hexadécimale).
lastbus=n: Scanne tous les bus via le bus n. Peut être utile si le noyau ne parvient pas à trouver vos bus secondaires et que vous souhaitez lui dire explicitement de quels bus il s'agit.
assign-bus: Utilise toujours vos propres numéros de bus PCI, en remplaçant tout ce que le micrologiciel a pu faire.
usepirqmask: Respecte le masque IRQ possible stocké dans la table BIOS $ PIR. Cela est nécessaire sur certains systèmes avec des BIOS cassés, notamment certains ordinateurs portables HP Pavilion N5400 et Omnibook XE3. Cela n'aura aucun effet si le routage IRQ ACPI est activé.
noacpi: Force à ne pas utiliser ACPI pour le routage IRQ ou pour la numérisation PCI.
routeirq: Force le routage IRQ pour tous les périphériques PCI. Cela se fait normalement dans pci_enable_device(), donc cette option est une solution temporaire pour les pilotes cassés qui ne l'appellent pas.
firmware: Force à ne pas réénumérer pas le bus, mais utiliser simplement la configuration du chargeur de démarrage. Ceci est actuellement utilisé sur les systèmes IXP2000 où le bus doit être configuré d'une certaine manière pour les CPU auxiliaires.

Options du BIOS PnP

Paramètre Commande Description
noisapnp Désactive le sous-système ISA PnP, s'il a été activé dans la configuration du noyau.
pnpbios pnpbios=[on\off\curr\no-curr] Définit les principaux paramètres du BIOS PnP. on active le sous-système BIOS PnP. off désactive le sous-système BIOS PnP. curr indique au sous-système BIOS PnP d'utiliser les paramètres statiques actuels et no-curr indique au sous-système de rechercher les paramètres dynamiques si possible.
pnp_reserve_irq pnp_reserve_irq=irq1[,irq2 …] Liste des IRQ que le sous-système BIOS PnP ne doit pas utiliser pour la configuration automatique.
pnp_reserve_dma pnp_reserve_dma=dma1[,dma2 …] Liste des DMA que le sous-système PnP BIOS ne doit pas utiliser pour l'autoconfiguration.
pnp_reserve_io pnp_reserve_io=io1,size1[,io2,size2 …] Ports d'E/S que le sous-système BIOS PnP ne doit pas utiliser pour la configuration automatique. Chaque port est répertorié par son emplacement de départ et sa taille.
pnp_reserve_mem pnp_reserve_mem=mem1,size1[,mem2,size2 …] Régions de mémoire que le sous-système BIOS PnP ne doit pas utiliser pour la configuration automatique. Chaque région est répertoriée par son emplacement de départ et sa taille.

Options SELinux

Ces options modifient certains aspects fondamentaux du démarrage de SELinux.

Paramètre Commande Description
checkreqprot checkreqprot=[0/1] Définit la valeur initiale de l'indicateur checkreqprot. 0 signifie que la protection de vérification sera appliquée par le noyau et inclura toute protection d'exécution implicite. 1 signifie que la protection contre les chèques est demandée par l'application. La valeur par défaut est définie par une option de configuration du noyau. La valeur peut être modifiée à l'exécution via le fichier /selinux/checkreqprot.
enforcing enforcing=[0/1] Indique si SELinux applique ses règles au démarrage. 0 signifie que SELinux enregistrera simplement les violations de politique mais ne refusera l'accès à rien. 1 signifie que l'application sera entièrement activée avec les refus ainsi que la journalisation. La valeur par défaut est 0. La valeur peut être modifiée à l'exécution via le fichier /selinux/enforce.
selinux selinux=[0/1] Cette option permet à SELinux d'être activé (1) ou désactivé (0) au démarrage. La valeur par défaut est définie par une option de configuration du noyau. Si SELinux est activé au démarrage, le fichier /selinux/disable peut être utilisé ultérieurement pour le désactiver avant le chargement initial de la stratégie.
selinux_compat_net selinux_compat_net=[0\1] Définit la valeur initiale pour le modèle de contrôle de réseau SELinux. 0 utilise les nouveaux contrôles de paquets basés sur les repères et 1 utilise les contrôles de paquets hérités. 0 est la valeur par défaut et préférée. Cette valeur peut être modifiée à l'exécution via le fichier /selinux/compat_net.

Options réseau

Ces options contrôlent les aspects de bas niveau du sous-système de mise en réseau.

Paramètre Commande Description
netdev netdev=[irq],[io],[mem_start],[mem_end],[name] Spécifie les paramètres de périphérique réseau, qui sont spécifiques au pilote utilisé par le périphérique réseau. Certains fichiers source de pilotes documentent les options applicables. Cette option ne s'applique généralement pas aux périphériques PCI, USB ou autres réseaux plug-and-play. Il est destiné à être utilisé uniquement sur les appareils qui ne peuvent pas découvrir leurs propres affectations de ressources.
rhash_entries dhash_entries=n Cette option vous permet de remplacer le nombre par défaut de compartiments de hachage pour le cache de routage du noyau. Recommandé uniquement pour les experts du réseau du noyau. faites.
shapers shapers=n Cette option permet de définir le nombre maximal de modélisateurs de réseau que le noyau peut utiliser.
thash_entries thash_entries=n Cette option vous permet de remplacer le nombre par défaut de compartiments de hachage pour le cache de connexion TCP du noyau.

Options NFS

Ces options contrôlent le démarrage du système de fichiers réseau.

Paramètre Commande Description
lockd.nlm_grace_period lockd.nlm_grace_period=n Définit la période de grâce du gestionnaire de verrouillage NFS. n est mesuré en secondes.
lockd.nl_tcpport lockd.nlm_tcpport=port Définit le port TCP que le gestionnaire de verrouillage NFS doit utiliser. port doit être une valeur de port TCP valide.
lockd.nlm_timeout lockd.nlm_timeout=n Remplace la valeur d'heure par défaut pour le gestionnaire de verrouillage NFS. n est mesuré en secondes. Si cette option n'est pas spécifiée, la valeur par défaut de 10 secondes sera utilisée.
lockd.nlm_udpport lockd.nlm_udpport=port Définit le port UDP que le gestionnaire de verrouillage NFS doit utiliser. port doit être une valeur de port UDP valide.
nfsroot nfsroot=[server-ip:]root-dir[,options-nfs] Définit le système de fichiers racine NFS pour les boîtes sans disque, pour leur permettre de démarrer correctement sur NFS. Si ce paramètre n'est pas défini, la valeur /tftpboot/client_ip_address sera utilisée comme système de fichiers racine avec les options NFS par défaut.
server-ip: Adresse IP du serveur NFS auquel se connecter.
root-dir: Répertoire sur le serveur NFS à monter en tant que root. S'il y a un jeton% s dans cette chaîne, il sera remplacé par la représentation ASCII de l'adresse IP du client.
options-nfs: Options NFS standard, telles que ro, séparées par des virgules.
nfs.callback_tcpport nfs.callback_tcpport=port Spécifie le port TCP sur lequel le canal de rappel NFSv4 doit écouter. port doit être une valeur de port TCP valide.
nfs.idmap_cache_timeout nfs.idmap_cache_timeout=n Spécifie la durée de vie maximale des entrées de cache idmapper. n est mesuré en secondes.

Options spécifiques au matériel

Ces options spécifient différents paramètres, en fonction du matériel présent dans le système.

Paramètre Commande Description
nousb Désactive le sous-système USB.
lp lp=[0/port[,port …]/reset/auto] Spécifie le port parallèle à utiliser. Le format lp=port1,port2 … associe une séquence de ports parallèles aux périphériques, en commençant par lp0. Un exemple est lp=none,parport0, qui supprime la configuration du périphérique lp0 et oblige le périphérique lp1 à utiliser le premier port parallèle.
lp=0: désactive le pilote d'imprimante.
lp=reset: entraîne la réinitialisation des imprimantes connectées. Cette option peut être combinée avec les spécifications du port.
lp=auto: oblige le noyau à examiner l'ID de périphérique de chaque port pour déterminer si une imprimante compatible IEEE 1284 est connectée. Si c'est le cas, le noyau gérera cette imprimante.
parport parport=[paramètre[,paramètre …] Spécifie des paramètres spécifiques pour les pilotes de port parallèle. Les ports parallèles sont attribués dans l'ordre où ils sont spécifiés sur la ligne de commande, en commençant par parport0.
auto force le pilote à utiliser tous les paramètres IRQ/DMA détectés (la valeur par défaut est d'ignorer les paramètres IRQ/DMA détectés en raison de conflits possibles). On peut également spécifier l'adresse de base, les paramètres IRQ et DMA au format 0xnnnn[,irq[,dma]]. irq et dma peuvent être des nombres, auto pour utiliser les paramètres détectés sur ce port particulier, ou nofifo pour éviter d'utiliser un FIFO même s'il est détecté.
parport_init_mode parport_init_mode=[spp/ps2/epp/ecp/ecpepp] Spécifie le mode dans lequel le port parallèle doit être utilisé. Cela est nécessaire sur l'ordinateur Pegasos où le micrologiciel n'a pas d'options pour configurer le mode du port parallèle. Cette option fonctionne pour les puces de port parallèle de type 686a et 8231.
nr_uarts nr_uarts=n Spécifie le nombre maximal de différents UART pouvant être enregistrés dans le noyau.

Options spécifiques à la minuterie

Ces options remplacent le comportement par défaut du noyau pour résoudre les problèmes avec certaines puces.

Paramètre Commande Description
enable_timer_pin_1 Active la broche 1 du temporisateur APIC. Cette option peut être utile pour contourner les bogues du chipset (sur certains chipsets ATI en particulier.) Le noyau essaie de définir une valeur par défaut raisonnable, mais parfois cette option est nécessaire pour la remplacer.
disable_timer_pin_1 Désactive la broche 1 du temporisateur APIC. Utile pour les mêmes raisons que enable_timer_pin_1.
enable_8254_timer Active le routage de temporisation d'interruption 0 sur la puce 8254 en plus du routage sur IO-APIC. Le noyau essaie de définir une valeur par défaut raisonnable mais parfois cette option est nécessaire pour la remplacer.
disable_8254_timer Désactive le routage de temporisation d'interruption 0 sur la puce 8254 en plus du routage sur IO-APIC. Le noyau essaie de définir une valeur par défaut raisonnable mais parfois cette option est nécessaire pour la remplacer.
hpet hpet=disable Désactive la source du minuteur HPET et dites au noyau d'utiliser à la place la source du minuteur PIT.
clocksource clocksource=[hpet/pit/tsc/acpi_pm/cyclone/scx200_hrt] Remplace la source d'horloge du noyau par défaut et utilisez la source d'horloge avec le nom spécifié à la place.

Options diverses

Ces options doivent toujours être disponibles et ne dépendent d'aucun sous-système ou matériel spécifique présent dans le système pour fonctionner correctement.

Paramètre Commande Description
dhash_entries dhash_entries=n Cette option permet de remplacer le nombre par défaut de compartiments de hachage pour le cache dentry du noyau. Recommandé uniquement pour les experts du noyau.
elevator elevator=[anticipatory/cfq/deadline/noop] Spécifie le planificateur d'E/S. Voir IOSCHED_NOOP pour une liste des différents planificateurs d'E/S disponibles et ce qu'ils font.
hashdist hashdist=[0/1] Les hachages importants alloués pendant le processus de démarrage sur la plate-forme IA-64 sont, par défaut, répartis sur les différents nœuds NUMA. Cette option permet à l'utilisateur de option activée ou désactivée.
combine_mode combine_mode=[combined/ide/libata] Contrôle le pilote qui utilise les ports IDE en mode combiné: le pilote IDE hérité, la libata ou les deux. Notez que l'utilisation des options ide ou libata peut affecter le nom de votre appareil (par exemple, en changeant hdc en sdb).
max_loop max_loop=n Spécifie le nombre maximal de périphériques de système de fichiers de bouclage pouvant être montés en même temps. n est un entier de 1 à 256.
panic panic=n Spécifie la durée en secondes que le noyau doit attendre après un panic avant de redémarrer. Si ce paramètre est défini sur 0 (la valeur par défaut), le noyau ne redémarrera pas après la panic; il s'arrêtera simplement.
pause_on_oops pause_on_oops=n Dit au noyau d'arrêter tous les CPU après les premiers oops pendant n secondes avant de continuer. Ceci est utile si les oopses continuent de défiler hors de l'écran avant de pouvoir les écrire ou de les prendre en photo.
profil profil=[calendar,][number] Cette option affecte la façon dont le profileur de noyau est calculé. Si une planification est spécifiée, les points de planification sont affectés par la valeur définie en nombre. Si la planification n'est pas spécifiée, nombre est la taille de l'étape en tant que puissance de deux pour le profilage statistique basé sur le temps dans le noyau. L'utilisation la plus courante de cette option est profil=2
lfs/lkn-c10-kernel-boot-command-line-parameter-reference.txt · Last modified: 2025/02/19 10:59 by 127.0.0.1