この文書では Gentoo が Portage を通じて提供しているすべてのカーネルソースを概説します。
- 1 はじめに
- 2 サポートが提供されるカーネルパッケージ
- 3 サポートされないカーネルパッケージ
- 4 Previously provided kernel packages
- 4.1 aa-sources
- 4.2 alpha-sources
- 4.3 Architecture dependent kernels
- 4.4 development-sources
- 4.5 gentoo-dev-sources
- 4.6 grsec-sources
- 4.7 hardened-dev-sources
- 4.8 hppa-sources
- 4.9 mm-sources
- 4.10 rsbac-dev-sources
- 4.11 rsbac-sources
- 4.12 selinux-sources
- 4.13 sh-sources
- 4.14 sparc-sources
- 4.15 uclinux-sources
- 4.16 win4lin-sources
- 4.17 xen-sources
- 4.18 zen-sources
- 5 See also
Gentoo Linux のあらゆる側面と同様に、Gentoo カーネルチームの掲げる理念は、最大限の選択の自由をユーザーに与えることにあります。emerge -s sources の出力を眺めてみると分かることですが、選ぶことのできるカーネルは実に多様です。この文書では、Gentoo が提供しているそれぞれのパッチセットの目的について簡単な説明を試みるとともに、その他に利用できるカーネルについても解説していきます。
大抵のユーザーには、sys-kernel/gentoo-sources がおすすめです。gentoo-sources は Linux 4.x を基にして、セキュリティ問題やカーネルのバグの修正、そして稀に見られるシステムアーキテクチャとの互換性を高めるため、少々のパッチを当てたものです。
Gentoo カーネルチームの労力の大半が sys-kernel/gentoo-sources パッケージに注がれています。チームには卓越した開発者たちが関わっており、著名なカーネルハッカーである Greg Kroah-Hartmann の後援を受けて作業を行っています。彼は udev のメンテナーで、Linux 公式カーネルの USB・PCI サブシステムを取りまとめています。
sys-kernel/hardened-sources は、Linux の公式カーネルに基づき、Gentoo をサーバーシステム上で動かすユーザーを対象にしたカーネルです。SELinux や grsecurity のサポートなどを含む、 Gentoo Hardened のさまざまなサブプロジェクトのためのパッチとともに、安定性やセキュリティの強化を提供します。詳しくは、Hardened project here on the wiki をご覧ください。
このカーネルでは、セキュリティを強固にするため、強力なパッチを提供しています。使用の前にintroduction to Hardened Gentoo article を一読してください。
sys-kernel/ck-sources is Con Kolivas's kernel patch set. This patchset is primarily designed to improve system responsiveness and interactivity and is configurable for varying workloads (from servers to desktops). The patchset includes a different scheduler, MuQSS, designed to keep systems responsive and smooth even when under heavy load. Support and information is available at http://kernel.kolivas.org and in the
#ck channel on irc.oftc.net.
Now to briefly describe some of the other sys-kernel/*-sources which scrolled by when the emerge -s sources command was run. Below we discuss each one of them individually. These kernels are provided as a courtesy only — the various patch sets are not supported by the Gentoo kernel team. There is no specific preference to one source or another, so we review the kernel sources in alphabetical order.
The sys-kernel/aufs-sources package contains full kernel sources including the official genpatchset (found in gentoo-sources) for the 3.1x kernel tree and aufs3 support. This kernel is useful when attempting to utilize the aufs3 filesystem. For more information see the aufs3 page on Sourceforge or the genpatches homepage.
The sys-kernel/pf-sources kernel brings together parts of several different kernel patches. It includes the BFS patchset from sys-kernel/ck-sources, the sys-kernel/tuxonice-sources patches, LinuxIMQ, and the BFQ I/O scheduler.
OpenVZ is a server virtualization solution built on Linux. OpenVZ creates isolated, secure virtual private servers (VPSs) or virtual environments on a single physical server enabling better server utilization and ensuring that applications do not conflict. For more information, see http://www.openvz.org.
The sys-kernel/tuxonice-sources (formerly sys-kernel/suspend2-sources) are patched with both genpatches which includes the patches found in gentoo-sources, and the patches found in TuxOnIce which are an improved implementation of suspend-to-disk for the Linux kernel, formerly known as suspend2.
This kernel is recommended for laptop users who often rely on being able to suspend their laptop and resume work elsewhere.
usermode-sources are the User Mode Linux kernel patches and can be found in the sys-apps/usermode-utilities package. These kernel patches are designed to allow Linux to recursively run within Linux. User Mode Linux is intended for testing and virtual server support. For more information about this amazing tribute to the stability and scalability of Linux, see http://user-mode-linux.sourceforge.net.
For more information on UML and Gentoo, read the Gentoo User-mode Linux Guide
Many Linux users will probably be familiar with the sys-kernel/vanilla-sources package. These kernels are copies of the official kernel sources released on http://www.kernel.org/. Please note that the Gentoo kernel team does not patch vanilla-sources at all; they are for people who wish to run a completely unmodified Linux kernel. The Gentoo kernel team recommends sys-kernel/gentoo-sources instead.
Versions of the kernel can be found under this package: 3.x, 4.x.
Previously provided kernel packages
aa-sources was a heavily modified kernel with all kinds of patches. The upstream maintainer stopped releasing kernel patchsets and subsequently this package has been removed.
alpha-sources was a 2.4 kernel with patches applied to improve hardware compatibility for the Alpha architecture. These patches have been developed and are now included in the mainline kernel. Alpha users can run any recent kernel with no need for extra patches.
Architecture dependent kernels
cell-sources was a 2.6 kernel designed to run on the Sony PlayStation 3 game console.
gentoo-dev-sources, a 2.6 kernel patched with bug, security, and stability fixes, can now be found under the gentoo-sources package.
The grsec-sources kernel source used to be patched with the latest grsecurity updates (grsecurity version 2.0 and up) which included, amongst other security-related patches, support for PaX. Grsecurity patches are included in the hardened-sources kernel, so this package is no longer available in Portage.
hardened-dev-sources can now be found under the hardened-sources package.
hppa-sources was a 2.6 kernel with patches applied to improve hardware compatibility for the HPPA architecture. These patches have been developed and included in the mainline kernel. HPPA users can now run any recent kernel with no need for extra patches.
The mm-sources were based on vanilla-sources and contained Andrew Morton's patch set. They included the experimental and bleeding-edge features that were going to be included in the official kernel (or were going to be rejected because they set systems on fire!). They were known to be always moving at a fast pace and could change radically from one week to the other; kernel hackers often used mm-sources as a testing ground for highly experimental stuff. They have since been removed from the Portage tree.
The rsbac-dev-sources kernels can now be found under the sys-kernel/rsbac-sources package.
Back in the days of 2.6-based kernels sys-kernel/rsbac-sources contained patches to use Rule Set Based Access Controls (RSBAC). It was removed due to lack of maintainers, but has has magically reappeared with the 3.10 kernel series. Use hardened-sources if additional security features are needed.
selinux-sources, a 2.4 kernel including lots of security enhancements, has been obsoleted by security development in the 2.6 kernel tree. SELinux functionality can be found in the hardened-sources package.
sh-sources was a 2.6 kernel with patches applied to improve hardware compatibility for the SuperH architecture. These patches have been developed and included in the mainline kernel. SuperH users can now run any recent kernel with no need for extra patches.
sparc-sources was a 2.4 kernel with patches applied to improve hardware compatibility for the SPARC architecture. These patches have been developed and included in the mainline kernel. SPARC users can now run any recent kernel with no need for extra patches.
The uclinux-sources are meant for CPUs without MMUs as well as embedded devices. For more information, see http://www.uclinux.org. Lack of security patches as well as hardware to test on were the reasons this package is no longer found in the Portage tree.
win4lin-sources were patched to support the userland win4lin tools that allowed Linux users to run many Microsoft Windows (TM) applications at almost native speeds. These kernel sources were removed due to security issues.
xen-sources was a 2.6-based kernel that allowed running multiple operating systems on a single physical system. A user could create virtual environments in which one or more guest operating systems could run on a Xen-powered host operating system.
The xen-sources patches were incorporated into the mainline Linux kernel as of version 3.0.
For more information on working with Xen and Gentoo, read the Xen article here on the wiki.
The sys-kernel/zen-sources package is designed for desktop systems. It includes code not found in the mainline kernel. The Zen kernel has patches that add new features, support additional hardware, and contains various tweaks for desktops. The Zen 3.8 kernel series is currently masked in the Portage tree. For more information on the Zen kernel please visit Zen Kernel Live Sources website.
- Kernel upgrade guide
- The Gentoo Handbook
This article is based on a document formerly found on our main website gentoo.org.
The following people contributed to the original document: Brandon Low, Daniel Drake, Carl Anderson, Jorge Paulo, Benny Chuang, Gregorio Guidi, Shyam Mani, Joshua Saddler
They are listed here as the Wiki history does not allow for any external attribution. If you edit the Wiki article, please do not add yourself here; your contributions are recorded on the history page.