Bonjour,

Je suis sous Fedora 3.

En faisant uname -a j'obtiens ceci :

[kernel269@localhost ~]$ uname -a
Linux localhost.localdomain 2.6.9-1.667 #1 Tue Nov 2 14:41:25 EST 2004 i686 athl
on i386 GNU/Linux
[kernel269@localhost ~]$

J'ai essayé de suivre le tutorial suivant :

http://www.fedora-france.org/modules/wfsection/article.php?page=1&articleid=64

il explique comment compiler un noyau.

Je tente de suivre le tutorial, mais je n'arrive pas à l'appliquer correctement.

1)Je réussi à créer un nouvel utlisateur, qui servira juste pour ce genre de
manipulation. Je l'appelle kernel269

2) Je me relogue sous ce compte : kernel269

3) je crée un fichier rpmmacros que je mets dans le répertoire kernel, comme
cela est décrit dans le point 2 du tutorial :

[kernel269@localhost ~]$ cd /home
[kernel269@localhost home]$ ls
kaleo kernel
[kernel269@localhost home]$ cd kernel
[kernel269@localhost ~]$ ls
Desktop rpmbuild rpmmacros Templates
[kernel269@localhost ~]$

3.1) je mets dans ce fichier :

[kernel269@localhost ~]$ cat rpmmacros
# ~/.rpmmacros
%packager <Votre_Nom>
%_topdir %(echo "$HOME")/rpmbuild
[kernel269@localhost ~]$

4) je crée dans le répertoire kernel le dossier rpmbuild, avec ses 4 sous
dossiers:

[kernel269@localhost ~]$ ls
Desktop rpmbuild rpmmacros Templates
[kernel269@localhost ~]$ cd rpmbuild
[kernel269@localhost rpmbuild]$ ls
BUILD RPMS SOURCES SRPMS
[kernel269@localhost rpmbuild]$

5) Je récupère les sources du nouveau noyau, le 2.6.9-1.681, en effet je tourne
actuellement avec le 2.6.9-1.667 :

[kernel269@localhost rpmbuild]$ wget
http://ftp.lip6.fr/ftp/pub/linux/distributions/fedora/updates/3/SRPMS/kernel-2.6.9-1.681_FC3.src.rpm
--23:35:45--
http://ftp.lip6.fr/ftp/pub/linux/distributions/fedora/updates/3/SRPMS/kernel-2.6.9-1.681_FC3.src.rpm
=> `kernel-2.6.9-1.681_FC3.src.rpm'
Résolution de ftp.lip6.fr... 195.83.118.1
Connexion vers ftp.lip6.fr[195.83.118.1]:80...connecté.
requête HTTP transmise, en attente de la réponse...200 OK
Longueur: 37,592,946 [application/x-rpm]

100%[===================================================================>]
37,592,946 120.88K/s ETA 00:00

23:40:49 (120.50 KB/s) - `kernel-2.6.9-1.681_FC3.src.rpm' saved
[37,592,946/37,592,946]

[kernel269@localhost rpmbuild]$


6) je tente la commande suivante :

[kernel269@localhost rpmbuild]$ ls -al
total 36804
drwxr-xr-x 6 kernel269 kernel 4096 fév 2 23:35 .
drwx------ 23 kernel269 kernel 4096 fév 2 23:21 ..
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:35 BUILD
-rw-r--r-- 1 kernel269 kernel 37592946 nov 22 05:25
kernel-2.6.9-1.681_FC3.src.rpm
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:38 RPMS
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:37 SOURCES
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:35 SRPMS
[kernel269@localhost rpmbuild]$ rpm -ivh kernel-2.6.9-1.681_FC3.src.rpm
erreur: impossible d'écrire dans %sourcedir /usr/src/redhat/SOURCES
[kernel269@localhost rpmbuild]$

6.1) Je me mets sous root pour exécuter cette même commande :

