Aller au contenu

[Debian GNU/Linux] Recompiler son propre noyau


Messages recommandés

  • Réponses 209
  • Créé
  • Dernière réponse

Merci,

En faisant ls /boot je pense avoir identifier mon pb:

# ls /boot/

config config-2.4.26-1-386 config-2.6.7 grub initrd.img-2.4.26-1-386 System.map System.map-2.4.26-1-386 System-map-2.6.7 System.map-2.6.7 vmlinuz vmlinuz-2.4.26-1-386 vmlinuz-2.6.7

1/ Je n'ai pas de initrd.img dans mon fichier /boot, pour y remédier, est-ce que je dois faire: cp /usr/src/linux/initrd.img /boot/initrd.img-2.6.7?

2/ J'ai créé 2 System-map-2.67, pour en supprimer un seul est-ce que je dois faire rm System-map-2.6.7 (ça va pas me shooter les 2 ?)

Lien vers le commentaire
Partager sur d’autres sites

1/ Je n'ai pas de initrd.img dans mon fichier /boot, pour y remédier, est-ce que je dois faire: cp /usr/src/linux/initrd.img /boot/initrd.img-2.6.7?

Si tu en as un et que tu l'a demande, oui, mais je ne comprends pas l'interet d'avoir un initrd. D'ailleurs, dans le guide debian il precise que c'est utile lorsque l'on fait une install sur plusieurs machines, mais sinon ils ne l'utilisent pas. Personnellement, je ne l'ai jamais mis sur aucun de mes noyaux, et cela ne m'a jamais pose aucun probleme.

2/ J'ai créé 2 System-map-2.67, pour en supprimer un seul est-ce que je dois faire rm System-map-2.6.7 (ça va pas me shooter les 2 ?)

Ben 2 fichiers ne peuvent avoir le meme nom....Donc, a priori, je dirais non, sauf en cas de lien. ls -harl /boot stp.

Lien vers le commentaire
Partager sur d’autres sites

Si tu en as un et que tu l'a demande, oui, mais je ne comprends pas l'interet d'avoir un initrd. D'ailleurs, dans le guide debian il precise que c'est utile lorsque l'on fait une install sur plusieurs machines, mais sinon ils ne l'utilisent pas. Personnellement, je ne l'ai jamais mis sur aucun de mes noyaux, et cela ne m'a jamais pose aucun probleme.

D'accord, mais mon pb c'est justement de pas savoir d'où vient mon pb, à première vu j'ai fait ce qu'il fallait

make menuconfig

make

make modules_install

make install

j’ai eu le message comme quoi, mon kernel-image se situe dans :

/boot/arch/i386/boot/bzImage-2.6.7

J’ai donc fait:

Cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.6.7

Et ensuite, j'ai configurer GRub:

Title : Debian GNU/Linux, kernel 2.6.7

Root : (hd0,5)

Kernel: /boot/vmlinuz-2.6.7 root=/dev/hda6 ro

Savedefault

Boot

Quelle est la cause de mon pb? Est-ce que cela peu venir d'un oublie lors de la config du noyau?

D'autre part, j'avais voulu appliqué la méthode du tuto en faisant:

make-kpkg --revision=1.0 kernel-image

mais ça aussi ça a pas marché, j'avais pourtant installé avant de commencer gcc, module-init-tools, binutils, modutils, make, le kernel-source en .deb,...., quelle est la raison qui peut expliquer que la commande est pas marchée?

Lien vers le commentaire
Partager sur d’autres sites

D'accord, mais mon pb c'est justement de pas savoir d'où vient mon pb, à première vu j'ai fait ce qu'il fallait

make menuconfig

make

make modules_install

make install

j’ai eu le message comme quoi, mon kernel-image se situe dans :

J'arrive vraiment pas a comprendre. J'ecris un tuto, ou j'explique la methode debian pour recompiler le noyau, avec make-kpkg , mais non, tout le monde utilise cette putain de methode classique. Et apres ca se plaint que ca ne fonctionne pas... Ok, je t'accordes que ca devrait fonctionner avec cette methode la aussi, mais bon ! Debian offre une methode simple et rapide, regroupant les commandes classiques, et cela fonctionne a merveille autant l'utiliser donc. Si elle ne fonctionne pas, il faut chercher a comprendre pourquoi elle ne fonctionne pas et tenter de resoudre le pb, et non le contourner. On va voir ca un peu plus loin dans mon post...

Quelle est la cause de mon pb? Est-ce que cela peu venir d'un oublie lors de la config du noyau?

Ben j'en sais rien, tu ne precises pas le pb. Si c'est toujours ton file not found, c'est juste un pb de configuration de grub, dans ce cas, au boot de grub, tu peux tenter de lancer une console grub et explorer tes disques durs pour verifier que c'est bien hd0,5 qui contient ton noyau...

Un pb de conf du noyau, tu verrais ton noyau booter au debut, et puis tu aurais un "kernel panic".

autre part, j'avais voulu appliqué la méthode du tuto en faisant:

