Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

recherche de kernel-sources anciens

24 réponses
Avatar
Bernard
Bonjour à tous,

Ayant tenté d'installer OSS à la place d'ALSA sur mon Debian SARGE, je
suis bien embarrassé par l'absence des sources et headers de mon noyau,
ce qui empêche la compilation de OSS 4.1

Mon noyau est le 2.6.20-16-386. Il me faut préciser que, sous SARGE, le
noyau par défaut est un 2.4..., et qu'une relation - maintenant perdue de
vue - m'a convaincu, il y a environ 18 mois, d'installer 2.6.20 à la
place. Aucun problème jusqu'ici, mais je viens de constater que je n'ai
pas les headers ni les sources, ainsi que me l'a signalé le message
d'erreur de compilation de OSS.

un apt-get install linux-headers-2.6.20-16-386 me répond que cela n'est
pas trouvé. 'apt-get install linux-headers-2.6.20*' me donne une liste de
linux headers commençant par 2.6.26... Je suppose que les 2.6.20 doivent
toujours être disponibles sur un site d'archives quelconque dont il me
faudrait ajouter l'adresse dans mon /etc/apt/sources.list, ou encore, que
je puisse télécharger quelque part un *.deb

Merci d'avance pour tout tuyau.

10 réponses

1 2 3
Avatar
Bernard
Le Sat, 15 Aug 2009 19:48:29 +0200, Pascal Hambourg a écrit :

Salut,

Bernard a écrit :

Les anciennes distributions Debian sont accessibles sur Debian archive:
http://www.debian.org/distrib/archive



J'ai réussi à accéder aux anciennes distributions en ajoutant les
liens ci-dessus dans mon sources.list, précédés de deb et deb-src.
Malheureusement, les headers et sources n'y figurent pas !



Normal, le noyau 2.6.20 n'a jamais été inclus dans une version stable de
Debian.
sarge : 2.4.27 et 2.6.8
etch : 2.6.18 et 2.6.24 (etchnhalf)
lenny : 2.6.26 et ?

Si ton noyau 2.6.20 vient de Debian, il devait être dans une version
testing ou dans sid. Dans ce cas tu peux regarder dans l'archive des
instantanés quotidiens de Debian à <http://snapshot.debian.net/>.



C'est un noyau qui venait de Ubuntu, ainsi que me l'avait précisé la
personne qui m'avait recommandé de l'intaller. Pourtant, je dispose d'un
portable sous Ubuntu 8.04 (Hardy Heron) sous 2.6.26, et les sources.list
de Ubuntu ne trouvent pas non plus 2.6.20 !
Avatar
Fabien LE LEZ
On Sat, 15 Aug 2009 16:00:16 +0200, Bernard :

réinstaller les applications une à une...



Un truc comme ça pourrait fonctionner, mais de Sarge à Lenny, des
paquets ont sans doute changé de nom. Vérifier dpkg.txt à la main sera
sans doute indispensable.

dpkg --get-selections|grep -v deinstall > dpkg.txt

dpkg --set-selections<dpkg.txt && apt-get dselect-upgrade
Avatar
Pascal Hambourg
Bernard a écrit :

C'est un noyau qui venait de Ubuntu, ainsi que me l'avait précisé la
personne qui m'avait recommandé de l'intaller.



Ah, ça aurait pu faire gagner du temps à tout le monde si tu avais
précisé ce léger détail dès le début du fil.

Pourtant, je dispose d'un
portable sous Ubuntu 8.04 (Hardy Heron) sous 2.6.26, et les sources.list
de Ubuntu ne trouvent pas non plus 2.6.20 !



Le noyau 2.6.20 est dans feisty (7.04). Tu trouveras le paquet
linux-headers-2.6.20-16-386 dans le dépôt feisty-updates sur
<http://old-releases.ubuntu.com/ubuntu/>. Le paquet linux-source-2.6.20
existe en versions 2.6.20-15 et 2.6.20-17, mais normalement tu n'as pas
besoin des sources complètes, seulement des en-têtes.
Avatar
Bernard
Le Sun, 16 Aug 2009 12:46:32 +0200, Pascal Hambourg a écrit :