[kernel269@localhost rpmbuild]$ su -
Password:
[root@localhost ~]# cd /home/kernel/rpmbuild
[root@localhost rpmbuild]# ls -al
total 36804
drwxr-xr-x 6 kernel269 kernel 4096 fév 2 23:35 .
drwx------ 23 kernel269 kernel 4096 fév 2 23:43 ..
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:35 BUILD
-rw-r--r-- 1 kernel269 kernel 37592946 nov 22 05:25
kernel-2.6.9-1.681_FC3.src.rpm
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:38 RPMS
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:37 SOURCES
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:35 SRPMS
[root@localhost rpmbuild]# rpm -ivh kernel-2.6.9-1.681_FC3.src.rpm
1:kernel ########################################### [100%]
[root@localhost rpmbuild]#


Je ne sais pas pourquoi le fichier kernel-2.6.9-1.681_FC3.src.rpm date du 22
novembre et les autres du 2 février.

7) Là je ne suis plus. En effet, je devrait trouver dans le repertoire
rpmbuild et ses 4 sous-repertoires les sources, or je ne trouve rien.

[root@localhost rpmbuild]# cd SOURCES
[root@localhost SOURCES]# ls -al
total 16
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:37 .
drwxr-xr-x 6 kernel269 kernel 4096 fév 2 23:35 ..
[root@localhost SOURCES]#

[kernel269@localhost rpmbuild]$ cd SRPMS
[kernel269@localhost SRPMS]$ ls -al
total 16
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:35 .
drwxr-xr-x 6 kernel269 kernel 4096 fév 2 23:35 ..
[kernel269@localhost SRPMS]$


Pour exemple je devrais trouver selon le point 6 du tutorial, le répertoire
SPECS dans rpmbuild. Or je ne le trouve pas :

[root@localhost rpmbuild]# ls -al
total 36804
drwxr-xr-x 6 kernel269 kernel 4096 fév 2 23:35 .
drwx------ 23 kernel269 kernel 4096 fév 2 23:43 ..
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:35 BUILD
-rw-r--r-- 1 kernel269 kernel 37592946 nov 22 05:25
kernel-2.6.9-1.681_FC3.src.rpm
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:38 RPMS
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:37 SOURCES
drwxr-xr-x 2 kernel269 kernel 4096 fév 2 15:35 SRPMS
[root@localhost rpmbuild]#

Où est le bug ? 😉


Merci d'avance 😉
[kernel269@localhost rpmbuild]$ rpm -ivh kernel-2.6.9-1.681_FC3.src.rpm
erreur: impossible d'écrire dans %sourcedir /usr/src/redhat/SOURCES
Tu as deja un probleme de permission dans ce repertoire.
C'est $HOME/.rpmmacros et non $HOME/rpmmacros .
fmatias a écrit:
C'est $HOME/.rpmmacros et non $HOME/rpmmacros .
C'est effectivement ça qui pose problème.

Je propose à notre ami jviscuso de faire la chose suivante...
Reprendre depuis le début en faisant du copier/coller des morceaux de codes de l'exemple (en oubliant pas de changer ce qu'il faut changer: <Votre_Nom>, <Vos_Initiales>, <Date>, <ARCH>).

Il faut faire un minimum attention à ce qu'on fait et ne pas se précipiter. Je pense que le tutorial de votre serviteur est assez détaillé, mais si vous voulez voir des points éclaircis, faites le moi savoir.
  • [supprimé]

Merci pour vos réponses.

En effet, c'est bien le . devant le fichier rpmmacros qui empechait l'installation des sources dans le répertoire rpmbuild et ses 4 sous répertoires.

Mais je ne comprends pas pourquoi le fait de mettre ce point et donc de faire un fichier caché de rpmmacros permet de réussir l'installation des fichiers sources dans le dossier rpmbuild ?

Merci pour "en oubliant pas de changer ce qu'il faut changer: <Votre_Nom>, <Vos_Initiales>, <Date>, <ARCH>)".
Je ne l'avais pas remarqué, je vais rectifier en conséquent;)


je suis arrivé jusqu'à l'étape 10 du tutorial, là cela me lance l'application gconfig.

Mais comme les choix sont nombreux et que je suis néophyte, pouvez vous me conseiller de ne pas toucher à certainnes rubriques ?

