web-dev-qa-db-fra.com

Obtenir la configuration du noyau du système Linux en cours d’exécution?

J'ai accidentellement supprimé mon fichier .config pour la configuration de mon noyau sous Linux et je me souviens bien qu'il existait un moyen de récupérer la configuration du noyau via le système de fichiers proc d'une manière ou d'une autre.

Est-ce toujours possible, et si oui comment le ferais-je?

101
Sonny Ordell

Selon votre système, vous le trouverez dans l'un de ces éléments:

  1. /proc/config.gz
  2. /boot/config
  3. /boot/config-$(uname -r)

et peut-être plus d'endroits.

104
new123456

Pour un noyau en cours d’exécution, l’un des moyens d’obtenir le fichier de configuration consiste à:

cat /proc/config.gz | gunzip > running.config

ou,

zcat /proc/config.gz > running.config

Alors running.config contiendra la configuration du noyau Linux en cours d’exécution.

Cependant, cela n’est possible que si votre noyau Linux en cours d’exécution a été configuré avec /proc/config.gz. La configuration pour cela se trouve dans

  • General setup
    • [*] Kernel .config support
      • [*] Enable access to .config through /proc/config.gz

La plupart des distributions ne possèdent pas ce jeu de configuration. Ils fournissent des fichiers de configuration du noyau dans leurs packages et se trouvent généralement dans le répertoire /boot/.

54
Jarl

Un peu en retard mais peut-être que ça aide quelqu'un. Je n'avais ni /proc/config.gz ni /boot/config ni /boot/config-$(uname -r) sur mon ordinateur. Je devais exécuter modprobe configs en tant que root. Alors, /proc/config.gz était présent

35
Thomas Sparber

Si vous ne trouvez pas la configuration du noyau dans/boot/ni dans /proc/config.gz, vous pouvez essayer d'extraire ces informations à partir du noyau lui-même.

Dans tout code source du noyau, il existe un script d’extraction de la configuration situé dans scripts/extract-ikconfig, transmettez au noyau dont vous voulez la configuration en tant que paramètre.

Cette solution ne fonctionnera que si Kernel .config support a été activé dans le noyau compilé.

9
Ramast

Indépendamment de la distribution, vous pouvez exécuter: cat /lib/modules/$(uname -r)/build/.config

Source: https://linux.die.net/man/5/proc (recherche de /proc/config).

4
jgomo3