You must design a partitioning scheme (commonly called a partition map, partition plan, or disk layout) for your Linux system to be installed on your classroom hard disk. (You must determine the size of this drive before starting, as well as the amount of memory present; see partitioning hints.)
For this project, you will not implement or install anything. This project is a plan, or partitioning scheme that you will submit. In the install project (which is the next project, not this project), you will use your approved plan from this project.
Since the classroom computers have removable disks, they may all be different sizes. Be sure to determine the size of your assigned disk for our class, not the Windows disk that's probably in there at the moment.
Your partitioning scheme really doesn't matter in a classroom setting
such as ours, so you are free to imagine any real-world scenario you
wish and design a partitioning scheme for that, using the disk and
memory sizes of your classroom computer.
Please make sure you leave enough room on
(the root filesystem) and/or
(How much space that takes, is up to you to figure out.)
You must also follow the additional requirements below.
Read the Hard disk partitioning guide before proceeding with this project. Note how the plan is presented in a table, and includes all relevant information. Your plan must be sufficiently detailed so that someone else can set up a system exactly the same way, with the same volume names, types, sizes, etc. Be sure to include the size of the disk and the amount of RAM installed on your assigned computer. (You will have to determine these values yourself, using the techniques discussed in class.)
/home. Its size doesn't matter, you can make it quite small (say 100 megabytes if not using a GUI) or as large as you wish. If it is too small, you may not be able to run the GUI or download (or compile) any software! (Consider for example the Internet cache for Firefox will be Gibibytes in size. Compiling a custom Linux kernel could require over 10 GiB in your home directory.) Also, keep in mind at some point you will need to back up your home directory onto YborStudent, and that has a 34 gigabyte quota per student.
ext4filesystem type for all storage volumes (except for swap of course). Some future projects will require this. Note that Red Hat distros (including Fedora) now default to
XFS, so you must manually select
You should partition your disk
into two partitions only, one for the
(which might cause problems if placed under LVM),
and all the rest into one large LVM physical
(Other partitions, such as one for “BIOS Boot”, may be created
automatically if needed.
You should have those partitions in addition to the other two.)
You will then implement the rest of your partitioning scheme using
(Note that having the root partition/volume under
LVM will require a RAM disk boot setup (i.e., using
Fedora Linux has support for LVM built into its
installer, and in fact uses it by default.
When you get to the partitioning tool during the
install process, you can let the installer choose a disk layout
for you that you will then modify.
This should set up LVM automatically.
This is much easier than setting it up later using the
command line tools.
Note that the Fedora installer handles the boot setup
initrd” and the BIOS boot partition,
if needed) for you.
But, it won't do that if you choose “Custom Layout” instead
of letting it create a layout that you modify.
Fedora since version 21 has an odd bug with Grub, loading a 16-bit(!) version of the initial RAM disk. Problems have been reported with this when installing a 64-bit version of Fedora, with some graphic cards. Ask me for help if the boot time GUI screen freezes or crashes.
/tmp. (Red Hat systems use a RAM disk for that, so any disk space would be wasted. Instead, remember to allow extra space in your
/boot) unassigned to any storage volume for now. (The reason is that you will create additional logical volumes later, and you don't want to have to shrink any volumes to make room.)
30 * 5 * 5MiB = 750MiBminimum, and to allow room for additional classes in the future 1 GiB will be used.”)
The layout of directories is fairly well standardized
across all Unix and Linux systems.
Check the man pages for
hier on Linux
filesystem on Solaris.
Also see the on-line
Check the partitioning scheme for similar systems you have access to, including YborStudent or a LiveCD setup. You can also check on how full each partition is, to get an estimate of how large each must be, at a minimum.
It pays to read any install requirements when planning out a partitioning scheme. In our case, you should read the install project requirements. As you read them, think about how each requirement affects your partition plan.
Disk requirements for a given distribution can often be found on-line, in their install documentation. In the case of Fedora, check the on-line release notes for the version we will install (discussed in class).
Since there is a requirement to use LVM but you may not have the time now to read the LVM guide, here is a somewhat over-simplified summary of what you should know:
/dev/sdb), volume groups must be given names. Currently, Fedora picks the default name of “
fedora”. I generally prefer a short, descriptive name, such as “
vg”. You will need to pick a name and document it.
/dev/sda2”.) I generally use a naming scheme such as “
lv_root”, and so on. Then, your logical volumes are named volume-group/logical-volume, for example “
/dev/vg/lv_var”. You can use such names in your table for your partition plan.
Use the Partitioning Scheme Documentation as a guide for the format to use.
You can type or send as email to . Please use the subject similar to “Unix/Linux Admin I, Project 1 (Partitioning) Submission”, so I can tell which emails are submitted projects.
Send questions about the assignment to . Please use a subject similar to “Unix/Linux Admin I, Project 1 (Partitioning) Questions” so I can tell which emails are questions about the assignment (and not submissions).
Please see your syllabus for more information about submitting projects.