J'ai besoin de cette machine pour internet (ADSL ethernet), j'y branche de temps à autre une clef USB (fichiers faciles à transporter de cette manière 😉, de même je souhaite brancher cette machine à une autre vieux pc (166 mhz), sur lequel tournera une imprimante, éventuellement un bon affichage vidéo, enfin j'aimerais bien toucher au noyau.

Voilà en gros mes besoins.

Sinon, existe il un site qui regroupe les noyaux patchés de fedora (mis à part celui cité dans le tutorial;) ?

Si oui pouvez vous m'en indiquer l'adresse s.v.p.


Se serait bien que cela soit présent sur la page téléchargement de ce site 😉

Merci 😉
jviscuso a écrit:
Mais je ne comprends pas pourquoi le fait de mettre ce point et donc de faire un fichier caché de rpmmacros permet de réussir l'installation des fichiers sources dans le dossier rpmbuild ?
C'est pourtant évident ".rpmmacros" != "rpmmacros". Si rpmbuild ne trouve pas le fichier, il fonctionne avec les valeurs par défaut.
jviscuso a écrit:
Mais je ne comprends pas pourquoi le fait de mettre ce point et donc de faire un fichier caché de rpmmacros permet de réussir l'installation des fichiers sources dans le dossier rpmbuild ?
Il n'est pas réellement caché. Se sont les applications (ls, nautilus, etc) qui décide de le cacher en respect à une "convention" qui dit que les fichiers commençants par "." ne sont pas d'un intérêt important et récurrent pour l'utilisateur ce qui est typiquement le cas pour les fichiers de configuration. Les fichiers de configuration sont ... configurés, puis ont y touche plus. Donc pourquoi les afficher en permanence ?

Ça ne marche, car rpmbuild ouvre $HOME/.rpmmacros et non $HOME/rpmmacros. C'est tout.

Mais comme les choix sont nombreux et que je suis néophyte, pouvez vous me conseiller de ne pas toucher à certainnes rubriques ?
Franchement, si tu ne sais pas pourquoi tu compiles un noyau ne compile pas de noyau. Il y a aussi d'autres éléments hyper important dans un OS comme la libc et personne pense à recompiler la libc. Bizarre...
Sinon, existe il un site qui regroupe les noyaux patchés de fedora (mis à part celui cité dans le tutorial;) ?
Il n'y a pas 50 noyaux :
- Fedora Core
- Rawhide (branche de développement)
- RHEL

C'est tout. De plus Fedora utilise exactement le même noyau pour le noyau d'installation et le noyau utilisé à l'excution de l'OS une foi installé. C'est aussi exactement les mêmes sources pour toutes les architectures.

Le noyau Fedora Core est très proche du noyau upstream. Il y a principalement des bugfix (déjà upstream (dans la branche de développement) en attente d'être upstream ou être plus au point ou validé avant d'être proposé upstream) et des petits "bonus" :
- devmem
- exec-shield (ne sera probablement jamais upstream)
- serveur web tux (ne sera jamais upstream)
- signature module
- quelques extensions/optimisations ext3 qui généralement finissent upstream (c'est principalement Red Hat qui développe ext3)
- parfois quelques drivers qui ne sont pas upstream (c'est assez rare contrairement à Mandrake ou SuSE par exemple)

C'est tout.
  • [supprimé]

Bonjour 😉

Merci encore pour vos réponses 😉

Je souhaite en effet compiler ce noyau pour le plaisir, savoir le faire, et aussi pour optimiser la machine, la rendre moins longue à démarrer, et mieux comprendre linux, et savoir réagir pour le jour où j'aurais un problème qui implique de changer de noyau.

Ok, j'en suis à l'étape 11

"11. Compilation du noyau et création du paquetage

La commande est quasiment identique à celle du point 9, mais là on va demander la création du binaire.

rpmbuild -bb --target=<ARCH> ~/rpmbuild/SPECS/kernel-2.6.spec"

J'ai remplacé <ARCH> par i686 :

rpmbuild -bb --target=i686 ~/rpmbuild/SPECS/kernel-2.6.spec

Cela me renvoit le message suivant :

+ echo BUILDING A KERNEL FOR i686...
BUILDING A KERNEL FOR i686...
+ perl -p -i -e 's/^EXTRAVERSION.*/EXTRAVERSION = -1.681_FC3.JMV.03/02/2005/' Makefile
Number found where operator expected at -e line 1, near "s/^EXTRAVERSION.*/EXTRAVERSION = -1.681_FC3.JMV.03/02"
syntax error at -e line 1, near "s/^EXTRAVERSION.*/EXTRAVERSION = -1.681_FC3.JMV.03/02"
Execution of -e aborted due to compilation errors.
erreur: Mauvais status de sortie pour /var/tmp/rpm-tmp.71055 (%build)


Erreur de construction de RPM:
Mauvais status de sortie pour /var/tmp/rpm-tmp.71055 (%build)
[kernel269@localhost SOURCES]$


Voilà ce qui est écrit dans /home/kernel/rpmbuild/SPECS (selon l'étape 7. Identification du noyau) :

Summary: The Linux kernel (the core of the Linux operating system)

# What parts do we want to build? We must build at least one kernel.
# These are the kernels that are built IF the architecture allows it.

%define buildup 1
#%define buildsmp 1
%define buildsmp 0
%define buildsource 0
%define builddoc 0


# Versions of various parts

#
# Polite request for people who spin their own kernel rpms:
# please modify the "release" field in a way that identifies
# that the kernel isn't the stock distribution kernel, for example by
# adding some text to the end of the version number.
#
%define sublevel 9
%define kversion 2.6.%{sublevel}
%define rpmversion 2.6.%{sublevel}
%define rhbsys .JMV.03/02/2005
%define release %(R="$Revision: 1.681 $"; RR="${R##: }"; echo ${RR%%?})_FC3%{rhbsys}
%define signmodules 0
%define make_target bzImage

%define KVERREL %{PACKAGE_VERSION}-%{PACKAGE_RELEASE}

Qu'en pensez vous ?
disciple a écrit:

%define rhbsys .JMV.03/02/2005

Qu'en pensez vous ?
Remplace cette ligne par

%define rhbsys .JMV.03.02.2005

Et ça doit passer.
  • [supprimé]

Bonjour,

C'était bien les / qui gênaient.

La compilation du noyau sous FC3 c'est donc bien accomplie

[kernel269@localhost ~]$ uname -a
Linux localhost.localdomain 2.6.9-1.681_FC3.JMV.03.02.2005 #1 Fri Feb 4 19:35:05 CET 2005 i686 athlon i386 GNU/Linux
[kernel269@localhost ~]$


Se serait bien de rajouter dans le tutorial le moyen de vérifier si la compilation est une réussite.

C'est marrant, je vois "Fri Feb 4 19:35:05" quand j'exécute la commande uname -a alors que je viens juste d'installer le noyau.

Merci donc à tous pour leure précieuse aide, c'est un vrai plaisir de voir que cela marche :-D

Au sujet du choix du noyau Fedora patché, peut on passer sans soucis d'un noyau officiel Red Hat (qu'il soit Fedora Core, Rawhide (branche de développement) ou dédié aux entreprises (RHEL)) à un noyau Fedora produit par quelqu'un qui ne soit pas membre de Red Hat (et inversement) ?

Ou vaut il mieux rester dans la même gamme de noyau (n'utiliser que les noyaux produits par les mêmes personnes) ?

Se serait super d'avoir un tutorial pour recompiler et ou compiler une libc (une librairie en C)

Cordialement
disciple a écrit:
[kernel269@localhost ~]$ uname -a
Linux localhost.localdomain 2.6.9-1.681_FC3.JMV.03.02.2005 #1 Fri Feb 4 19:35:05 CET 2005 i686 athlon i386 GNU/Linux
[kernel269@localhost ~]$


Se serait bien de rajouter dans le tutorial le moyen de vérifier si la compilation est une réussite.
Pour vérifier, tu es bien obligé de le charger et donc tu vois bien si ca a fonctionné ou pas.
  • [supprimé]

Bonsoir,

Oui c'est vrai.

1)Sinon, quelqu'un a t il une explication sur le chiffre 681 ?

Un noyau 2.6.9-1.681_FC3 a pour numéro majeur 2, mineur 6 (les chiffres mineurs pairs sont dit stables, ceux impairs servent surtout pour le développement).

Et c'est la version 9 du noyau 2.6 (sa neuvième correction).

Quand au -1 c'est le numéro de version Red Hat du noyau 2.6.

2)Lorsqu'on compile le nouveau noyau, là c'est le 2.6.9-1.681_FC3 qui a été installé, que devient l'ancien ?

Il est écrasé ?

3)Se serait bien d'avoir un tutorial qui explique comment compiler un nouveau noyau tout en gardant l'ancien.

En effet, on peut avoir besoin de l'ancien noyau pour faire tourner un programme qui ne tourne pas sous le nouveau noyau.

De plus, si on plante sa compilation, sa mise à jour du noyau (par exemple;), c'est bien d'avoir la possibilité de relancer sa Fedora avec l'ancien noyau en attendant.

Ainsi, on pourrait choisir avec GRUB entre ces deux versions du noyau.

Quelq'un souhaite t il me guider, me montrer comment faire, pour cette tâche ?

Merci d'avance 😉
disciple a écrit:
Quand au -1 c'est le numéro de version Red Hat du noyau 2.6.
Non, c'est 1.681 le numéro de version Fedora.
1 pour le majeur et 681 pour le mineur.
2)Lorsqu'on compile le nouveau noyau, là c'est le 2.6.9-1.681_FC3 qui a été installé, que devient l'ancien ?

