[Discussion] Recompilation de son kernel

j’ajouterais qu’il faut aussi recompiler avec les modules externes comme le nVidia, mais ça peut se faire dans la même ligne en faisant un make-kpkg … --added-modules=“truc,bidule,…” kernel-image modules-image

@mattotop > Le kernel (le ramdisk pour être précis) effectue un repérage de ce sur quoi il tourne pour charger les bons modules, non? Mettre les modules qu’on utilise en dur offre une accélération face au module en supprimant la procédure de chargement et de déchargement du kernel.
Mais en effet la vitesse s’améliore mais pas des masses (je te taquine juste).
:slightly_smiling:

[quote][sur fakeroot] En as tu trouvé de valable qui te dise pourquoi c’est dangereux ? La sécurité peut toujours être poussée un peu plus loin, mais il y a des moment ou il faut arbitrer entre sécurité extrême et prise de tête. Tu me diras, peut être que fakeroot est simple à utiliser, mais je n’en sais rien, je n’ai jamais ressenti le besoin de l’utiliser.
[/quote]

Simple quand tu compiles et que ça ne marche pas, tu fais de l’édition, qui fait de l’édition fait des rm, qui fait des rm sous root finit par faire un rm dans le mauvais répertoire. Si on est sous root, ça peut être pénible. Quand on parle de sécurité avec le fakeroot, ça n’est pas contre l’extérieur, c’est une protection contre soi. Je travaille très rarement sous root et si c’est le cas, c’est en chroot.

[quote=“fran.b”][quote][sur fakeroot] En as tu trouvé de valable qui te dise pourquoi c’est dangereux ? La sécurité peut toujours être poussée un peu plus loin, mais il y a des moment ou il faut arbitrer entre sécurité extrême et prise de tête. Tu me diras, peut être que fakeroot est simple à utiliser, mais je n’en sais rien, je n’ai jamais ressenti le besoin de l’utiliser.
[/quote] Simple quand tu compiles et que ça ne marche pas, tu fais de l’édition, qui fait de l’édition fait des rm, qui fait des rm sous root finit par faire un rm dans le mauvais répertoire. Si on est sous root, ça peut être pénible. Quand on parle de sécurité avec le fakeroot, ça n’est pas contre l’extérieur, c’est une protection contre soi. Je travaille très rarement sous root et si c’est le cas, c’est en chroot.[/quote]M’en fous, car je suis infaillible. :smt003

Tiens!? un pape :smiley:

Salut, j’ai fait une doc sur la compilation du kernel ici : http://philux.info/dokuwiki/compilation_kernel

Toutes les remarques et critiques sont les bienvenues.
Je ne suis pas expert de make-kpkg donc si vous avez une documentation là dessus je pourrais faire un lien car il semble que les possibilités de make-kpkg soient plutôt poussées :wink:

Je sais que l’orthographe est déplorable mais j’y travaille :slightly_smiling:

quote="philux31"
Je ne suis pas expert de make-kpkg donc si vous avez une documentation là dessus je pourrais faire un lien car il semble que les possibilités de make-kpkg soient plutôt poussées :wink:
(…)[/quote] man make-kpkg ( olympus.het.brown.edu/cgi-bin/ma … pkg.conf+5) .

sinon, il y a un truc que je ne comprends pas: tu fais un lien vers la page de compil kernel d’ashgenesis, qui est déjà pas mal faite et que tu connais, donc, mais tu mixe ta compil debian avec une compil gentoo, et ça alourdi la lecture des deux tutos, du coup, il me semble. Tu devrais ne laisser dans une première partie que le tuto de compil gentoo, puisque ton tuto de compil debian fait double emploi avec celui de ash (je n’ai rien vu de vraiment nouveau dans le tien), et bien séparer la partie sur la config du noyau (qui pourrait faire un tuto séparé, AMA, et ne dépend pas de la distrib).

Si il y a des choses à modifier dans mon tutos dites le moi que je le complète et que je rajoute votre nom il n’est pas là pour être pris comme bible mais pour être améliorer à chaque instant c’est une base pour aider qui doit être assez complet pour être intéressant et pas trop complexe pour aider le plus de monde possible ou en tout il doit être accessible au plus grand nombre.

Ceci dis je peux aussi rajouter des liens vers des tutos intéressant, et bien complet en rapport avec la recompilation de kernel, comme le dis matt en parlant de la config du noyau

Oui, tu a surement raison, je devrais séparer les pages comme ceci :

Une page install des sources + compilation pour chaque distribution avec un lien au milieu vers la page des options du noyau.

