What is the recommended size for a Linux /boot partition?

Tyler Long asked:

What is the recommended size for a Linux /boot partition?

And is it safe to not have a /boot partition?

I see some servers don’t have a /boot partition while some servers have a 128 MB /boot partition. I am a little confused. Is /boot partition necessary? If it is, how large should it be?

My answer:


Modern systems are generally installed with a much larger /boot partition than in the past. The number has just been growing over time.

Consider:

RHEL 5 created a 101 MiB /boot partition.

RHEL 5 Partitioning

RHEL 6 created a 500 MiB /boot partition.

RHEL 6 Paritioning

RHEL 7 also created a 500 MiB /boot partition, but this was changed to 1024 MiB in 7.3, because as the release notes state:

In previous releases of Red Hat Enterprise Linux 7, the default size of the /boot partition was set to 500 MB. This could lead to problems on systems with multiple kernels and additional packages such as kernel-debuginfo installed. The /boot partition could become full or almost full in such scenario, which then prevented the system from upgrading and required manual cleanup to free additional space.

In Red Hat Enterprise Linux 7.3, the default size of the /boot partition is increased to 1 GB, and these problems no longer occur on newly installed systems. Note that installations made with previous versions will not have their /boot partitions resized, and may still require manual cleanup in order to upgrade. (BZ#1369837)

RHEL 7 Partitioning

My current EL7 systems have roughly 200 MiB used in /boot, but I usually don’t install kernel-debug packages.

As the Linux kernel continues to grow over time, mostly due to adding hardware device drivers, this recommendation is likely to continue to grow as well.

And again, as noted by others, a /boot partition isn’t strictly required anymore for most installations. VMs generally do not need it, for instance, and UEFI booting systems also don’t need it (though they have an EFI System partition which must exist and be large enough to hold various UEFI files). A /boot partition is required for some very old legacy systems and for using LUKS full-disk encryption.


View the full question and answer on Server Fault.

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.