Il est écrasé ?
Pas du tout, si tu utilise la méthode expliquée dans mon tutorial, tu installe un RPM et Grub propose au boot une liste permettant de choisir la version du noyau sur laquelle tu veux booter.

Si tu ne vois pas la liste, c'est que ton "/boot/gurb/grub.conf" comporte les options "timeout" et "hidemenu" et qu'il boote rapidement sur le premier noyau disponible dans la liste. Supprime ces deux lignes et tu pourras prendre le temps de choisir sur quoi tu veux booter.
  • [supprimé]

1)Que du bonheur :-D

[kernel269@localhost ~]$ su -
Password:
[root@localhost grub]# cd /boot/grub
[root@localhost grub]# ls
device.map grub.conf minix_stage1_5 stage2
e2fs_stage1_5 iso9660_stage1_5 reiserfs_stage1_5 ufs2_stage1_5
fat_stage1_5 jfs_stage1_5 splash.xpm.gz vstafs_stage1_5
ffs_stage1_5 menu.lst stage1 xfs_stage1_5
[root@localhost grub]# cat grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00
# initrd /initrd-version.img
#boot=/dev/hda
default=0
#timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
#hiddenmenu
title Fedora Core (2.6.9-1.681_FC3.JMV.03.02.2005)
root (hd0,0)
kernel /vmlinuz-2.6.9-1.681_FC3.JMV.03.02.2005 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.9-1.681_FC3.JMV.03.02.2005.img
title Fedora Core (2.6.9-1.667)
root (hd0,0)
kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.9-1.667.img
[root@localhost grub]#

