1
0
Fork 0
mirror of git://slackware.nl/current.git synced 2025-02-06 20:46:02 +01:00
slackware-current/testing/source/mkinitrd/mkinitrd_command_generator.8
Patrick J Volkerding b75837013c Thu Jul 25 02:39:18 UTC 2024
Well folks, we have some more interesting stuff in /testing now.
Our good friend LuckyCyborg posted a while back about our trials with
GRUB2, and that we were banging our heads against a wall for no reason
trying to bend GRUB2 with our 09_slackware_linux grub.d script instead
of changing our kernel/initrd naming scheme to vmlinux-6.10.1-generic
and initrd-6.10.1-generic.img. And, as is often the case, our friend is
exactly correct. Once we stopped trying to swim against the current, GRUB2
started behaving as it should.
The updates in /testing change the kernel naming scheme thusly, and modify
the geninitrd script in the mkinitrd package to also use this naming
scheme. And, of course, 09_slackware_linux is removed from GRUB2, and the
10_linux script is only lightly modified.
Because lilo and elilo work with the symlinks to the kernel and initrd,
they shouldn't care anout this change.
We've probably got 6.9.11 coming tomorrow. Unless I hear that I should stop
the presses on this change, it's likely that those kernels will be updated
using the new naming scheme and the mkinitrd and grub updates will be moved
into the main tree from /testing.
We'll stick with 6.9 in the main tree for now because I'm still encountering
suspend failure with the 6.10 kernel here.
Enjoy! :-)
a/kernel-firmware-20240723_b37d247-noarch-1.txz:  Upgraded.
ap/mpg123-1.32.6-x86_64-2.txz:  Rebuilt.
l/libxml2-2.13.3-x86_64-1.txz:  Upgraded.
  This update fixes a security issue:
  Fix XXE protection in downstream code.
  For more information, see:
    https://www.cve.org/CVERecord?id=CVE-2024-40896
  (* Security fix *)
l/mozilla-nss-3.102.1-x86_64-1.txz:  Upgraded.
l/nodejs-20.16.0-x86_64-1.txz:  Upgraded.
l/python-importlib_metadata-8.2.0-x86_64-1.txz:  Upgraded.
l/v4l-utils-1.28.1-x86_64-1.txz:  Upgraded.
n/c-ares-1.32.3-x86_64-1.txz:  Upgraded.
n/curl-8.9.0-x86_64-1.txz:  Upgraded.
n/htdig-3.2.0b6-x86_64-10.txz:  Rebuilt.
  Patch XSS vulnerability. Thanks to jayjwa.
  Get this out of cgi-bin. Thanks to LuckyCyborg.
  For more information, see:
    https://www.cve.org/CVERecord?id=CVE-2007-6110
  (* Security fix *)
n/libtirpc-1.3.5-x86_64-1.txz:  Upgraded.
extra/fltk/fltk-1.3.9-x86_64-2.txz:  Rebuilt.
extra/tigervnc/tigervnc-1.13.1-x86_64-6.txz:  Rebuilt.
  Not sure why 1.14.0 isn't compiling, but we'll rebuild this for now.
testing/packages/grub-2.12-x86_64-12.txz:  Upgraded.
  Remove 09_slackware_linux.
  10_linux: don't rename Slackware ;-)
  This should configure the renamed kernel/initrd perfectly.
  Perhaps 10_linux should no longer accept initrd.gz as a valid name?
  For now it is accepted to avoid disrupting existing workflows.
