User:Anthumchris:How to build the Alpine Linux kernel: Difference between revisions

From Alpine Linux
No edit summary
No edit summary
Line 49: Line 49:


=== Revert ===
=== 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 are named "alpine-lts" yet refer to different versions/locations):
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 "alpine-lts" (both are named "alpine-lts" yet 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:05, 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 "alpine-lts" (both are named "alpine-lts" yet 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

See Also