2)Actuellement je suis en train de compiler le noyau kernel-2.6.10-1.760_FC3.src.rpm, le dernier disponible pour Fedora 3 je pense.

J'ai tenté de créer un ".rpmmacros" similaire.

Pour cela j'ai renommé ".rpmmacros" ".rpmmacrosa"
Et j'ai mis dedans :

# ~/.rpmmacrosa
%packager kernalito2610
%_topdir %(echo "$HOME")/rpmbuilda

ps: j'ai tenté la même chose en remplaçant "a" par "1"

Cela ne marchait pas, c'est à dire que la commande :

rpm -ivh kernel-2.6.10-1.760_FC3.src.rpm

marche, mais cela ne crée rien dans ~/rpmbuilda.

Et je ne comprends pas pourquoi.

Toutefois, en éliminant le fichier ".rpmmacrosa", puis en modifiant ".rpmmacros" :

[kernel269@localhost ~]$ cat .rpmmacros
# ~/.rpmmacros
%packager kernalito2610
%_topdir %(echo "$HOME")/rpmbuilda
[kernel269@localhost ~]$

Je réussi à créer dans le répertoire "rpmbuilda" l'arborecsence voulue.

3)Comment faire pour chercher dans qconf un élément ; comme le chipset VIA KT333, le VIA VT8233A, le processeur AMD 2100+ (etc...) ?

