哪里可以下载特定版本的Linux Kernel源代码?


Answers:


28

如果您希望多次执行此操作,那么最简单,最带宽友好的方法是克隆内核的git存储库,并根据其标签签出所需的版本。最好克隆linux-stable repo,因为它将包括所有稳定版本的标签:

git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
cd linux
git checkout v2.6.36.2

要稍后切换到另一个版本,很容易:

git checkout v3.5.2

要更新您的存储库以包括所有最新的标记和提交:

git fetch


1
--depth并且--branch还可以大大减少克隆大小:unix.stackexchange.com/a/473373/32558
Ciro Santilli新疆改造中心法轮功六四事件


9

如果您不想下载整个内核提交历史记录(远高于1 GiB),则只能下载内核Git存储库中通往所需分支的部分。例如,要在本地签出4.5版的Ubuntu内核,您可以执行以下操作:

git clone --depth 1 --single-branch --branch v4.5  git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack

这样,克隆大约为150 MiB。


1
--depth表示--single-branchBTW man git-clone
Ciro Santilli新疆改造中心法轮功六四事件

0

如果您只想获取一个标签以进行快速编译,请执行以下操作:

git clone --depth 1 --branch v4.18 \
  git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

--depth 1 做一个浅克隆,这大大减少了克隆时间和磁盘使用率。

由于cgit git服务器的工作方式和配置方式,它仅适用于当前不幸的标记,而不适用于任意提交。另请参阅:https : //stackoverflow.com/questions/3489173/how-to-clone-git-repository-with-specific-revision-changeset

另请参阅:为什么Linux内核源代码的git clone比提取的tar.xz大得多?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.