Existe-t-il une ressource pour télécharger une source de version de noyau spécifique? Par exemple, je veux obtenir des sources 2.6.36.2 pour comparer avec ce package et voir quelles modifications ont été introduites?
Existe-t-il une ressource pour télécharger une source de version de noyau spécifique? Par exemple, je veux obtenir des sources 2.6.36.2 pour comparer avec ce package et voir quelles modifications ont été introduites?
Réponses:
Le moyen le plus simple et le plus convivial pour la bande passante, si vous vous attendez à le faire plus d'une fois, serait de cloner le référentiel git du noyau et de vérifier la version que vous souhaitez en fonction de sa balise. Il est probablement préférable de cloner le dépôt linux-stable , car cela inclura des balises pour toutes les versions stables:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
cd linux
git checkout v2.6.36.2
Pour passer ultérieurement à une autre version, rien de plus simple:
git checkout v3.5.2
Pour mettre à jour votre référentiel pour inclure toutes les dernières balises et validations:
git fetch
--depth
et --branch
peut également réduire considérablement la taille du clone: unix.stackexchange.com/a/473373/32558
Oui, kernel.org a toutes les versions publiées , y compris 2.6.36.2 . Notez cependant que la plupart des distributions Linux appliquent leurs propres correctifs à la source du noyau vanilla.
Si vous ne souhaitez pas télécharger l'historique complet des validations du noyau (qui est bien supérieur à 1 Gio), vous ne pouvez télécharger qu'une partie du référentiel Git du noyau qui mène à la branche souhaitée. Par exemple, pour extraire localement le noyau Ubuntu dans la version 4.5, vous feriez:
git clone --depth 1 --single-branch --branch v4.5 git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack
De cette façon, le clone fait environ 150 Mio.
--depth
implique --single-branch
BTW, selon man git-clone
.
Si vous voulez juste obtenir une balise pour une compilation rapide, faites:
git clone --depth 1 --branch v4.18 \
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
--depth 1
fait un clone superficiel, ce qui réduit considérablement le temps de clonage et l'utilisation du disque.
Malheureusement, cela ne fonctionne que pour les balises, pas de commits arbitraires, en raison de la façon dont le serveur cgit git fonctionne et est configuré. Voir aussi: /programming/3489173/how-to-clone-git-repository-with-specific-revision-changeset
Voir aussi: Pourquoi le clone git du code source du noyau Linux est-il beaucoup plus volumineux que le tar.xz extrait?