En effet, quand je tape la commande "make xconfig", cela me lance qconf. Or les recherches manuelles sont fastidieuses et hasardeuses (j'explore l'arboresence)

Ainsi, existe t il un moyen de lancer une recherche automatique ?

Sinon, existe t il un logiciel similaire qui le permet ?

Merci d'avance et bravo pour cette précieuse aide :-D
C'est vrai que les recherches c'est pas le top.
Mais il faut bien comprendre que si c'étais aussi simple, on ferait sans doute beaucoup plus de bétises. Cette interface incite à la prudence.

Si tu veux faire une recherche, tu peux la faire en mode texte dans le fichier ".config".
  • [supprimé]

Bonjour,

1)J'ai remarqué lors de la compilation du kernel-2.6.10-1.760_FC3.src.rpm avec la commande (étape 11 du tutorial:

rpmbuild -bb --target=i686 ~/rpmbuilda/SPECS/kernel-2.6.spec

De nombreux messages d'alertes, des warning entre autre ...

Comment voir cet historique ?

2)D'autre part, lorsque je tape la commande make xconfig, j'obtiens par défaut le logiciel qconf, or il semble que gconf soit plus facile à utiliser.

Comment faire pour en faire l'éditeur de configuration par défaut ?

3)Lorsque le nouveau noyau est installé, et qu'on veut lui enlever, ajouter des éléments, ou regarder sa configuration, on lance gconf puis on ouvre quel fichier de configuration (qu'on enregistre ensuite avec les modifications effectuées au même endroit que celui où on l'a trouvé je suppose) ?

Merci encore pour ton suivi 8-)
1)J'ai remarqué lors de la compilation du kernel-2.6.10-1.760_FC3.src.rpm avec la commande (étape 11 du tutorial:

rpmbuild -bb --target=i686 ~/rpmbuilda/SPECS/kernel-2.6.spec

De nombreux messages d'alertes, des warning entre autre ...

Comment voir cet historique ?
Tu peux utiliser la commande sous cette forme
nohup rpmbuild -bb --target=i686 ~/rpmbuilda/SPECS/kernel-2.6.spec
Tu pourras ensuite consulter le fichier "nohup.out".
2)D'autre part, lorsque je tape la commande make xconfig, j'obtiens par défaut le logiciel qconf, or il semble que gconf soit plus facile à utiliser.

Comment faire pour en faire l'éditeur de configuration par défaut ?
Aucune idée. Si tu veux "gconf", tapes "make gconf".
3)Lorsque le nouveau noyau est installé, et qu'on veut lui enlever, ajouter des éléments, ou regarder sa configuration, on lance gconf puis on ouvre quel fichier de configuration (qu'on enregistre ensuite avec les modifications effectuées au même endroit que celui où on l'a trouvé je suppose) ?
Les fichiers de configuration correspondant aux différentes versions de noyaux sont sauvegardés dans le dossier "/boot" sous le nom "config-<version_du_noyau>".

Par contre, il ne faut en aucun cas modifier ces fichiers, ils sont le témoin de la configuration du noyau. Pour toute modification (et donc création de nouveau noyau), il faut en passer par le ".config". Soit en le créant par un "Sauvegarder sous...", soit par un "make oldconfig".

Voilà!
  • [supprimé]

Bonsoir,

Je comprends mieux maintenant l'intérêt de la recompilation.

En effet, quand on veut modifier la configuration du noyau actuel, on recompile.

1)Je ne comprends pas bien le fichier oldconfig.