make-kpkg --revision=1.0 kernel-image

mais ça aussi ça a pas marché, j'avais pourtant installé avant de commencer gcc, module-init-tools, binutils, modutils, make, le kernel-source en .deb,...., quelle est la raison qui peut expliquer que la commande est pas marchée?

Ben on y vient... :transpi: Si tu precisais un peu plus "ce qui n'avait pas marché", on pourrait voir. tu dois avoir un rapport d'erreur, un log, dans ce cas fais le voir et je pourrais t'aider. Mais sans explications supplementaires je ne peux t'aider. C'est comme si je te disais tiens hier j'ai essayer d'installer un logiciel sur une machine mais ca ne s'est pas installe, pk ? :transpi: lol bien sur, mais tu vois, je ne peux pas t'aider si tu ne me fournis pas plus d'infos ! Reviens avec des traces et je mle ferias un plaisir de t'aider. Mais saches que si cette methode foire, la methode classique ne menera pas bien loin non plus, puisque la methode debian n'est jamais qu'une sorte de script regroupant les commandes classiques... :non: ( + fabrication du .deb )

Lien vers le commentaire
Partager sur d’autres sites

J'arrive vraiment pas a comprendre. J'ecris un tuto, ou j'explique la methode debian pour recompiler le noyau, avec make-kpkg , mais non, tout le monde utilise cette putain de methode classique. Et apres ca se plaint que ca ne fonctionne pas...

Clair, exactement pareil pour moi...

Y'a genkernel qui fonctionne très bien...J'ai expliqué, c'est facile...

Mais non, y'en a qui préfèrent chercher la difficultée :transpi:

Lien vers le commentaire
Partager sur d’autres sites

Y'a genkernel qui fonctionne très bien...J'ai expliqué, c'est facile...

oops ! coupable.... En fait, j'ai installer gentoo en suivant la doc gentoo, et par defaut ils recommandent de faire a l'ancienne...C'est ptet pour cela que tu as ces pb !

alors que moi, dans les guides debian, c'est bien precise la maniere re recompiler a la debian... J'ai pas encore teste genkernel, j'ai un peu trop l'habitude de faire a la main, mais je vais essayer si tu dis que c'est bien.

Lien vers le commentaire
Partager sur d’autres sites

oops ! coupable.... En fait, j'ai installer gentoo en suivant la doc gentoo, et par defaut ils recommandent de faire a l'ancienne...C'est ptet pour cela que tu as ces pb !

Oui, en fait, ils conseillent la configuration manuelle, pour éviter que les gens n'utilisent genkernel sans config...

Je pense qu'ils devraient conseiller genkernel, mettre le menuconfig par défaut, et mettre une option "--no-menuconfig"

En fait, la version que j'ai de la doc (l'ancienne), conseillait genkernel et hotplug (qui est une merveille, d'ailleur), alors que maintenant, ce n'es plus le cas... Je trouve ça dommage

Lien vers le commentaire
Partager sur d’autres sites

  Ben on y vient... :mdr2: Si tu precisais un peu plus "ce qui n'avait pas marché", on pourrait voir. tu dois avoir un rapport d'erreur, un log, dans ce cas fais le voir et je pourrais t'aider. Mais sans explications supplementaires je ne peux t'aider. C'est comme si je te disais tiens hier j'ai essayer d'installer un logiciel sur une machine mais ca ne s'est pas installe, pk ?  :transpi: lol bien sur, mais tu vois, je ne peux pas t'aider si tu ne me fournis pas plus d'infos ! Reviens avec des traces et je mle ferias un plaisir de t'aider. Mais saches que si cette methode foire, la methode classique ne menera pas bien loin non plus, puisque la methode debian n'est jamais qu'une sorte de script regroupant les commandes classiques... ;) ( + fabrication du .deb )

Thx,

Bon là, je viens de recommencer afin de faire les choses proprement. J'ai donc suivi à la lettre le tuto, et fait ma configuration, et au moment d'effectuer la compilation, tjs le même problème:

*** End of Linux kernel configuration.

*** Execute 'make' to build the kernel or try 'make help'.

/usr/src/linux# make-kpkg --revision=1.0 kernel-image

bash: make-kpkg: command not found

J'ai pourtant bien revérifié que j'avais: GCC, module-init-tools, make, modutils, binutils, libncurses5-dev....avant de me lancer ds la compil

J'ai bien vu "make-kpkg: command not found", je fais donc:

# apt-get install make-kpkg

Lecture des listes de paquets... Fait

Construction de l'arbre des dépendances... Fait

E: Impossible de trouver le paquet make-kpkg

????

Lien vers le commentaire
Partager sur d’autres sites

apt-get install kernel-package

3.1 Packages necessaires

Vous devez avoir les packages suivant d'installe :

gcc

kernel-package

libncurses5-dev

module-init-tools ( pour 2.6 uniquement )

binutils

modutils

 

