Scroll to navigation

MKINITRAMFS(8) System Administration MKINITRAMFS(8)


mkinitramfs - low-level tool for generating an initramfs image


mkinitramfs [option]... -o outfile [version]
mkinitramfs -h


The mkinitramfs script generates an initramfs image. The initramfs is a compressed cpio archive. The archive can be used on a different box of the same arch with the corresponding Linux kernel. mkinitramfs is meant for advanced usage. On your local box update-initramfs calls mkinitramfs with the relevant parameters. update-initramfs keeps sha1sum of generated initramfs. It takes care to generate backups and eventually runs the bootloader.

At boot time, the kernel unpacks that archive into RAM disk, mounts and uses it as initial root file system. All finding of the root device happens in this early userspace.


Override the COMPRESS setting in initramfs.conf.

Set an alternate configuration directory.

Keep the temporary directory used to make the image.

Override the COMPRESSLEVEL setting in initramfs.conf.

Write the image to outfile.

Override the ROOT setting in initramfs.conf.

Set the verbose mode output.

Set the kernel version of the initramfs image (defaults to the running kernel).

Display usage information and exit.


mkinitramfs honours the TMPDIR environment variable. If set, it uses subdirectories in the given directory to create its temporary working directories. Else it uses /var/tmp as default value for that purpose. The given directory should be on a filesystem which allows the execution of files stored there, i.e. should not be mounted with the noexec mount option.

If SOURCE_DATE_EPOCH is set, mkinitramfs attempts to generate a reproducible initramfs image.


The default configuration file for the script. See initramfs.conf(5) for a description of the available configuration parameter.

Specified modules will be put in the generated image and loaded when the system boots. The format - one per line - is identical to that of /etc/modules, which is described in modules(5).

The conf.d directory allows one to hardcode bootargs at initramfs build time via config snippets. This allows one to set ROOT or RESUME. This is especially useful for bootloaders, which do not pass an root bootarg.

If this file exists, it will be appended to the initramfs in a way that causes it to be loaded by ACPI.


Create an initramfs for current running kernel:

mkinitramfs -o ~/tmp/initramfs-$(uname -r)

Create an initramfs for specific kernel and keep builddirs:

mkinitramfs -k -o ~/tmp/initramfs-2.6.21-686 2.6.21-686

Debug initramfs creation (check out written logfile)

sh -x mkinitramfs -o ~/tmp/initramfs-$(uname -r) 2> ~/tmp/log


The initramfs-tools are written by Maximilian Attems <>, Jeff Bailey <> and numerous others.


initramfs.conf(5), initramfs-tools(7), update-initramfs(8), lsinitramfs(8), unmkinitramfs(8).

2018/07/18 initramfs-tools