User:Anthumchris:How to build the Alpine Linux kernel: Difference between revisions
Anthumchris (talk | contribs) No edit summary |
Anthumchris (talk | contribs) No edit summary |
||
Line 49: | Line 49: | ||
=== Revert === | === Revert === | ||
If needed, revert to the previous '''alpine-lts''' | If needed, revert to the previous backup kernel package we identified earlier. This example how to revert to the previous '''alpine-lts''' package after removing the newly-installed package (both have the same name alpine-lts but refer to different versions/locations): | ||
<pre> | <pre> | ||
apk list linux-lts # newly-compiled kernel installed | apk list linux-lts # newly-compiled kernel installed |
Revision as of 22:03, 3 December 2024
How build the Alpine Linux kernel
A customized Alpine Linux kernel may be needed if you are experimenting with adding/removing kernel modules/features. For example, Alpine releases multiple kernels that vary in features and file sizes. Alpine kernels extend the standard Linux kernel and build within a few minutes to a few hours (depending on the speed of your system) using abuild
, aports, and alpine-sdk.
Before you start
A running instance of Alpine Linux and a non-root user with doas (wheel
group) privileges are required to use abuild
.
Build & install the kernel
Build
doas apk add alpine-sdk doas addgroup USERNAME abuild # your non-root user git clone --depth 1 https://gitlab.alpinelinux.org/alpine/aports.git abuild-keygen --append --install doas chmod a+r /etc/apk/keys/* # ensure new keys are readable cd aports/main/linux-lts/ time abuild -crK
Identify backup
Identify the package name of your current kernel (e.g. linux-lts, linux-virt). This example shows that linux-lts is the current package that we would revert to as a backup.
echo "kernel: $(uname -r)" apk list --installed linux-*
Install
Find the newly-built kernel file to install. This example shows how to install a newly-built x86_64 LTS kernel:
apk add FILENAME reboot
After rebooting, verify the newly-installed kernel version:
echo "kernel: $(uname -r)"
Revert
If needed, revert to the previous backup kernel package we identified earlier. This example how to revert to the previous alpine-lts package after removing the newly-installed package (both have the same name alpine-lts but refer to different versions/locations):
apk list linux-lts # newly-compiled kernel installed doas apk del linux-lts # newly-compiled kernel from file doas apk add linux-lts # previous kernel from Alpine repo apk list linux-lts # previous kernel installed reboot