Bernard a écrit :







Le noyau 2.6.20 est dans feisty (7.04). Tu trouveras le paquet
linux-headers-2.6.20-16-386 dans le dépôt feisty-updates sur
<http://old-releases.ubuntu.com/ubuntu/>. Le paquet linux-source-2.6.20
existe en versions 2.6.20-15 et 2.6.20-17, mais normalement tu n'as pas
besoin des sources complètes, seulement des en-têtes.



Merci pour ce tuyau. J'ai seulement trouvé 2.6.20-15, pas 2.6.20-17. J'ai
quand même fait l'installation de linux-source-2.6.20 et de
linux-headers-2.6.20-15-386, lesquelles ont paru bien se dérouler.
Malheureusement, lorsque j'ai voulu faire une nouvelle tentative
d'installation de oss:

# dpkg -i oss-linux-4.1-1052_i386.deb

j'ai obtenu des réponses similaires à celle des précédentes
tentatives, copie ci après :

# dpkg -i oss-linux*.deb

(Lecture de la base de données... 91828 fichiers et répertoires déjà
installés.) Préparation du remplacement de oss-linux 4.1-1052 (en
utilisant oss-linux-4.1-1052_i386.deb) ... OSS not loaded.
Shutting down ALSA...done.
Dépaquetage de la mise à jour de oss-linux ... Upgrading OSS - will not
purge /usr/lib/oss. Paramétrage de oss-linux (4.1-1052) ... Building OSS
Modules for Linux-unknown 2.6.20-16-386

OSS build environment set up for REGPARM kernels


Warning: Cannot locate the Linux kernel development package for
Linux kernel version 2.6.20-16-386
Please install the kernel development package if linking the OSS
modules fails.

The kernel development package may be called kernel-devel,
kernel-smp-devel, kernel-sources, kernel-headers or something like that.
Please refer to the documentation of your Linux distribution if there are
any difficulties in installing the kernel/driver development environment.

For your Linux distribution the right kernel source package might be
kernel-source.

Under Ubuntu you may need to prepare the kernel environment after
downloading the kernel sources using

sudo apt-get install linux-headers-2.6.20-16-386 cd
/usr/src/linux-headers-2.6.20-16-386/

Building module osscore
Failed to compile OSS
make -C /lib/modules/2.6.20-16-386/build M=/usr/lib/oss/build modules
make: *** /lib/modules/2.6.20-16-386/build: Aucun fichier ou répertoire
de ce type. Arrêt. make: *** [default] Erreur 2
Forcing re-detection of installed soundcards Starting Open Sound System
Relinking OSS kernel modules for "2.6.20-16-386 mod_unload 486 " This may
take few moments - please stand by...

OSS build environment set up for REGPARM kernels


Warning: Cannot locate the Linux kernel development package for
Linux kernel version 2.6.20-16-386
Please install the kernel development package if linking the OSS
modules fails.

The kernel development package may be called kernel-devel,
kernel-smp-devel, kernel-sources, kernel-headers or something like that.
Please refer to the documentation of your Linux distribution if there are
any difficulties in installing the kernel/driver development environment.

For your Linux distribution the right kernel source package might be
kernel-source.

Under Ubuntu you may need to prepare the kernel environment after
downloading the kernel sources using

sudo apt-get install linux-headers-2.6.20-16-386 cd
/usr/src/linux-headers-2.6.20-16-386/

Building module osscore
Failed to compile OSS
make -C /lib/modules/2.6.20-16-386/build M=/usr/lib/oss/build modules
make: *** /lib/modules/2.6.20-16-386/build: Aucun fichier ou répertoire
de ce type. Arrêt. make: *** [default] Erreur 2

Relinking the OSS kernel modules failed

*******************

Ainsi qu'on peut voir, le compilateur ne trouve pas
/lib/modules/2.6.20-16-386/build sur mon système, parce que cela n'existe
pas, je n'ai que /lib/modules/2.6.20-15-386/build. Pour ce qui est des
'kernel-development packages', j'ai installé kernel-source, mais
kernel-devel ou kernel-smp-devel n'existent pas pour ma distro.