testing/packages/kernel-generic-6.10.1-x86_64-1.txz:  Upgraded.
testing/packages/kernel-headers-6.10.1-x86-1.txz:  Upgraded.
testing/packages/kernel-huge-6.10.1-x86_64-1.txz:  Upgraded.
testing/packages/kernel-modules-6.10.1-x86_64-1.txz:  Upgraded.
testing/packages/kernel-source-6.10.1-noarch-1.txz:  Upgraded.
testing/packages/mkinitrd-1.4.11-x86_64-35.txz:  Upgraded.
  geninitrd: create initrd with initrd-version-name.img filename.
  Make compat symlinks by default.
  Always add LVM (I've seen it mistakenly skipped... if we can get to the
  bottom of that then we'll stop always adding it)
  Add /etc/default/geninitrd for configuration.
2024-07-25 06:11:40 +02:00

187 lines
5.6 KiB
Groff

'\" t
.\" Title: mkinitrd_command_generator
.\" Author: Eric Hameleers
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 2016-02-07
.\" Manual: Slackware Tools
.\" Source: http://www.slackware.com 1.40
.\" Language: English
.\"
.TH "MKINITRD_COMMAND_GEN" "8" "2016-02-07" "http://www\&.slackware\&.com" "Slackware Tools"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
mkinitrd_command_generator \- mkinitrd the easy way
.SH "SYNOPSIS"
.sp
.nf
mkinitrd_command_generator\&.sh [ \fIoptions\fR ] [ \fIkernel_filename\fR ]
.fi
.SH "OPTIONS"
.PP
\fB\-a \fR\fB\fIadditional params\fR\fR
.RS 4
Additional parameters to pass to mkinitrd\&.
.RE
.PP
\fB\-c | \-\-conf\fR
.RS 4
Show a suitable mkinitrd configuration file\&.
.RE
.PP
\fB\-h | \-\-help\fR
.RS 4
Show this help\&.
.RE
.PP
\fB\-i | \-\-interactive\fR
.RS 4
Navigate through menus instead of using commandline arguments\&.
.RE
.PP
\fB\-\-longhelp\fR
.RS 4
Show more detailed information/examples\&.
.RE
.PP
\fB\-k \fR\fB\fIkernelversion\fR\fR
.RS 4
Use specific kernel version\&. This may also be a colon-delimited list of kernel versions to use\&.
.RE
.PP
\fB\-m \fR\fB\fIadditional mods\fR\fR
.RS 4
Additional modules to pass to mkinitrd, separated by colons (:)\&.
.RE
.PP
\fB\-l | \-\-lilo\fR
.RS 4
Only show lilo\&.conf section (requires a kernel_filename)\&.
.RE
.PP
\fB\-r | \-\-run\fR
.RS 4
Only show
\fImkinitrd\fR
command\&.
.RE
.SH "DESCRIPTION"
.sp
This script is useful in situations where you require an initrd image to boot your computer\&.
.sp
For instance, when booting a kernel that does not have support for your storage or root filesystem built in (such as the Slackware \fIgeneric\fR kernels)\&.
.sp
When you run the script without parameters, it will examine your running system, your current kernel version and will output an example of a \fImkinitrd\fR commandline that you can use to generate an initrd image containing enough driver support to boot the computer\&.
.sp
You can make it more specific: when you add the filename of a kernel as parameter to the script, it will determine the kernel version from that kernel, and also give an example of the lines that you should add to your \fI/etc/lilo\&.conf\fR file\&.
.sp
If you want your initrd image to have a custom name instead of the default \fI/boot/initrd\&.gz\fR you can add it as another parameter to the script, as follows:
.sp
mkinitrd_command_generator\&.sh \-a "\-o \fI/boot/custom\&.gz\fR"
.sp
The arguments to the \fI\-a\fR parameter will be used as additional arguments to the \fImkinitrd\fR command\&.
.sp
If you need additional modules in the initrd image, apart from what the script determines, you can pass then to the script using the \fI\-m\fR parameter as follows:
.sp
mkinitrd_command_generator\&.sh \-m "uhci\-hcd:usbhid:hid:hid\-generic"
.sp
The above example adds support for USB keyboards to the initrd \- you may need that if you have encrypted your root partition and need to enter a passphrase using a USB keyboard\&.
.sp
Instead of copying and pasting the script\(cqs output, you can create an initrd by directly executing the output, like in this example:
.sp
.if n \{\
.RS 4
.\}
.nf
$(mkinitrd_command_generator\&.sh \-\-run /boot/vmlinuz\-generic\-4\&.4\&.1)
.fi
.if n \{\
.RE
.\}
.sp
That used the \fI\-r\fR or \fI\-\-run\fR switch to make the script only write the \fImkinitrd\fR commandline to the terminal\&.
.sp
When you want to add a section for a specific kernel to \fI/etc/lilo\&.conf\fR directly, use the \fI\-l\fR or \fI\-\-lilo\fR switch and use a command like in this example:
.sp
mkinitrd_command_generator\&.sh \-\-lilo /boot/vmlinuz\-generic\-smp\-4\&.4\&.1 >>/etc/lilo\&.conf
.sp
That command will result in the following lines being added to your \fI/etc/lilo\&.conf\fR file (example for my hardware):
.sp
.if n \{\
.RS 4
.\}
.nf
\fI# Linux bootable partition config begins\fR
\fI# initrd created with \*(Aqmkinitrd \-c \-k 4\&.4\&.1 \-m mbcache:jbd2:ext4 \-f ext4 \-r /dev/sda7 \-u \-o /boot/initrd\&.gz\fR\*(Aq
image = /boot/vmlinuz\-generic\-4\&.4\&.1
initrd = /boot/initrd\&.gz
root = /dev/sda7
label = 4\&.4\&.1
read\-only
\fI# Linux bootable partition config ends\fR
.fi
.if n \{\
.RE
.\}
.sp
The last two examples show how easy it is to configure your computer for the use of an initrd if you need one\&. The only thing left to do afterwards is running \fIlilo\fR\&.
.SH "EXIT STATUS"
.sp
.if n \{\
.RS 4
.\}
.nf
\fB0\fR Success
\fB1\fR Failure
.fi
.if n \{\
.RE
.\}
.SH "FILES"
.sp
.if n \{\
.RS 4
.\}
.nf
/usr/share/mkinitrd/mkinitrd_command_generator\&.sh
.fi
.if n \{\
.RE
.\}
.SH "BUGS"
.sp
Report bugs to Eric Hameleers <alien@slackware\&.com>
.SH "SEE ALSO"
.sp
.if n \{\
.RS 4
.\}
.nf
mkinitrd(1), lilo\&.conf(1)
.fi
.if n \{\
.RE
.\}
.SH "AUTHOR"
.PP
\fBEric Hameleers\fR
.RS 4
Author.
.RE