mirror of
git://slackware.nl/current.git
synced 2024-12-31 10:28:29 +01:00
9b8196890b
a/aaa_libraries-15.1-x86_64-1.txz: Upgraded. Upgraded: libnsl-2.35.so, libexpat.so.1.8.6, libglib-2.0.so.0.7000.4, libgmodule-2.0.so.0.7000.4, libgthread-2.0.so.0.7000.4. Added: libicudata.so.69.1, libicui18n.so.69.1, libicuio.so.69.1, libicutest.so.69.1, libicutu.so.69.1, libicuuc.so.69.1. a/kernel-generic-5.16.11-x86_64-1.txz: Upgraded. a/kernel-huge-5.16.11-x86_64-1.txz: Upgraded. a/kernel-modules-5.16.11-x86_64-1.txz: Upgraded. a/xfsprogs-5.13.0-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. ap/sqlite-3.38.0-x86_64-1.txz: Upgraded. Compiled against icu4c-70.1. d/kernel-headers-5.16.11-x86-1.txz: Upgraded. k/kernel-source-5.16.11-noarch-1.txz: Upgraded. kde/bluedevil-5.24.2-x86_64-1.txz: Upgraded. kde/breeze-5.24.2-x86_64-1.txz: Upgraded. kde/breeze-grub-5.24.2-x86_64-1.txz: Upgraded. kde/breeze-gtk-5.24.2-x86_64-1.txz: Upgraded. kde/drkonqi-5.24.2-x86_64-1.txz: Upgraded. kde/kactivitymanagerd-5.24.2-x86_64-1.txz: Upgraded. kde/kde-cli-tools-5.24.2-x86_64-1.txz: Upgraded. kde/kde-gtk-config-5.24.2-x86_64-1.txz: Upgraded. kde/kdecoration-5.24.2-x86_64-1.txz: Upgraded. kde/kdeplasma-addons-5.24.2-x86_64-1.txz: Upgraded. kde/kgamma5-5.24.2-x86_64-1.txz: Upgraded. kde/khotkeys-5.24.2-x86_64-1.txz: Upgraded. kde/kinfocenter-5.24.2-x86_64-1.txz: Upgraded. kde/kmenuedit-5.24.2-x86_64-1.txz: Upgraded. kde/kscreen-5.24.2-x86_64-1.txz: Upgraded. kde/kscreenlocker-5.24.2-x86_64-1.txz: Upgraded. kde/ksshaskpass-5.24.2-x86_64-1.txz: Upgraded. kde/ksystemstats-5.24.2-x86_64-1.txz: Upgraded. kde/kwallet-pam-5.24.2-x86_64-1.txz: Upgraded. kde/kwayland-integration-5.24.2-x86_64-1.txz: Upgraded. kde/kwayland-server-5.24.2-x86_64-1.txz: Upgraded. kde/kwin-5.24.2-x86_64-1.txz: Upgraded. kde/kwrited-5.24.2-x86_64-1.txz: Upgraded. kde/layer-shell-qt-5.24.2-x86_64-1.txz: Upgraded. kde/libkscreen-5.24.2-x86_64-1.txz: Upgraded. kde/libksysguard-5.24.2-x86_64-1.txz: Upgraded. kde/milou-5.24.2-x86_64-1.txz: Upgraded. kde/okteta-0.26.7-x86_64-1.txz: Upgraded. kde/oxygen-5.24.2-x86_64-1.txz: Upgraded. kde/plasma-browser-integration-5.24.2-x86_64-1.txz: Upgraded. kde/plasma-desktop-5.24.2-x86_64-1.txz: Upgraded. kde/plasma-disks-5.24.2-x86_64-1.txz: Upgraded. kde/plasma-firewall-5.24.2-x86_64-1.txz: Upgraded. kde/plasma-integration-5.24.2-x86_64-1.txz: Upgraded. kde/plasma-nm-5.24.2-x86_64-1.txz: Upgraded. kde/plasma-pa-5.24.2-x86_64-1.txz: Upgraded. kde/plasma-sdk-5.24.2-x86_64-1.txz: Upgraded. kde/plasma-systemmonitor-5.24.2-x86_64-1.txz: Upgraded. kde/plasma-vault-5.24.2-x86_64-1.txz: Upgraded. kde/plasma-workspace-5.24.2-x86_64-1.txz: Upgraded. kde/plasma-workspace-wallpapers-5.24.2-x86_64-1.txz: Upgraded. kde/polkit-kde-agent-1-5.24.2-x86_64-1.txz: Upgraded. kde/powerdevil-5.24.2-x86_64-1.txz: Upgraded. kde/qqc2-breeze-style-5.24.2-x86_64-1.txz: Upgraded. kde/sddm-kcm-5.24.2-x86_64-1.txz: Upgraded. kde/systemsettings-5.24.2-x86_64-1.txz: Upgraded. kde/xdg-desktop-portal-kde-5.24.2-x86_64-1.txz: Upgraded. l/babl-0.1.90-x86_64-1.txz: Upgraded. l/boost-1.78.0-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. l/gegl-0.4.36-x86_64-1.txz: Upgraded. l/harfbuzz-3.4.0-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. l/icu4c-70.1-x86_64-1.txz: Upgraded. Shared library .so-version bump. l/libical-3.0.14-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. l/libqalculate-4.0.0-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. l/libvisio-0.1.7-x86_64-8.txz: Rebuilt. Recompiled against icu4c-70.1. l/qt5-5.15.3_20220222_08720135-x86_64-1.txz: Upgraded. Compiled against icu4c-70.1. Thanks to Heinz Wiesinger for updating the fetch_sources.sh script to make sure that the QtWebEngine version matches the rest of Qt, which got the latest git pull compiling again. l/qt5-webkit-5.212.0_alpha4-x86_64-8.txz: Rebuilt. Recompiled against icu4c-70.1. l/vte-0.66.2-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. n/dovecot-2.3.18-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. n/php-7.4.28-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. n/postfix-3.7.0-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. n/samba-4.15.5-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. n/tin-2.6.1-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. t/texlive-2021.210418-x86_64-3.txz: Rebuilt. Recompiled against icu4c-70.1. extra/php80/php80-8.0.16-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. extra/php81/php81-8.1.3-x86_64-2.txz: Rebuilt. Recompiled against icu4c-70.1. isolinux/initrd.img: Rebuilt. kernels/*: Upgraded. usb-and-pxe-installers/usbboot.img: Rebuilt.
99 lines
3.5 KiB
Text
99 lines
3.5 KiB
Text
|
|
Slackware initrd mini HOWTO
|
|
by Patrick Volkerding, volkerdi@slackware.com
|
|
Thu Feb 24 05:34:06 UTC 2022
|
|
|
|
This document describes how to create and install an initrd, which may be
|
|
required to use the 4.x kernel. Also see "man mkinitrd".
|
|
|
|
1. What is an initrd?
|
|
2. Why to I need an initrd?
|
|
3. How do I build the initrd?
|
|
4. Now that I've built an initrd, how do I use it?
|
|
|
|
|
|
1. What is an initrd?
|
|
|
|
Initrd stands for "initial ramdisk". An initial ramdisk is a very small
|
|
Linux filesystem that is loaded into RAM and mounted as the kernel boots,
|
|
and before the main root filesystem is mounted.
|
|
|
|
2. Why do I need an initrd?
|
|
|
|
The usual reason to use an initrd is because you need to load kernel
|
|
modules before mounting the root partition. Usually these modules are
|
|
required to support the filesystem used by the root partition (ext3, ext4,
|
|
btrfs, xfs), or perhaps the controller that the hard drive is attached
|
|
to (SCSI, RAID, etc). Essentially, there are so many different options
|
|
available in modern Linux kernels that it isn't practical to try to ship
|
|
many different kernels to try to cover everyone's needs. It's a lot more
|
|
flexible to ship a generic kernel and a set of kernel modules for it.
|
|
|
|
3. How do I build the initrd?
|
|
|
|
The easiest way to make the initrd is to use the mkinitrd script included
|
|
in Slackware's mkinitrd package. We'll walk through the process of
|
|
upgrading to the generic 5.16.11 Linux kernel using the packages
|
|
found in Slackware's slackware/a/ directory.
|
|
|
|
First, make sure the kernel, kernel modules, and mkinitrd package are
|
|
installed (the current version numbers might be a little different, so
|
|
this is just an example):
|
|
|
|
installpkg kernel-generic-5.16.11-x86_64-1.txz
|
|
installpkg kernel-modules-5.16.11-x86_64-1.txz
|
|
installpkg mkinitrd-1.4.11-x86_64-28.txz
|
|
|
|
Change into the /boot directory:
|
|
|
|
cd /boot
|
|
|
|
Now you'll want to run "mkinitrd". I'm using ext4 for my root filesystem,
|
|
and since the disk controller requires no special support the ext4 module
|
|
will be the only one I need to load:
|
|
|
|
mkinitrd -c -k 5.16.11 -m ext4
|
|
|
|
This should do two things. First, it will create a directory
|
|
/boot/initrd-tree containing the initrd's filesystem. Then it will
|
|
create an initrd (/boot/initrd.gz) from this tree. If you wanted to,
|
|
you could make some additional changes in /boot/initrd-tree/ and
|
|
then run mkinitrd again without options to rebuild the image. That's
|
|
optional, though, and only advanced users will need to think about that.
|
|
|
|
Here's another example: Build an initrd image using Linux 5.16.11
|
|
kernel modules for a system with an ext4 root partition on /dev/sdb3:
|
|
|
|
mkinitrd -c -k 5.16.11 -m ext4 -f ext4 -r /dev/sdb3
|
|
|
|
|
|
4. Now that I've built an initrd, how do I use it?
|
|
|
|
Now that you've got an initrd (/boot/initrd.gz), you'll want to load
|
|
it along with the kernel at boot time. If you use LILO for your boot
|
|
loader you'll need to edit /etc/lilo.conf and add a line to load the
|
|
initrd. Here's an example section of lilo.conf showing how this is
|
|
done:
|
|
|
|
# Linux bootable partition config begins
|
|
image = /boot/vmlinuz-generic
|
|
initrd = /boot/initrd.gz
|
|
root = /dev/sda6
|
|
label = Slackware
|
|
read-only
|
|
# Linux bootable partition config ends
|
|
|
|
The initrd is loaded by the "initrd = /boot/initrd.gz" line.
|
|
Just add the line right below the line for the kernel image you use.
|
|
Save the file, and then run LILO again ('lilo' at the command line).
|
|
You'll need to run lilo every time you edit lilo.conf or rebuild the
|
|
initrd.
|
|
|
|
Other bootloaders such as syslinux also support the use of an initrd.
|
|
See the documentation for those programs for details on using an
|
|
initrd with them.
|
|
|
|
|
|
---------
|
|
|
|
Have fun!
|