Je trouve en effet dans : /home/kernel/rpmbuild/BUILD/kernel-2.6.9/linux-2.6.9

Un .config et un .config.old (de même pour /home/kernel/rpmbuilda/BUILD/kernel-2.6.10/linux-2.6.10).

Le .config.old est l'ancien fichier .config ? Le fichier .config tel qu'il était avant que je ne le modifie pour le compiler ?

De même, je ne comprends pas son usage dans le cas d'une compilation ?

Une dernière séries de questions sur ce thread 😉 :

2)Peut on mettre un patch de Fedora sur n'importe quelle version de Fedora ?
Par exemple un patch récent, qui tourne sur une Fedora 3, peut il être mis sur une Fedora ancienne, dans le cas où l'on a besoin de garder l'ancienne version de Fedora.

3)Comment savoir à quelle version de Fedora appartient tel patch de fedora ?
Ainsi, si j'ai besoin d'installer un Fedora 1 sur une ancienne machine, quels patchs choisir ?

4) Comment enlever un noyau (tout en gardant le paquet rpm du noyau) du système ?

En effet, j'ai le choix au démarrage (GRUB) entre 3 noyaux : deux noyaux 2.6.9 et un noyau 2.6.10
Ainsi, je ne sais pas comment enlever du système le noyau le plus ancien des deux noyaux 2.6.9

Pour enlever le noyau en question du menu de démarrage de GRUB, je pense savoir le faire 😉

5)Enfin lorsque je lance YUM (ou APT), je remarque deux paquets non installés :

kernel-doc#2.6.10-1.760-FC3
kernel-utils#1:2.4-13.1.49-FC3

Sont ils déjà installés sous un autre nom lorsque j'ai installé l'arborescence du noyau (source et rmp) sous rpmbuilda ?

Où sont ils aussi à installer ?

A bientôt :pint:
1)Je ne comprends pas bien le fichier oldconfig.
Il n'y a pas de fichier "oldconfig". Quand on fait un "make oldconfig", on crée un fichier ".config" correspondant au paramétrage actuel du noyau.

Le fichier ".config.old" est la précérente version du fichier ".config". Il est créé par "gconf" (ou équivalent) lorsque l'on sauvegarde la configuration modifiée.
2)Peut on mettre un patch de Fedora sur n'importe quelle version de Fedora ?
La réponse est NON.
Un patch c'est un fichier de correction de code. Pour qu'il puisse être appliqué, il faut que le fichier source soit présent et qu'il comporte le bug pour lequel le patch a été créé. Il est donc fait pour une version unique.

Toutefois, il n'est pas impossible de concevoir qu'un même bug concerne plusieurs versions, auquel cas le patch peut avoir des chances de fonctionner si le code source est identique (il faudra toutefois changer les chemins d'accès dans le fichier patch). Mais CE QU'IL FAUT RETENIR, c'est qu'un patch est dédié à une version du noyau.
3)Comment savoir à quelle version de Fedora appartient tel patch de fedora ?
Tu peux l'ouvrir ou lire le README associé le cas échéant.
Ainsi, si j'ai besoin d'installer un Fedora 1 sur une ancienne machine, quels patchs choisir ?
Fedora 3 :-D
Tu fais simplement les upgrades de rpm.
4) Comment enlever un noyau (tout en gardant le paquet rpm du noyau) du système ?
Tu fais un "rpm -qa | grep kernel" pour connaître la liste des paquetages comportant le nom "kernel", ensuite pour ceux correspondant à la version à supprimer, tu utilise la commande :
rpm -e <nom_du_paquetage>
Pour enlever le noyau en question du menu de démarrage de GRUB, je pense savoir le faire 😉
Le fait d'enlever le paquetage supprime l'entrée dans grub.conf.

Voilà.

PS: Evite les questions à ralonge... Je préfère plusieurs petites questions.
5 jours plus tard
Dites les gens, il se passe quoi si je prends les sources de kernel.org et que je compile un noyau pas patché, re patché et sur patché par Fedora?

Ce que j'ai fait sur ma Debian aussi quoi...