Posté(e) le 17 juin 200421 a Salut à tous ! Je voulais savoir si il y a de grosses différences entre un noyau de suse 9.1 et un noyau de kernel.org ? Car la derniere fois que j'ai essayé une recompilation d'un noyau 2.6.5 sur SuSe sa c'est finit en kernel panic. Par contre sous Mandrake 10.0 sa marche sans probleme ! Que faut il rajouter au noyau pour qu'il soit utilisable sous SuSe 9.1 ?
Posté(e) le 17 juin 200421 a les "kernel panic" ne depende pas que d'ou tu a recuperer ton kernel mais de la facon dont tu va le configurer lui et le bootloader ( lilo ou grub) Il faut que les 2 soient en accord sinon ...... De plus assez souvent quand sa marche pas , c'est qu'il aurait fallut faire un initrd.img ex: cp /boot/config-2.* /usr/src/linux/.config make bzImage && make modules && make moules_install && make install tu met se qu'il faut pour lilo ou grub tu redemarre et la "kernel panic" unable to mount ......... pourtant c'est le fichier de configuration du noyau fournie par ta distrib. Il faut donc faire un initrd.img et avec exactement le meme .config sa va marcher. Car par default tous les kernel livrés par les distrib passe par un initrd.img Donc soi tu fait differend essaie jusqu'a avoir une config qui s'en passe ou alors tu t'arrange pour faire initrd.img Le mieux c'est de s'en passer mais apres sa depend de son matos ps: Je dit sa par experience personnelle car j'en ai ch*er aussi pour compiler mon mien. Sur debian j'ai trouvé comment faire avec la compile a la sauce debian make-kpkg --initrd --revision=1.0 kernel-image Pour les autre , j'en sais rien
Posté(e) le 17 juin 200421 a Auteur Comment tu fait un initrd.img ? Pour la compilation du noyau je fais : Decompression des sources dans /usr/src/linux 2.6.7 Creation d'un lien symbolique /usr/src/linux make mrproper make menuconfig make clean make bzImage make modules make modules_install et pour finir make install J'ai grub en chargeur. Mais je crois que le make install fait tout le reste tout seul (initrd et modification de grub), non ?
Posté(e) le 17 juin 200421 a pour l'initr.img comme je l'ai dit je ne connait que la methode indiqué au dessus. Par contre toi si tu fait comme tu dit sa va pas allez tres loin ou certainement pas avec tes reglages make mrproper make menuconfig make clean make bzImage on fait le menage "make mrproper" des le depart ok. Mais apres menuconfig , il faut pas faire make clean. c'est idiot , sa doit effacer ton .config et tu doit te retrouver avec celui par defaut quand tu execute le reste
Posté(e) le 17 juin 200421 a Auteur Tu crois que le make clean efface le .config ? Car j'avais vu cette methode sur un tuto de lea-linux.org je crois (pas sur).
Posté(e) le 17 juin 200421 a tu doit confondre avec : make mrproper make menuconfig make dep clean <<< ou un truc du genre (plus a faire en 2.6) make bzImage make modules make modules_install et pour finir make install
Posté(e) le 17 juin 200421 a Auteur Sa doit etre sa. Par contre le make install ne fait pas grub et initrd ?
Posté(e) le 17 juin 200421 a pour ton kernel panik, je pense que ça viens de grub... pour mon cas je lance: make xconfig make dep clean bzImage modules modules_install mkinitrd make install puis j'édite grub à la main.... car sous suze 9.1 (et fedora et mandrake, j'ai aussi testé) la ligne de démarrage ne convient pas et me donne invariablement un kernel panik, j'ai du respécifier le répertoire root
Posté(e) le 17 juin 200421 a j'peux vous aider sur les noyaux (-enfin, ptet ! ) mais grub je ne connais pas du tout, j'utilise toujours lilo.
Posté(e) le 17 juin 200421 a Auteur Qu'est ce que tu doit faire dans grub après une compil de noyau ?
Posté(e) le 17 juin 200421 a tiens voilà ce que j'ai mis pour grub pour mon noyau title Linux 2.6.6 jphi kernel (hd1,0)/boot/vmlinuz-2.6.6 root=/dev/hdb1 showopts initrd (hd1,0)/boot/initrd-2.6.6 et voilà la version par default lors de l'install de suze title Linux 2.6.4-54-5 SUZE kernel (hd1,0)/boot/vmlinuz-2.6.4-54.5-default root=/dev/hdb1 vga=0x31a splash=silent desktop resume=/dev/hda4 showopts initrd (hd1,0)/boot/initrd-2.6.4-54.5-default je n'ai pas repris les autres option car je n'ai pas lu la doc, donc je ne sais pas trop à quoi ça sert ça démarre bien, mais je n'ai pas les logo lors du démarrage.... tiens rémy puisque tu proposes ton aide, le fichier system.map, ça sert à quoi?... tiens je viens d'aller faire un tour sur kernel.org, j'avais pas vu que le 2.6.7 était passé en stable.... manquerait'il une news???? Modifié le 17 juin 200421 a par jphi35
Posté(e) le 18 juin 200421 a tiens rémy puisque tu proposes ton aide, le fichier system.map, ça sert à quoi?.. Quand tu recompiles un noyau linux, il se referre a des symboles, venant de fonctions, variables etc... Il en a besoin apres pour les connaitre lorsqu'il s'execute, et pour cela le noyau a besoin d'une table des symboles ( tout comme un programme executable ). Cette table des symboles est creee lors de la compilation d'un noyau et porte le nom de 'system.map' , sachant que map signifie carte en anglais, cela semble assez coherent une fois qu'on sait ce que c'est. Donc sans system.map, ca peut ne pas marcher ou partiellement marcher, mais y a un bug dans l'air....
Posté(e) le 18 juin 200421 a j'ai cherché un peu et ai trouvé une autre déf: system.map est un fichier de symbôles du noyau. Il indique les points d'entrées de chaque fonction dans l'API du noyau, mais aussi les adresses des structures de données propres noyau en cours d'exécution. un idée au hasard : ce serait pratique d'avoir une page html avec un arborescence type de linux, et l'utilisation/rôle/définition de chaque fichier/répertoire type.... pour les newbees, cela pourrait être pratique et permattrait de savoir qui fait quoi, et où c'est rangé... autre question (j'ai pas encore cherché..), comment le noyaux sait il repérer le bon system.map. J'ai plusieur noyaux sur ma machine, et donc plusieurs system.map exemple: System.map-2.6.4-54.5-default System.map-2.6.6 Modifié le 18 juin 200421 a par jphi35
Posté(e) le 18 juin 200421 a System.map-2.6.4-54.5-default System.map-2.6.6 la reponse est dans la question, les versions des noyaux sont a la fin du nom, derriere le .map ! System.map-2.6.4-54.5-default => noyau par defaut de ta distrib, un 2.6.4 System.map-2.6.6 => noyau que tu as recompile Et pour connaitre la version de ton noyau : uname -a
Posté(e) le 18 juin 200421 a Je me suis mal exprimé. Puis-je renommer sans risque le fichier system.map/vmlinuz en system.map.toto/vmlinuz.toto afin de faire differente version du même kernel. Va t'il faire tout seul le lien entre les version ".toto"
Posté(e) le 18 juin 200421 a je n'ai jamais essaye, mais je pense que ca ne fonctionnera pas. Le fichier doit etre reference par des pointeurs memoires, a mon avis ca merderait qqpart car il chercherait toujours l'ancien.
Posté(e) le 18 juin 200421 a Je cite zaverel qui a fait une excellente suggestion, ( vraiment zaverel ) : l y a aussi une d'autres options interessantes : make-kpkg --help (entre autre) --append_to_version foo an additional kernel sub-version. ([-a-z.+0-9]) Does not require editing the kernel Makefile over rides env var APPEND_TO_VERSION. requires a make-kpkg clean make-kpkg --revision=1.0 kernel-image --append_to_version essaie1 comme ca apres installation sa donne /boot/vmlinuz-2.6.6-essaie1 /lib/modules/2.6.6-essaie1 car si on ne se mefie pas ,c'est un coup a ecraser la version precedente , ca m'est arrivé et heuresement je n'avait pas supprimer le kernel 2.4 de l'install par default, sinon j'etait dans le caca
Posté(e) le 18 juin 200421 a bon deja, sur un 2.6, make all modules_install suffit et pkoi tu prend pas les rpm officiel de suse pour le dernier noyo
Posté(e) le 19 juin 200421 a c'est quoi ces patch: + patch ck1+ mm1 + love1 d'où viennent ils? où peut on trouver dse informations sur les patch à installer, et leur disponibilité ? (c'est surtout ça qui m'intéresse, cela évitera de poser la première question )
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.