TipsKernel: Ajout kernel-command-line

This commit is contained in:
Brice Waegeneire 2023-10-06 12:25:21 +02:00
parent fe8915bed9
commit 1659b331a2

View file

@ -8,22 +8,15 @@ $ uname -a
Le noyau en lui même est un fichier de quelques Mo. Il est souvent nommé `/boot/vmlinuz-X.y.z-patch`. C'est ce fichier qui est lancé par le boot loader (LILO, GRUB, Yaboot, etc.). Les modules éventuels se retrouvent souvent sous le répertoire `/lib/modules/X.y.z-patch/`. Parlons aussi du fichier `System.map` (table des symboles du noyau) qui se trouve en général dans le répertoire `/boot/`. Enfin, parlons du fichier `initrd` qui se trouve sur certains systèmes Linux. Il s'agit d'un disque RAM initialisé au démarrage avant le noyau pour permettre un démarrage en deux phases (utile dans certains cas). Ce fichier sera également lancé par le boot loader.
## Argmuents de la ligne de commande du noyau Linux
Les arguments passés au noyau Linux par le bootloader (Grub, systemd-boot, ...) sont nombreux. Ils sont utilisés aussi bien par le noyau que par différents processus afin d'ajuseter leur comportements dès le démarrage de l'OS.
La liste des arguments interprétés par Linux est [documenté ici](https://docs.kernel.org/admin-guide/kernel-parameters.html). Ceux utilisés par systemd le sont dans la page du manuel [kernel-command-line(7)](https://www.mankier.com/7/kernel-command-line). Ces listes ne sont pas exhaustives car d'autres modules (ZFS, ...) ou processus peuvent documenter leur propores arguments dans leurs documentations respectives.
## timestamp dmesg
Quant on a une ligne du type :
~~~
[3412725.317750] entry->group=(null) inode=(null) wd=4096
~~~
On peut déduire depuis combien d'heure(s) cela s'est produit avec la commande :
~~~
$ echo "($(awk '{print $1}' /proc/uptime) - 3412725.317750 ) / 60 / 60" | bc
18
~~~
Depuis dmesg version 2.25 (Debian Jessie), on peut utiliser `dmesg -T` qui indiquera la date et l'heure. Exemple de sortie :
Depuis dmesg version 2.25 (Debian Jessie), on peut utiliser `dmesg --time-format iso` ou `dmesg -T` qui indiquera la date et l'heure. Exemple de sortie :
~~~
# dmesg -T
@ -36,6 +29,19 @@ Depuis dmesg version 2.25 (Debian Jessie), on peut utiliser `dmesg -T` qui indiq
[…]
~~~
Pour les versions plus anciennes, quant on a une ligne du type :
~~~
[3412725.317750] entry->group=(null) inode=(null) wd=4096
~~~
On peut déduire depuis combien d'heure(s) cela s'est produit avec la commande :
~~~
$ echo "($(awk '{print $1}' /proc/uptime) - 3412725.317750 ) / 60 / 60" | bc
18
~~~
## touches magiques Sysrq
### Avec le clavier