J'ai voulu tenter de sortir de cette impasse en essayant d'installer un
noyau plus récent et mieux supporté par les debian récentes : 2.6.26.2.
Mais je n'arrive pas à la booter ! La compilation s'est apparemment bien
déroulée, mais je ne suis pas certain d'avoir bien compris comment
générer une image 'initrd.img'. La dernière fois où j'ai fait ce genre
de chose, remonte à plusieurs années, c'était sous RedHat 6.0, et la
doc était très précise ; il fallait déplacer bzImage dans un certain
répertoire, et peut-être ensuite faire intervenir un utilitaire. La doc
du noyau 2.6.26.2 que j'ai téléchargée est confuse sur ce point, on
dirait que de nouveaux passages ont été rajoutés à une version
ancienne, et la cohérence n'est pas toujours évidente. Je cite :

'In order to boot your new kernel, you'll need to copy the kernel image
(e.g. .../linux/arch/i386/boot/bzImage after compilation) to the place
where your regular bootable kernel is found'

Je ne suis malheureusement pas très sûr de l'endroit où ce fichier
bzImage devrait être copié. C'est que je ne trouve que celui là sur mon
système, et j'ignore ce qu'il est advenu de celui qui avait dû servir à
compiler mon noyau actuel, il y a cela 2 ans environ. Un 'find /| grep
bzImage' ne m'en trouve pas d'autre que celui que je viens de compiler.
Alors j'ai cru bon de faire une copie dans /boot, c'est le répertoire où
se trouvent vmlinuz-2.6.26.2 (ainsi que les autres noyaux), les system
maps, les fichiers config et les images initrd des autres noyaux. Je
n'avais donc pas d'images initrd pour ce nouveau noyau, mais, un peu
naïvement sans doute, j'avais cru que le fait d'y mettre bzImage allait
déclencher - lors du prochain boot - la création de l'initrd.img. Il
n'en n'a rien été, et toute tentative de booter sur mon nouveau noyau
(dûment introduit dans /boot/grub/menu.lst) aboutissait à une réponse
précisant que mon fichier image était manquant. Alors j'ai cherché un
peu, et trouvé un utilitaire qui s'appelle 'mkinitrd', et je l'ai
utilisé pour générer un fichier 'initrd.img-2.6.26.2', mais il se
pourrait bien que je me sois planté, et que le fichier - que j'ai donc
nommé dans /boot/grub/menu.lst ne soit pas conforme. En effet, lorsque je
tente de booter sur mon noyau 2.6.26.2, le démarrage paraît bien se
passer, et puis, rapidement j'obtiens un 'kernel panic - not syncing',
avec une page d'erreurs (et sans doute davantage, mais étant bloqué je
ne puis lire que la dernière affichée). Il y est surtout question de mon
système RAID : 'failure to communicate with kernel device mapper driver.
Incompatible libdevmapper, 0 logical volume(s) in volume group 'vg00' now
active... etc.

Merci de me dire comment j'aurais dû créer le fichier initrd.img, le
problème est peut-être là, car, pour ce qui est de mon RAID1, je n'ai
certes pas supprimé cette option dans la config du nouveau noyau.
Avatar
YBM
Bernard a écrit :
J'ai voulu tenter de sortir de cette impasse en essayant d'installer un
noyau plus récent et mieux supporté par les debian récentes : 2.6.26.2.
Mais je n'arrive pas à la booter ! La compilation s'est apparemment bien
déroulée, mais je ne suis pas certain d'avoir bien compris comment
générer une image 'initrd.img'.



Tu as lu mon message où je t'explique comment utiliser make-kpkg pour
construire des paquets noyau ?
Avatar
Bernard
Le Sat, 15 Aug 2009 18:26:33 +0200, YBM a écrit :

Bernard a écrit :
...
Merci pour le tuyau. J'ai bien trouvé le noyau complet à