Mais le but de cette page est surtout d’aider le débutant à connaitre son matériel et à trouver les bonnes options dans le kernel. Et je voulais faire un tuto qui n’explique pas toutes les options disponibles mais plutôt quelque chose pour trouver les options à activer facilement à l’aide de udev et lspci.

Je suis reparti dans la recompilation de mon noyau parce que mon nouveau partitionnement et restreint pour / (/usr, /var, /tmp et /home sont séparés).

Hier tout a bien compilé pour ma première compil. Là je fais un :

Toujours pas de souci.

C’est quand je lance :

Il me répond gentiment que :

We do not seem to be in a top level linux kernel source directory tree. Since we are trying to make a kernel package, that does not make sense. Please change directory to a top level linux kernel source directory, and try again. (If I am wrong, and this is indeed a top level linux kernel source directory, then I have gotten sadly out of date with current kernels, and you should upgrade kernel-package)

Je n’ai jamais vu cette erreur (et oui je suis dans le bon répertoire).

Edit : c’est bon j’avais surpprimmer un fichier par une fausse manip’

Il ne faut pas utiliser make dans l’arborescence kernel debian, make-kpkg a sa propre cible clean.

Comme je viens de recompiler hier soir, et que je suis à la lettre ton tuto : simple et parfaitement clair, j’apporte une légère simplification :

[quote]III-A. Installation des dépendances

ashgenesis@debian:~$ su
password ************
debian:/home/ashgenesis# apt-get install debconf-utils dpkg-dev debhelper
debian:/home/ashgenesis# apt-get install build-essential kernel-package
debian:/home/ashgenesis# apt-get install libncurses5-dev[/quote]On peut tout écrire sur la m^ ligne, avec une seule commande “apt-get install” au lieu des trois ici.

Petite anomalie qui m’est arrivée hier pour la première fois :

[quote]III-B. Décompression et Configuration

debian:/usr/src# ln -s linux-source-2.6.15 linux
debian:/usr/src# cp /boot/config-uname -r /usr/src/linux/.config
debian:/usr/src# cd linux[/quote]le “.config” de la deuxième ligne a été refusé.
Dépannage : ne pas le taper, ds ce cas, le fichier se nommera config-2.6.xx-xxx.
renommer ce fichier : # mv /usr/src/linux/config-2.6.xx-xxx /usr/src/linux/.config
Je n’explique pas pourquoi ça n’est pas passé mais si ça arrive à d’autres, il peut être bon de préciser la manière de contourner ce refus.

[quote=“MisterFreez”]
C’est quand je lance :

make-kpkg --append-to-version "em64t02" --initrd kernel_image modules_image kernel_headers

[/quote]cette ligne est idéale et suffisante :

debian:/usr/src/linux# make-kpkg --append-to-version "-version_perso" --initrd -us -uc buildpackage --config menuconfig
penser au '-'avant ‘version_perso’, ça fait plus zouli. 8)

@ricardo > Je dissocie toujours la configuration de la compilation.

Je ne comprends pas -us -uc buildpackage

quote="MisterFreez"
Je ne comprends pas -us -uc buildpackage[/quote]
Quand on a renseigné maintainer et email dans le fichier /etc/kernel-pkg.conf, je crois qu’il râle s’il ne trouve pas la clé correspondante pour signer le paquet/noyau. -us -uc évite qu’il émette un warning.
Buildpackage est une cible fourre tout qui crée à la fois le noyau, les modules, et le paquet avec les sources réempaquetées (des fois qu’elles soient patchées, ça peut être utile).

Ok, je prends notes des modifs à faire, je m’en occupe dès que j’ai un peu de temps :wink:

Salut,

si l’on ne copie pas le config, il prendra de toute façon le config du kernel sur lequel on est.

[quote=“neos”]Salut,

si l’on ne copie pas le config, il prendra de toute façon le config du kernel sur lequel on est.

[/quote]Ca, c’est nouveau: jusqu’à présent, il partait d’un .config vide et proposait les valeurs par défaut.
Mais c’est génant: ça veut dire qu’il ne te demande rien en faisant le oldconfig (puisque tout est déjà sélectionné) et que si tu veux ajuster, il faut forcer le menuconfig ?
J’aime pas trop.

S’il n’y a pas de fichier . conf accessible, alors oui il ne demande rien. Par contre s’il existe il demande toujours, je suis en train de tester le 1924-06-02 avec tout les trucs qu’il on ajoutés.

D’ailleurs comment on gère les ressources CPU par groupe d’utilisateur puisque c est possible il me semble. J’n’ai pas vu de commande à ce sujet ?

Avec des commandes du style