9.14.5. Recommended Partitioning Scheme
9.14.5.1. x86, AMD64, and Intel 64 systems
Unless you have a reason for doing otherwise, we recommend that you create the following partitions for x86, AMD64, and Intel 64 systems:
A swap
partition
A /boot
partition
A /
partition
A swap partition (at least 256 MB) — swap partitions are used to support virtual memory. In other words, data is written to a swap partition when there is not enough RAM to store the data your system is processing.
In years past, the recommended amount of swap space increased linearly with the amount of RAM in the system. But because the amount of memory in modern systems has increased into the hundreds of gigabytes, it is now recognized that the amount of swap space that a system needs is a function of the memory workload running on that system. However, given that swap space is usually designated at install time, and that it can be difficult to determine beforehand the memory workload of a system, we recommend determining system swap using the following table.
Table 9.2. Recommended System Swap Space
Amount of RAM in the System
|
Recommended Amount of Swap Space
|
---|
4GB of RAM or less
|
a minimum of 2GB of swap space
|
4GB to 16GB of RAM
|
a minimum of 4GB of swap space
|
16GB to 64GB of RAM
|
a minimum of 8GB of swap space
|
64GB to 256GB of RAM
|
a minimum of 16GB of swap space
|
256GB to 512GB of RAM
|
a minimum of 32GB of swap space
|
Note that you can obtain better performance by distributing swap space over multiple storage devices, particularly on systems with fast drives, controllers, and interfaces.
The partition mounted on /boot/
contains the operating system kernel (which allows your system to boot Red Hat Enterprise Linux), along with files used during the bootstrap process. For most users, a 250 MB boot partition is sufficient.
The GRUB bootloader in Red Hat Enterprise Linux 6 supports only the ext2, ext3, and ext4 (recommended) file systems. You cannot use any other file system for /boot
, such as Btrfs, XFS, or VFAT.
If your hard drive is more than 1024 cylinders (and your system was manufactured more than two years ago), you may need to create a /boot/
partition if you want the /
(root) partition to use all of the remaining space on your hard drive.
If you have a RAID card, be aware that some BIOSes do not support booting from the RAID card. In cases such as these, the /boot/
partition must be created on a partition outside of the RAID array, such as on a separate hard drive.
This is where "/
" (the root directory) is located. In this setup, all files (except those stored in /boot
) are on the root partition.
A 3.0 GB partition allows you to install a minimal installation, while a 5.0 GB root partition lets you perform a full installation, choosing all package groups.
The /
(or root) partition is the top of the directory structure. The /root
directory/root
(sometimes pronounced "slash-root") directory is the home directory of the user account for system administration.
Many systems have more partitions than the minimum listed above. Choose partitions based on your particular system needs. For example, consider creating a separate
/home
partition on systems that store user data. Refer to
Section 9.14.5.1.1, “Advice on Partitions” for more information.
The following table summarizes minimum partition sizes for the partitions containing the listed directories. You do not have to make a separate partition for each of these directories. For instance, if the partition containing /foo
must be at least 500 MB, and you do not make a separate /foo
partition, then the /
(root) partition must be at least 500 MB.
Table 9.3. Minimum partition sizes
Directory
|
Minimum size
|
---|
/
|
250 MB
|
/usr
|
250 MB, but avoid placing this on a separate partition
|
/tmp
|
50 MB
|
/var
|
384 MB
|
/home
|
100 MB
|
/boot
|
250 MB
|
Only assign storage capacity to those partitions you require immediately. You may allocate free space at any time, to meet needs as they occur. To learn about a more flexible method for storage management, refer to
Appendix D, Understanding LVM.
If you are not sure how best to configure the partitions for your computer, accept the default partition layout.
9.14.5.1.1. Advice on Partitions
Optimal partition setup depends on the usage for the Linux system in question. The following tips may help you decide how to allocate your disk space.
If you expect that you or other users will store data on the system, create a separate partition for the /home
directory within a volume group. With a separate /home
partition, you may upgrade or reinstall Red Hat Enterprise Linux without erasing user data files.
Consider encrypting any partitions that might contain sensitive data. Encryption prevents unauthorized people from accessing the data on the partitions, even if they have access to the physical storage device. In most cases, you should at least encrypt the /home
partition.
Each kernel installed on your system requires approximately 10 MB on the /boot
partition. Unless you plan to install a great many kernels, the default partition size of 250 MB for /boot
should suffice.
The GRUB bootloader in Red Hat Enterprise Linux 6 supports only the ext2, ext3, and ext4 (recommended) file systems. You cannot use any other file system for /boot
, such as Btrfs, XFS, or VFAT.
The /var
directory holds content for a number of applications, including the Apache web server. It also is used to store downloaded update packages on a temporary basis. Ensure that the partition containing the /var
directory has enough space to download pending updates and hold your other content.
The PackageKit update software downloads updated packages to /var/cache/yum/
by default. If you partition the system manually, and create a separate /var/
partition, be sure to create the partition large enough (3.0 GB or more) to download package updates.
The /usr
directory holds the majority of software content on a Red Hat Enterprise Linux system. For an installation of the default set of software, allocate at least 4 GB of space. If you are a software developer or plan to use your Red Hat Enterprise Linux system to learn software development skills, you may want to at least double this allocation.
If /usr
is on a separate partition from /
, the boot process becomes much more complex, and in some situations (like installations on iSCSI drives), might not work at all.
Consider leaving a portion of the space in an LVM volume group unallocated. This unallocated space gives you flexibility if your space requirements change but you do not wish to remove data from other partitions to reallocate storage.
If you separate subdirectories into partitions, you can retain content in those subdirectories if you decide to install a new version of Red Hat Enterprise Linux over your current system. For instance, if you intend to run a MySQL database in /var/lib/mysql
, make a separate partition for that directory in case you need to reinstall later.
The following table is a possible partition setup for a system with a single, new 80 GB hard disk and 1 GB of RAM. Note that approximately 10 GB of the volume group is unallocated to allow for future growth.
This setup is not optimal for all use cases.
Example 9.1. Example partition setup
Table 9.4. Example partition setup
Partition
|
Size and type
|
---|
/boot
|
250 MB ext3 partition
|
swap
|
2 GB swap
|
LVM physical volume
|
Remaining space, as one LVM volume group
|
The physical volume is assigned to the default volume group and divided into the following logical volumes:
Table 9.5. Example partition setup: LVM physical volume
Partition
|
Size and type
|
---|
/
|
13 GB ext4
|
/var
|
4 GB ext4
|
/home
|
50 GB ext4
|