http://www.kernel.org/pub/linux/kernel/v2.6/

mais il n'y a pas de méthode pour installer simplement les headers et
sources. Il faut tout compiler, avec les risques que çà comporte (j'ai
déjà donné, il y a quelques années avec RedHat, et il y a du souci
à se faire, même en faisant des sauvegardes... Compter un week-end
complet avant que tout soit résolu, sauf miracle occasionnel)



Tu peux reconstituer facilement tous les paquets issus d'un noyau donné :

apt-get install kernel-package
cd linux-2.6.20
cp /boot/config-2.6.20-26 .config
make-kpkg binary-arch --append-to-version -16

ça va te fabriquer dans ../ les paquets linux-image et linux-headers

Debian peut avoir patché un peu les sources du noyau, cependant il est
probable que le paquet linux-headers créé marchera bien, sinon tu peux
installer le paquet binaire (dans ce cas mieux vaut changer le
append-to-version et spécifier un -release comme custom1 pour que son
installation n'écrase pas ton noyau actuel).



Merci pour cette contribution.

kernel-package est déjà installé
cd linux-2.6.20, chez moi c'est cd /home/bd/linux-2.6.20.16
cp /boot/config-2.6.20-26 .config : çà marche
make-kpkg binary-arch --append-to-version -16 : çà me répond :

"
/usr/share/kernel-package/rules:1637: *** Error. I do not know where the
kernel image goes to [kimagedest undefined] The usual case for this is
that I could not determine which arch or subarch tihs machine belongs to.
Please specify a subarch, and try again.. Arrêt.
"

J'ai essayé de remplacer 'binary-arch' par un chemin, mais l'erreur
était la même. La consultation de 'man make-kpkg' ne m'en n'a pas dit
davantage.

Merci d'avance pour davantage de précision.
Avatar
YBM
Bernard a écrit :
Le Sat, 15 Aug 2009 18:26:33 +0200, YBM a écrit :

Bernard a écrit :
...
Merci pour le tuyau. J'ai bien trouvé le noyau complet à

http://www.kernel.org/pub/linux/kernel/v2.6/

mais il n'y a pas de méthode pour installer simplement les headers et
sources. Il faut tout compiler, avec les risques que çà comporte (j'ai
déjà donné, il y a quelques années avec RedHat, et il y a du souci
à se faire, même en faisant des sauvegardes... Compter un week-end
complet avant que tout soit résolu, sauf miracle occasionnel)


Tu peux reconstituer facilement tous les paquets issus d'un noyau donné :

apt-get install kernel-package
cd linux-2.6.20
cp /boot/config-2.6.20-26 .config
make-kpkg binary-arch --append-to-version -16

ça va te fabriquer dans ../ les paquets linux-image et linux-headers

Debian peut avoir patché un peu les sources du noyau, cependant il est
probable que le paquet linux-headers créé marchera bien, sinon tu peux
installer le paquet binaire (dans ce cas mieux vaut changer le
append-to-version et spécifier un -release comme custom1 pour que son
installation n'écrase pas ton noyau actuel).



Merci pour cette contribution.

kernel-package est déjà installé
cd linux-2.6.20, chez moi c'est cd /home/bd/linux-2.6.20.16
cp /boot/config-2.6.20-26 .config : çà marche
make-kpkg binary-arch --append-to-version -16 : çà me répond :

"
/usr/share/kernel-package/rules:1637: *** Error. I do not know where the
kernel image goes to [kimagedest undefined] The usual case for this is
that I could not determine which arch or subarch tihs machine belongs to.
Please specify a subarch, and try again.. Arrêt.
"



C'est fort étonnant comme erreur ça...

Que donne la commande dpkg-architecture ?

J'ai essayé de remplacer 'binary-arch' par un chemin, mais l'erreur
était la même. La consultation de 'man make-kpkg' ne m'en n'a pas dit
davantage.



Essaye d'abord un :
make-kpkg kernel_image [le reste pareil]
puis :
make-kpkg kernel_headers [le reste pareil]

si ça ne marche pas essaye d'utiliser l'option --arch de make-kpkg
sinon...
Avatar
Bernard
Le Tue, 18 Aug 2009 00:44:54 +0200, YBM a écrit :

Bernard a écrit :
Le Sat, 15 Aug 2009 18:26:33 +0200, YBM a écrit :

Bernard a écrit :
...
Merci pour le tuyau. J'ai bien trouvé le noyau complet à

http://www.kernel.org/pub/linux/kernel/v2.6/

mais il n'y a pas de méthode pour installer simplement les headers et
sources. Il faut tout compiler, avec les risques que çà comporte
(j'ai déjà donné, il y a quelques années avec RedHat, et il y a du
souci à se faire, même en faisant des sauvegardes... Compter un
week-end complet avant que tout soit résolu, sauf miracle
occasionnel)


Tu peux reconstituer facilement tous les paquets issus d'un noyau
donné :

apt-get install kernel-package
cd linux-2.6.20
cp /boot/config-2.6.20-26 .config
make-kpkg binary-arch --append-to-version -16

ça va te fabriquer dans ../ les paquets linux-image et linux-headers

Debian peut avoir patché un peu les sources du noyau, cependant il est
probable que le paquet linux-headers créé marchera bien, sinon tu
peux installer le paquet binaire (dans ce cas mieux vaut changer le
append-to-version et spécifier un -release comme custom1 pour que son
installation n'écrase pas ton noyau actuel).



Merci pour cette contribution.

kernel-package est déjà installé
cd linux-2.6.20, chez moi c'est cd /home/bd/linux-2.6.20.16 cp
/boot/config-2.6.20-26 .config : çà marche make-kpkg binary-arch
--append-to-version -16 : çà me répond :

"
/usr/share/kernel-package/rules:1637: *** Error. I do not know where the
kernel image goes to [kimagedest undefined] The usual case for this is
that I could not determine which arch or subarch tihs machine belongs
to. Please specify a subarch, and try again.. Arrêt. "



C'est fort étonnant comme erreur ça...

Que donne la commande dpkg-architecture ?

J'ai essayé de remplacer 'binary-arch' par un chemin, mais l'erreur
était la même. La consultation de 'man make-kpkg' ne m'en n'a pas dit
davantage.



Essaye d'abord un :
make-kpkg kernel_image [le reste pareil] puis :
make-kpkg kernel_headers [le reste pareil]

si ça ne marche pas essaye d'utiliser l'option --arch de make-kpkg
sinon...



C'est toujours la même chose, que ce soit avec kernel_image ou
kernel_headers, et ce, même avec l'option --arch. Par ailleurs, voici ce
que donne

~/linux-2.6.20.16$ dpkg-architecture

DEB_BUILD_ARCH=i386
DEB_BUILD_ARCH_OS=linux
DEB_BUILD_ARCH_CPU=i386
DEB_BUILD_GNU_CPU=i486
DEB_BUILD_GNU_SYSTEM=linux-gnu
DEB_BUILD_GNU_TYPE=i486-linux-gnu
DEB_HOST_ARCH=i386
DEB_HOST_ARCH_OS=linux
DEB_HOST_ARCH_CPU=i386
DEB_HOST_GNU_CPU=i486
DEB_HOST_GNU_SYSTEM=linux-gnu
DEB_HOST_GNU_TYPE=i486-linux-gnu
Avatar
YBM
Bernard a écrit :
...
C'est toujours la même chose, que ce soit avec kernel_image ou
kernel_headers, et ce, même avec l'option --arch. Par ailleurs, voici ce
que donne

~/linux-2.6.20.16$ dpkg-architecture

[ras]



Je pencherais pour un noyau trop récent pour la version de
make-kpkg disponible.

Laisse tomber toute ces salades, installe une Lenny toute fraîche
et tiens la à jour.
Avatar
Pascal Hambourg
YBM a écrit :

Je pencherais pour un noyau trop récent pour la version de
make-kpkg disponible.



Pourtant j'ai déjà compilé un noyau 2.6.28 avec make-kpkg sous sarge
sans souci.
1 2 3