Où le fichier de configuration du noyau est-il stocké?

11

J'exécute actuellement Angstrom Linux 2.6.32. J'ai l'intention de mettre à niveau le noyau Linux de 2.6.32 à 3.0.7. Pour cette raison, j'ai dû configurer le noyau 3.0.7 en cours d'exécution make menuconfig.

Maintenant, je veux comparer la nouvelle configuration du noyau avec la précédente, mais je ne trouve pas le fichier de configuration du noyau 3.0.7. Des idées?

dempap
la source

Réponses:

9

Votre nouveau est .configau niveau supérieur de votre arbre source du noyau. Il peut également être installé sur /boot/config-3.0.7ou similaire, selon.

derobert
la source
Malheureusement, il n'y a pas de .configfichier dans le /usr/src/linux-3.0.7répertoire. Sur /bootil n'y a qu'un config-2.6.32fichier.
dempap
@dempap ​​/usr/src/linux-3.0.7 est l'endroit où vous avez couru make menuconfig? Cela aurait dû générer un .config.
derobert
1
Je suggère donc find -type f -name '.config'de le trouver. J'en ai certainement un dans mes arbres sources du noyau, à travers au moins 3.13.
derobert
@dempap ​​A .configest toujours généré dans le répertoire où vous avez exécuté make menuconfig(ou l'un des autres make xxxconfig). Si ce n'est pas le cas, vous cherchez dans le mauvais répertoire ou vous l'avez supprimé.
Gilles 'SO- arrête d'être méchant'
1
@dempap ​​essaie ls -Ade le voir. Les fichiers commençant par .sont traités comme masqués (par convention).
derobert
11

Chaque fois que vous exécutez make menuconfig, make xconfig, make XXX_defconfig, make oldconfig, make localmodconfigou l' une des autres make XXXconfigcibles dans l'arborescence des sources de Linux, cela crée ( en cas de succès) un fichier appelé .config. Ce fichier est utilisé lors de la compilation du noyau et n'est pas effacé sauf si vous l'effacez manuellement ou que vous l'exécutez make mrproper.

Il est courant de conserver les arbres sources du noyau /usr/src; si vous avez fait la compilation, /usr/src/linux-3.0.7alors votre .configfichier est dedans /usr/src/linux-3.0.7/.config. (Comme il s'agit d'un fichier à points , la lscommande ne l'affiche que si elle est exécutée avec l' -aindicateur.)

De nombreuses distributions s'arrangent pour copier le .configfichier dans le paquet contenant le noyau, et l'installer à côté du noyau, par exemple /boot/config-3.0.7pour correspondre /boot/vmlinuz-3.0.7. Les distributions intégrées ne font souvent pas cela; Je ne sais pas si Angstrom le fait, et de toute façon cela ne s'applique pas si vous avez compilé le noyau manuellement.

La configuration du noyau peut parfois être disponible à partir du noyau en cours d'exécution dans /proc/config.gz. Cela nécessite l' IKCONFIGoption de compilation.

Gilles 'SO- arrête d'être méchant'
la source