
-->
KERNEL-IMG.CONF(5) Debian GNU/Linux manual KERNEL-IMG.CONF(5)
NAME
kernel-img.conf - site wide configuration file for kernel image pack‐
ages
SYNOPSIS
/etc/kernel-img.conf
DESCRIPTION
The file /etc/kernel-img.conf is a simple file looked at by the kernel
image post installation process to allow local options for handling
some aspects of the installation, overriding the defaults built into
the image itself.
The format of the file is a simple VAR = VALUE pair. Boolean values may
be specified as Yes, True, 1, and No, False, 0, and are case insensi‐
tive. This file is automatically created by the installation script if
it does not exist, and neither does the symbolic link /vmlinuz. The
script asks the user whether the symbolic link should be created, and
stashes the answer into /etc/kernel-img.conf
At the moment, the user modifiable variables supported are:
link_in_boot
Set to Yes if you want the symbolic link to the kernel image,
namely, vmlinuz in /boot rather than the default /. The old,
and very confusing, name image_in_boot is deprecated, since it
is the symbolic link that is usually being relocated. Defaults
to No.
do_symlinks
By default, the kernel image post installation script shall cre‐
ate or update the /vmlinuz and /vmlinuz.old symbolic links. This
is true if a /vmlinuz link already exists, however, in absence
of /vmlinuz, the script looks to see if this configuration file
exists. If it does not, the configuration script asks the user
whether to create the symbolic link, and stashes the answer in a
newly created /etc/kernel-img.conf. If the configuration file
already exists, and if this option is set to No, no symbolic
link is ever created. This for people who have other means of
booting their machines, and do not like the symbolic links clut‐
tering up their / directory. Defaults to Yes.
minimal_swap
By default, if the /vmlinuz symbolic link does not point to an
image which is the same as the image being installed, the
postinst moves /vmlinuz to /vmlinuz.old, and creates a symbolic
link to the kernel image in /vmlinuz (the exception is to pre‐
vent both /vmlinuz and /vmlinuz.old from pointing to the current
kernel image -- potentially disastrous if the current image is
defective or lacking in any way). However, if this option is
enabled, no action is taken if /vmlinuz.old points to the cur‐
rently installed image (by default, the symbolic links are
swapped). Defaults to no.
no_symlinks
Whether to use symlinks to the image file. Mutually exclusive
to reverse_symlinks. Can be used with link_in_boot
(image_in_boot). If set to Yes, the real image is placed in
vmlinuz (instead of /boot/vmlinuz-X.X.XX). If you use
link_in_boot in conjunction with this, /boot/vmlinuz-X.X.XX is
moved to /boot/vmlinuz. The old vmlinuz is moved to vmlinuz.old
unconditionally. (Normally, that is only done if the version of
the new image differs from the old one). This restricts you to
two images, unless you take additional action and save copies of
older images. This is for people who have /boot on a system that
does not use symbolic links (and say, they use loadlin as a
bootloader). This is a Hack. Defaults to No.
reverse_symlinks
Whether to use reverse symlinks (that is, the real file is the
one without the version number, and the number version is the
link) to the image file. Mutually exclusive to no_symlinks.
Can be used with link_in_boot (image_in_boot). Just like
no_symlinks, except that the /boot/vmlinuz-X.XX is a symbolic
link to the real new image, vmlinuz. This, too, restricts you to
just two images unless further action is taken. The older sym‐
links are left dangling. This is for people with /boot on ums‐
dos, and who can’t see the link in dos, but do want to know the
image version when in Linux. This is a Hack. Defaults to No.
image_dest
If you want the symbolic link (or image, if move_image is set)
to be stored elsewhere than / set this variable to the dir where
you want the symbolic link. Please note that this is not a
boolean variable. This may be of help to loadlin users, who may
set both this and move_image Defaults to /. This can be used in
conjunction with all above options except link_in_boot
(image_in_boot), which would not make sense. (If both image_dest
and link_in_boot (image_in_boot) are set, link_in_boot
(image_in_boot) overrides)
postinst_hook
Set this variable to a script to be executed during installation
after all the symbolic links are created, but before running the
bootloader. The path can be a relative path if the script lives
in a safe path -- that is, if it lives in /bin, /sbin, /usr/bin,
or /usr/sbin, or must be an absolute path instead. Before call‐
ing this script, the env variable STEM shall be set to the value
of the --stem argument (or the default value, linux). This
script shall be called with two arguments, the first being the
version of the kernel image, and the second argument being the
location of the kernel image itself. Errors in the script shall
cause the postinst to fail. Since debconf is in use before the
script is called, this script should issue no diagnostic mes‐
sages to stdout -- while the postinst does call db_stop , deb‐
conf does not restore stdout, so messages to stdout disappear.
An example script for grub users is present in
/usr/share/doc/kernel-package/ directory.
postrm_hook
Set this variable to a script to be executed in the postrm (that
is, after the image has been removed) after all the remove
actions have been performed. The path can be a relative path if
the script lives in a safe path -- that is, if it lives in /bin,
/sbin, /usr/bin, or /usr/sbin, or must be an absolute path
instead. This script shall be called with two arguments, the
first being the version of the kernel image, and the second
argument being the location of the kernel image itself. Errors
in the script shall produce a warning message, but shall be oth‐
erwise ignored. Since debconf is in use before the script is
called, this script should issue no diagnostic messages to std‐
out -- while the postinst does call db_stop , debconf does not
restore stdout, so messages to stdout disappear.
preinst_hook
Set this variable to a script to be executed before the package
is unpacked, and can be used to put in additional checks. The
path can be a relative path if the script lives in a safe path
-- that is, if it lives in /bin, /sbin, /usr/bin, or /usr/sbin,
or must be an absolute path instead. This script shall be called
with two arguments, the first being the version of the kernel
image, and the second argument being the location of the kernel
image itself.
prerm_hook
Set this variable to a script to be executed before the package
files are removed (so any added files may be removed) . The path
can be a relative path if the script lives in a safe path --
that is, if it lives in /bin, /sbin, /usr/bin, or /usr/sbin, or
must be an absolute path instead. This script shall be called
with two arguments, the first being the version of the kernel
image, and the second argument being the location of the kernel
image itself. Errors in the script shall cause the prerm to
fail. Since debconf is in use before the script is called, this
script should issue no diagnostic messages to stdout -- while
the postinst does call db_stop , debconf does not restore std‐
out, so messages to stdout disappear.
ramdisk
Set this variable to a space separated list of executables that
create an initial RAM disk. This only has any effect if
installing a kernel-image that uses an initial RAM disk. The
commands so pointed must be drop-in compatible with mkinitrd.
Using the command line options --supported-host-version and
--supported-target-version, these executables are queried at
installation time to see if the combination of the currently
running kernel as host kernel, and the kernel version being
installed as the target kernel, and removed from the list if
not. The first viable tool is used to create the actual initial
RAM disk. The install shall fail if no suitable tool is found.
Defaults to a subset of mkinitrd mkinitrd.yaird mkinitramfs
src_postinst_hook
Unlike the other hook variables, this is meant for a script run
during the post inst of a docs, headers or a source package.
Using this hook for the headers package is now being deprecated,
at some point the headers post install script shall only run the
header_postinst_hook. The path can be a relative path if the
script lives in a safe path -- that is, if it lives in /bin,
/sbin, /usr/bin, or /usr/sbin, or must be an absolute path
instead. This script shall be called with two arguments, the
first being the name of the package being installed (could be
kernel-source-X.X.XX or kernel-headers-X.X.XX), and the second
argument being the version of the package being installed.
Errors in the script shall cause the postinst to fail.
headers_postinst_hook
Unlike the other hook variables, this is meant for a script run
during the post inst of a headers package only. The path can be
a relative path if the script lives in a safe path -- that is,
if it lives in /bin, /sbin, /usr/bin, or /usr/sbin, or must be
an absolute path instead. This script shall be called with two
arguments, the first being the name of the package being
installed (kernel-headers-X.X.XX), and the second argument being
the version of the package being installed. Errors in the script
shall cause the postinst to fail.
move_image
Instead of creating symbolic links to (or, if reverse_symlinks
is set, from) image_dest, the image is moved from its location
in /boot into image_dest. If reverse_symlinks is set, /boot
shall contain a symbolic link to the actual image. This option
can be useful to people using loadlin, who may need the image to
be moved to a different, dos partition. This variable is unset
by default.
clobber_modules
If set, the preinst shall silently try to move /lib/modules/ver‐
sion out of the way if it is the same version as the image being
installed. Use at your own risk. This variable is unset by
default.
warn_reboot
This variable can be used to turn off the warning given when
installing a kernel image which is the same version as the cur‐
rently running version. If the modules list is changed, the mod‐
ules dependencies may have been changed, and the modules for the
new kernel may not run correctly on the running kernel if the
kernel ABI has changed in the meanwhile. It is a good idea to
reboot, and this is a note to remind you. If you know what you
are doing, you can set this variable to no. This variable is set
by default.
do_bootloader
If set to NO, this prevents the postinst from running the boot
loader. Defaults to Yes.
relative_links
If set to yes, the kernel image postinst script shall go to
extra ordinary lengths to ensure that the symbolic links are
relative. Normally, the symbolic links are relative when it is
easily determinable that relative links shall work. Defaults to
No.
do_initrd
Set to YES to prevent the kernel-image post installation script
from issuing a warning when installing an initrd kernel. This
assumes you have correctly set up your boot loader to be able to
boot the initrd image. Default: no. This is deprecated in favor
of the more descriptive warn_initrd option (please note that the
sense of the option is inverted).
warn_initrd
Set to NO to prevent the kernel-image post installation script
from issuing a warning when installing an initrd kernel. This
assumes you have correctly set up your boot loader to be able to
boot the initrd image. This is now preferred to do_initrd, since
warnings are what are prevented. Default: YES
use_hard_links
This option has been put in for the people who can’t handle sym‐
bolic links (a boot loader that does not handle symbolic links,
for example). If set to YES, this shall cause the kernel image
postinst to use hard link instead of symbolic links for the
automatically handled /vmlinuz and /vmlinuz.old. I have tried
to make it compatible with move_image and reverse_symlinks
Caveat: It is up to the end user to ensure that the image_dest
directory and the location of the image (nominally /boot) live
on the same file system (since one can’t make hard links across
file systems). You have been warned.
relink_build_link
This option manipulates the build link created by recent ker‐
nels. If the link is a dangling link, and if a the corresponding
kernel-headers appear to have been installed on the system, a
new symlink shall be created to point to them. The default is to
relink the build link (YES).
force_build_link
This option manipulates the build link created by recent ker‐
nels. If the link is a dangling link, a new symlink shall be
created to point to /usr/src/kernel-headers-X.Y.ZZ, whether they
have been installed or not. The default is unset, we don’t cre‐
ate potentially dangling symlinks by default.
relink_src_link
This option manipulates the source link created by recent ker‐
nels. If the link is a dangling link it is deleted at install
time. The default is to relink (delete) the source link (YES).
mkimage
This should be a command that produces an initrd image given a
directory. It is passed to the mkinitrd program’s -m option. For
example, it can be
mkimage="genromfs -d %s -f %s" or
mkimage="mkcramfs %s %s"
silent_modules
This option has been put in for the people who are vastly irri‐
tated on being warned about preexisting modules directory
/lib/modules/$version That directory may belong to an old or
defunct kernel-image-$version package, in which case problems
may arise with leftover modules in that dir tree, or the direc‐
tory may legitimately exist due to a independent modules package
being installed for this kernel version that has already been
unpacked. In this latter case the existence of the directory is
benign. If you set this variable, you shall no longer be given
a chance to abort if a preexisting modules directory /lib/mod‐
ules/$version is detected. This is unset be default.
silent_loader
If set, this option shall cause the question asked before run‐
ning the boot loader in the installation process to be skipped.
Whether or not the boot loader is run is unaffected by this
option ( see do_bootloader to see how to control whether the
boot loader is run or not, and the absence of the configuration
file will also make the install process voluble and interac‐
tive).
ignore_depmod_err
If set, does not prompt to continue after a depmod problem in
the postinstall script. This facilitates automated installs,
though it may mask a problem with the kernel image. A diagnostic
is still issued.
FILES
The file described here is /etc/kernel-img.conf.
SEE ALSO
make-kpkg(1), kernel-pkg.conf(5), make(1), The GNU Make manual.
BUGS
There are no bugs. Any resemblance thereof is delirium. Really.
AUTHOR
This manual page was written by Manoj Srivastava <srivasta@debian.org>,
for the Debian GNU/Linux system.
Debian Mar 21 2000 KERNEL-IMG.CONF(5)