[quote=“Berillions”][quote=“i M@N”]
Tu peux expliquer ce que tu as fait pour le compiler stp?
Et d’abord il sert à quoi exactement le linux-kbuild?
[/quote]
Le linux-kbuild est un paquet d’une centaine de ko nécessaire à l’installation des kernel-headers (linux-headers-2.6.36-trunk-686 par exemple).
Sans ce kbuild, impossible d’installer les headers donc impossible de compiler sur le noyau fraichement crée/installé ou d’installer les drivers propriétaires.
Pour créer un kbuild -> http://www.isalo.org/wiki.debian-fr/index.php/Compiler_linux-kbuild[/quote]
OK … mais alors explique-moi stp comment j’ai pu installer ~/linux-headers-2.6.36-20101119-10.00.Custom_i386.deb généré après la compilation comme décrite plus haut?
Ensuite explique-moi stp pourquoi j’ai pu installer le driver Nvidia propriétaire (96.43.19) avec un :
Par ailleurs êtes-vous sûr d’avoir besoin de ce linux-kbuild quand on compile un kernel depuis les sources de kernel.org?
Parce que des kbuilds j’en ai en pagaille dans mon paquet headers :
ajouter dans /etc/rc.local juste avant le exit 0 :
mkdir -p /dev/cgroup/cpu
mount -t cgroup cgroup /dev/cgroup/cpu -o cpu
mkdir -m 0777 /dev/cgroup/cpu/user
echo "/usr/local/sbin/cgroup_clean" > /dev/cgroup/cpu/release_agent
ajouter dans .bashrc :
if [ "$PS1" ] ; then
mkdir -m 0700 /dev/cgroup/cpu/user/$$ > /dev/null 2>&1
echo $$ > /dev/cgroup/cpu/user/$$/tasks
echo "1" > /dev/cgroup/cpu/user/$$/notify_on_release
fi
créer le fichier /usr/local/sbin/cgroup_clean et y placer :
#!/bin/sh
#rmdir /dev/cgroup/cpu/$*
##pour ne pas que /dev/cgroup/cpu/user soit effacé lorsque tous les terminaux sont fermés
[ "$1" != "/user" ] && rmdir /dev/cgroup/cpu/$1
Toujours à la recherche de la bonne compil de ce 2.6.36 je me rends comte que le montage automatique des périphériques usb ne se fait plus!
Donc je tente sans le && yes “” | make localmodconfig et me contente d’un && yes “” | make oldconfig
Comme j’ai déjà patché et compilé hier je fais juste (uname -r = 2.6.32-5-686) :
cd linux-2.6.36
cp /boot/config-`uname -r` .config && yes "" | make oldconfig
make menuconfig # set CONFIG_SCHED_AUTOGROUP=y in ~/linux-2.6.36/.config
make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-`date +%Y%m%d` kernel-image kernel-headers
cd
sudo dpkg -i linux-*.deb
Pour ceux qui veulent la procédure entière :
##git/tar ... c'est vous qui voyez!
#git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-2.6.36.y.git linux-2.6.36
#wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.36.tar.bz2
#tar -xvf linux-2.6.36.tar.bz2
cd linux-2.6.36
patch -p1 < ../autogroup-2.6.36.patch
cp /boot/config-`uname -r` .config && yes "" | make oldconfig
make menuconfig # set CONFIG_SCHED_AUTOGROUP=y in ~/linux-2.6.36/.config
make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-`date +%Y%m%d` kernel-image kernel-headers
cd
sudo dpkg -i linux-*.deb
Toujours à la recherche de la bonne compil de ce 2.6.36 je me rends comte que le montage automatique des périphériques usb ne se fait plus!
[/quote]
[size=50](Bah, hier j’ai eu un kernel panic parce qu’ils ont changé l’emplacement et le nom de mon pilote ATA dans la liste )[/size]
Si t’as bien coché USB Mass Storage et autres (bref, l’USB marche), alors il te manque peut être le support inotify :
grep NOTIFY .config
CONFIG_FSNOTIFY=y
# CONFIG_DNOTIFY is not set
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
wé … apparement le fait de faire le make localmodconfig n’a pas pris en compte le module usb_storage (peut-être parce qu’il n’était pas actif lors de la configuration, je n’avais aucun disque usb branché)
Donc comme j’explique juste avant en faisant juste un make oldconfig j’obtiens un kernel un peu plus gros de quelques megas mais au moins tout fonctionne et je peux le mettre direct sur le MSi Wind, pas besoin de recompiler spécialement pour lui. : )
Sur le 2.6.32-5-686 :
[quote]iman@debian:~$ cat mod-2.6.32-5-686.txt | grep usb
usb_storage 30541 1
usbcore 98377 4 usb_storage,uhci_hcd,ehci_hcd
scsi_mod 101401 6 usb_storage,firewire_sbp2,sg,sr_mod,sd_mod,libata
nls_base 4541 5 nls_utf8,nls_cp437,vfat,fat,usbcore[/quote]
sur le 2.6.36-20101120 :
Vous savez que ce patch a très peu de chances d’être realesé un jour ? C’est quelque chose qui n’a pas sa place dans le noyau, il vaut mieux que ce soit mis en place en userland. Systemd, le futur système d’init qui va carburer et détruire tout ses concurrents au passage, gère déjà ça (un cgroup par processus fils qu’il crée je crois).
Bonjour, je déterre un peu le topic, vu que je suis en train de tenter une compilation. Pour l’instant, j’en suis à make oldconfig (je n’ai pas fait le make localmodconfig) et je vois que ce qui est préconisé est de faire un yes"" |make oldconfig
Je voudrais être sur, cette commande fait répondre “Yes” à toutes les questions ou fait elle répondre “choix par défaut” ?
Parce qu’en fait pas mal de choix par défaut sont en fait “Non” ou “Module”. La je tente en y allant à l’entrée sur chaque question, mais j’aimerais avoir plus d’infos sur cette commande.
J’ai une question de débutant : si on met à jour les sources par un git pull, doit-on repatcher, tout retélécharger pour patcher, ou ne rien faire du tout ?