lol y a pas à dire Remy je suis vraiment une tâche (je croyais que le kernel-package c'était le kernel-source :transpi: )

Lien vers le commentaire
Partager sur d’autres sites

lol, no soucy.

en fait, kernel-package contient les commandes permettant de recompiler un noyau.

C'est sympa de faire preuve d'indulgence :transpi:

Bon là ça m'a l'ai bon:

dpkg-deb : construction du paquet « kernel-image-2.6.7 » dans « ../kernel-image-2.6.7_1.0_i386.deb ».

rm -f -r debian/tmp-image

echo done > stamp-image

make[1]: Leaving directory `/usr/src/kernel-source-2.6.7'

Encore un p'tit coup de:

dpkg --install ../kernel-image-2.6.7_1.0_i386.deb

et ça devrait être bon :)

Lien vers le commentaire
Partager sur d’autres sites

Bon ben voilà, tout c'est passé comme indiqué sur le tuto :)

Mis à part que l'on m'a rien demandé:

/usr/src/linux# dpkg --install ../kernel-image-2.6.7_1.0_i386.deb

Sélection du paquet kernel-image-2.6.7 précédemment désélectionné.

(Lecture de la base de données... 92784 fichiers et répertoires déjà installés.)

Dépaquetage de kernel-image-2.6.7 (à partir de .../kernel-image-2.6.7_1.0_i386.deb) ...

Paramétrage de kernel-image-2.6.7 (1.0) ...

Searching for GRUB installation directory ... found: /boot/grub .

Testing for an existing GRUB menu.list file... found: /boot/grub/menu.lst .

Found kernel: /boot/vmlinuz-2.6.7

Found kernel: /boot/vmlinuz-2.4.26-1-386

Updating /boot/grub/menu.lst ... done

Lien vers le commentaire
Partager sur d’autres sites

Au reboot j'ai encore eu un kernel panic:

Kernel panic:VFS: Unable to mount root fs on unknown-block(0,0)

Et juste avant ce message on me demande d'ajouter un correct "root=" boot option (Please append a coorect "root=" boot option)

J'ai donc rebooté sous l'ancien noyau, j'ai fait un /boot/grub/menu.lst, hd(0,0) correspond à l'emplacement de windoz, je vois pas trop ce qui faut que je modifie?

Est-ce qu'il faut que je remplace le (hd0,0) ci dessous, par (hd0,5) qui correspond à l'emplacement de ma partition Linux?

## default grub root device

## e.g. groot=(hd0,0)

# groot=(hd0,5)

Lien vers le commentaire
Partager sur d’autres sites

ben moi j'aurai plutot mis

root (hd0,0)

kernel=<chemin de l'image du noyau> root=<partition montee sur />

A vrai dire, je comprends pas vraiment le message indiqué avec le kernel panic. Il me parle d'un bloc (0,0) inconnu.... mais qd je regarde les options par défaut ça semble bon, mon noyau 2.6.7 est evidemment sur la même partition que l'ancien, et le chemin indiqué semble également bon:

ls /boot

config-2.4.26-1-386 config-2.6.7 grub initrd.img-2.4.26-1-386 System.map-2.4.26-1-386 System.map-2.6.7 vmlinuz-2.4.26-1-386 vmlinuz-2.6.7

## ## End Default Options ##

title Debian GNU/Linux, kernel 2.6.7

root (hd0,5)

kernel /boot/vmlinuz-2.6.7 root=/dev/hda6 ro

savedefault

boot

title Debian GNU/Linux, kernel 2.6.7 (recovery mode)

root (hd0,5)

kernel /boot/vmlinuz-2.6.7 root=/dev/hda6 ro single

savedefault

boot

title Debian GNU/Linux, kernel 2.4.26-1-386

root (hd0,5)

kernel /boot/vmlinuz-2.4.26-1-386 root=/dev/hda6 ro

initrd /boot/initrd.img-2.4.26-1-386

savedefault

boot

title Debian GNU/Linux, kernel 2.4.26-1-386 (recovery mode)

root (hd0,5)

kernel /boot/vmlinuz-2.4.26-1-386 root=/dev/hda6 ro single

initrd /boot/initrd.img-2.4.26-1-386

savedefault

boot

Lien vers le commentaire
Partager sur d’autres sites

title Debian GNU/Linux, kernel 2.6.7

root (hd0,5)

kernel /boot/vmlinuz-2.6.7 root=/dev/hda6 ro

savedefault

boot

Ca implique que ton /boot et / soient sur la meme partition ! C'est le cas ?

Sinon moi j'aurais simplement mis :

title Debian GNU/Linux, kernel 2.6.7
root (hd0,5)
kernel (hd0,5)/vmlinuz-2.6.7 root=/dev/hda6 

Lien vers le commentaire
Partager sur d’autres sites

Tiens j'ai pas tilte de suite, mais perso ma "/" je prefere l'avoir sur une partoche primaire ( ainsi que /boot ).

Tu as essayer avec les 3 lignes que je t'ai donne ? Au pire, au boot, tu lances une console grub, tu tapes root (hd0, <tab> il devrait te montrer la liste des partitions, ca donne quoi ?

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.


×
×
  • Créer...