FLASH-KERNEL(8)

NAME
flash-kernel - put kernel and initramfs in boot location

SYNOPSIS
flash-kernel [--supported] [--force] [kvers]

DESCRIPTION
flash-kernel is a script which will put the kernel and initramfs in the boot location of embedded devices that don't load the kernel and initramfs directly from /boot. flash-kernel supports devices that boot from flash memory (hence the name) as well as some devices that require a special boot image on the disk.

Optionally, it can be passed a version of the kernel to flash; only the highest version will be flashed and other versions will be ignored unless the --force option is used. Kernel and initrd are read from /boot.

Note that when the --force the kernel can be overwritten with the current version whenever a package is installed which changes the kernel, initramfs etc. Therefore this is only really useful for one-off testing.

Prior to flashing the kernel, a check is performed to verify that the subarchitectures of the machine and the image to be flashed match. Valid filenames for images to flash are suffixed with the subarchitecture.

If the --supported option is used, flash-kernel will test to see if the hardware is supported, and return a true or false value.

ENVIRONMENT VARIABLES

FK_MACHINE
    Specify a specific machine, overriding the autodetection, also see the description of /etc/flash-kernel/machine below. Can be set to `none' to disable flash-kernel. This can be used when installing flash-kernel into a chroot, for example while preparing a filesystem image. WARNING: Take great care when running flash-kernel in a chroot, since the choice of machine may cause host filesystem partitions to be mounted and modified.

FK_IGNORE_EFI
    Skip EFI detection when this variable is set to `yes'. Normally, flash-kernel will abort if it detects that the system is running in EFI mode.

FILES

/usr/share/flash-kernel/db/all.db
    The database of machines which flash-kernel knows about. See /usr/share/doc/flash-kernel/README.gz For information on the database fields.

/etc/default/flash-kernel
    may contain the following variables:

    LINUX_KERNEL_CMDLINE, which is used by bootscripts to set kernel command line options, overriding the firmwares defaults (e.g. u-boot's ${bootargs}).

    LINUX_KERNEL_CMDLINE_DEFAULTS, which is used by bootscripts to set kernel options which should be overrideable by the firmware's defaults (e.g. u-boot's ${bootargs}).

    NO_CREATE_DOT_BAK_FILES, which if set to "true" or "yes" will prevent flash-kernel from creating backup ".bak" versions of kernel, initrd, and dtb files when installing a new version. The default is to create such backups to aid in recovery from failed updates.

    MTD_BACKUP_DIR, which if set, names a directory to which flash-kernel will write copies of files which would not normally be accessible in the regular filesystem (either written to a raw flash partition or to a firmware partition which is not normally mounted). If unset defaults to /var/backups/flash-kernel. Set to "none" to disable.

/etc/flash-kernel/db
    Local overrides to the database of machines

/etc/flash-kernel/machine
    If present this can be used to override the machine autodetection. The contents must be a string which matches an entry in the database. Or `none' to disable flash-kernel. /etc/flash-kernel/ignore-efi If present, the contents of this file are used to set the value of the FK_IGNORE_EFI environment variable.

AUTHOR
Martin Michlmayr <tbm@cyrius.com>