1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
---|
3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
---|
4 | <!ENTITY % general-entities SYSTEM "../general.ent">
|
---|
5 | %general-entities;
|
---|
6 | ]>
|
---|
7 |
|
---|
8 | <sect1 id="ch-partitioning-creatingpartition">
|
---|
9 | <?dbhtml filename="creatingpartition.html"?>
|
---|
10 |
|
---|
11 | <title>Creating a New Partition</title>
|
---|
12 |
|
---|
13 | <para>Like most other operating systems, LFS is usually installed on a
|
---|
14 | dedicated partition. The recommended approach to building an LFS system
|
---|
15 | is to use an available empty partition or, if you have enough unpartitioned
|
---|
16 | space, to create one.</para>
|
---|
17 |
|
---|
18 | <!--
|
---|
19 |
|
---|
20 | <para>It is possible to install an LFS system (in fact even multiple LFS
|
---|
21 | systems) on a partition already occupied by another
|
---|
22 | operating system and the different systems will co-exist peacefully. The
|
---|
23 | document <ulink url="&hints-root;lfs_next_to_existing_systems.txt"/>
|
---|
24 | contains notes on how to implement this. This document was last updated
|
---|
25 | in 2004. It has not been updated since and it has not been tested with
|
---|
26 | recent versions of this LFS book. The document is more than likely not
|
---|
27 | usable as-is and you will need to account for changes made to the LFS
|
---|
28 | procedures since it was written. This is only recommended for expert LFS
|
---|
29 | users.</para>
|
---|
30 |
|
---|
31 | -->
|
---|
32 |
|
---|
33 | <para>A minimal system requires a partition of around 10 gigabytes (GB).
|
---|
34 | This is enough to store all the source tarballs and compile the packages.
|
---|
35 | However, if the LFS system is intended to be the primary Linux system,
|
---|
36 | additional software will probably be installed which will require additional
|
---|
37 | space. A 30 GB partition is a reasonable size to provide for growth. The LFS
|
---|
38 | system itself will not take up this much room. A large portion of this
|
---|
39 | requirement is to provide sufficient free temporary storage as well as
|
---|
40 | for adding additional capabilities after LFS is complete. Additionally, compiling
|
---|
41 | packages can require a lot of disk space which will be reclaimed after the
|
---|
42 | package is installed.</para>
|
---|
43 |
|
---|
44 | <para>Because there is not always enough Random Access Memory (RAM) available
|
---|
45 | for compilation processes, it is a good idea to use a small disk partition as
|
---|
46 | <systemitem class="filesystem">swap</systemitem> space. This is used by the
|
---|
47 | kernel to store seldom-used data and leave more memory available for active
|
---|
48 | processes. The <systemitem class="filesystem">swap</systemitem> partition for
|
---|
49 | an LFS system can be the same as the one used by the host system, in which
|
---|
50 | case it is not necessary to create another one.</para>
|
---|
51 |
|
---|
52 | <para>Start a disk partitioning program such as <command>cfdisk</command>
|
---|
53 | or <command>fdisk</command> with a command line option naming the hard
|
---|
54 | disk on which the new partition will be created—for example
|
---|
55 | <filename class="devicefile">/dev/sda</filename> for the primary
|
---|
56 | disk drive. Create a Linux native partition and a
|
---|
57 | <systemitem class="filesystem">swap</systemitem> partition, if needed. Please
|
---|
58 | refer to <filename>cfdisk(8)</filename> or <filename>fdisk(8)</filename> if
|
---|
59 | you do not yet know how to use the programs.</para>
|
---|
60 |
|
---|
61 | <note><para>For experienced users, other partitioning schemes are possible.
|
---|
62 | The new LFS system can be on a software <ulink
|
---|
63 | url="&blfs-book;postlfs/raid.html">RAID</ulink> array or an <ulink
|
---|
64 | url="&blfs-book;postlfs/aboutlvm.html">LVM</ulink> logical volume.
|
---|
65 | However, some of these options require an <ulink
|
---|
66 | url="&blfs-book;postlfs/initramfs.html">initramfs</ulink>, which is
|
---|
67 | an advanced topic. These partitioning methodologies are not recommended for
|
---|
68 | first time LFS users.</para></note>
|
---|
69 |
|
---|
70 | <para>Remember the designation of the new partition (e.g., <filename
|
---|
71 | class="devicefile">sda5</filename>). This book will refer to this as
|
---|
72 | the LFS partition. Also remember the designation of the <systemitem
|
---|
73 | class="filesystem">swap</systemitem> partition. These names will be
|
---|
74 | needed later for the <filename>/etc/fstab</filename> file.</para>
|
---|
75 |
|
---|
76 | <sect2>
|
---|
77 | <title>Other Partition Issues</title>
|
---|
78 |
|
---|
79 | <para>Requests for advice on system partitioning are often posted on the LFS mailing
|
---|
80 | lists. This is a highly subjective topic. The default for most distributions
|
---|
81 | is to use the entire drive with the exception of one small swap partition. This
|
---|
82 | is not optimal for LFS for several reasons. It reduces flexibility, makes
|
---|
83 | sharing of data across multiple distributions or LFS builds more difficult, makes
|
---|
84 | backups more time consuming, and can waste disk space through inefficient
|
---|
85 | allocation of file system structures.</para>
|
---|
86 |
|
---|
87 | <sect3>
|
---|
88 | <title>The Root Partition</title>
|
---|
89 |
|
---|
90 | <para>A root LFS partition (not to be confused with the
|
---|
91 | <filename class="directory">/root</filename> directory) of
|
---|
92 | ten gigabytes is a good compromise for most systems. It provides enough
|
---|
93 | space to build LFS and most of BLFS, but is small enough so that multiple
|
---|
94 | partitions can be easily created for experimentation.</para> </sect3>
|
---|
95 |
|
---|
96 | <sect3>
|
---|
97 | <title>The Swap Partition</title>
|
---|
98 |
|
---|
99 | <para>Most distributions automatically create a swap partition. Generally
|
---|
100 | the recommended size of the swap partition is about twice the amount of
|
---|
101 | physical RAM, however this is rarely needed. If disk space is limited,
|
---|
102 | hold the swap partition to two gigabytes and monitor the amount of disk
|
---|
103 | swapping.</para>
|
---|
104 |
|
---|
105 | <para>Swapping is never good. Generally you can tell if a system is
|
---|
106 | swapping by just listening to disk activity and observing how the system
|
---|
107 | reacts to commands. The first reaction to swapping should be to check for
|
---|
108 | an unreasonable command such as trying to edit a five gigabyte file. If
|
---|
109 | swapping becomes a normal occurrence, the best solution is to purchase more
|
---|
110 | RAM for your system.</para>
|
---|
111 | </sect3>
|
---|
112 |
|
---|
113 | <sect3>
|
---|
114 | <title>The Grub Bios Partition</title>
|
---|
115 |
|
---|
116 | <para>If the <emphasis>boot disk</emphasis> has been partitioned with a
|
---|
117 | GUID Partition Table (GPT), then a small, typically 1 MB, partition must be
|
---|
118 | created if it does not already exist. This partition is not formatted, but
|
---|
119 | must be available for GRUB to use during installation of the boot
|
---|
120 | loader. This partition will normally be labeled 'BIOS Boot' if using
|
---|
121 | <command>fdisk</command> or have a code of <emphasis>EF02</emphasis> if
|
---|
122 | using <command>gdisk</command>.</para>
|
---|
123 |
|
---|
124 | <note><para>The Grub Bios partition must be on the drive that the BIOS
|
---|
125 | uses to boot the system. This is not necessarily the same drive where the
|
---|
126 | LFS root partition is located. Disks on a system may use different
|
---|
127 | partition table types. The requirement for this partition depends
|
---|
128 | only on the partition table type of the boot disk.</para></note>
|
---|
129 | </sect3>
|
---|
130 |
|
---|
131 | <sect3>
|
---|
132 | <title>Convenience Partitions</title>
|
---|
133 |
|
---|
134 | <para>There are several other partitions that are not required, but should
|
---|
135 | be considered when designing a disk layout. The following list
|
---|
136 | is not comprehensive, but is meant as a guide.</para>
|
---|
137 |
|
---|
138 | <itemizedlist>
|
---|
139 |
|
---|
140 | <listitem><para>/boot – Highly recommended. Use this partition to
|
---|
141 | store kernels and other booting information. To minimize potential boot
|
---|
142 | problems with larger disks, make this the first physical partition on
|
---|
143 | your first disk drive. A partition size of 100 megabytes is quite
|
---|
144 | adequate.</para></listitem>
|
---|
145 |
|
---|
146 | <listitem><para>/home – Highly recommended. Share your home
|
---|
147 | directory and user customization across multiple distributions or LFS
|
---|
148 | builds. The size is generally fairly large and depends on available disk
|
---|
149 | space.</para></listitem>
|
---|
150 |
|
---|
151 | <listitem><para>/usr – A separate /usr partition is generally used
|
---|
152 | if providing a server for a thin client or diskless workstation. It is
|
---|
153 | normally not needed for LFS. A size of five gigabytes will handle most
|
---|
154 | installations.</para></listitem>
|
---|
155 |
|
---|
156 | <listitem><para>/opt – This directory is most useful for
|
---|
157 | BLFS where multiple installations of large packages like Gnome or KDE can
|
---|
158 | be installed without embedding the files in the /usr hierarchy. If
|
---|
159 | used, 5 to 10 gigabytes is generally adequate.</para>
|
---|
160 | </listitem>
|
---|
161 |
|
---|
162 | <listitem><para>/tmp – A separate /tmp directory is rare, but
|
---|
163 | useful if configuring a thin client. This partition, if used, will
|
---|
164 | usually not need to exceed a couple of gigabytes.</para></listitem>
|
---|
165 |
|
---|
166 | <listitem><para>/usr/src – This partition is very
|
---|
167 | useful for providing a location to store BLFS source files and
|
---|
168 | share them across LFS builds. It can also be used as a location
|
---|
169 | for building BLFS packages. A reasonably large partition of 30-50
|
---|
170 | gigabytes allows plenty of room.</para></listitem>
|
---|
171 |
|
---|
172 | </itemizedlist>
|
---|
173 |
|
---|
174 | <para>Any separate partition that you want automatically mounted upon boot
|
---|
175 | needs to be specified in the <filename>/etc/fstab</filename>. Details
|
---|
176 | about how to specify partitions will be discussed in <xref
|
---|
177 | linkend="ch-bootable-fstab"/>. </para>
|
---|
178 |
|
---|
179 | </sect3>
|
---|
180 | </sect2>
|
---|
181 | </sect1>
|
---|