source: chapter02/creatingpartition.xml@ 6028823

10.0 10.0-rc1 10.1 10.1-rc1 11.0 11.0-rc1 11.0-rc2 11.0-rc3 11.1 11.1-rc1 11.2 11.2-rc1 11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 6.6 6.7 6.8 7.0 7.1 7.2 7.3 7.4 7.5 7.5-systemd 7.6 7.6-systemd 7.7 7.7-systemd 7.8 7.8-systemd 7.9 7.9-systemd 8.0 8.1 8.2 8.3 8.4 9.0 9.1 arm bdubbs/gcc13 ml-11.0 multilib renodr/libudev-from-systemd s6-init trunk xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/lfs-next xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/mips64el xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since 6028823 was 44917f1, checked in by Bruce Dubbs <bdubbs@…>, 14 years ago

Add a discussion about disk partitioning

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@9189 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 7.3 KB
Line 
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="space-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 1.3 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 (2-3 GB). The LFS system itself will not take up this much room.
38 A large portion of this requirement is to provide sufficient free temporary
39 storage. Compiling packages can require a lot of disk space which will be
40 reclaimed after the package is installed.</para>
41
42 <para>Because there is not always enough Random Access Memory (RAM) available
43 for compilation processes, it is a good idea to use a small disk partition as
44 <systemitem class="filesystem">swap</systemitem> space. This is used by the
45 kernel to store seldom-used data and leave more memory available for active
46 processes. The <systemitem class="filesystem">swap</systemitem> partition for
47 an LFS system can be the same as the one used by the host system, in which
48 case it is not necessary to create another one.</para>
49
50 <para>Start a disk partitioning program such as <command>cfdisk</command>
51 or <command>fdisk</command> with a command line option naming the hard
52 disk on which the new partition will be created&mdash;for example
53 <filename class="devicefile">/dev/hda</filename> for the primary Integrated
54 Drive Electronics (IDE) disk. Create a Linux native partition and a
55 <systemitem class="filesystem">swap</systemitem> partition, if needed. Please
56 refer to <filename>cfdisk(8)</filename> or <filename>fdisk(8)</filename> if
57 you do not yet know how to use the programs.</para>
58
59 <para>Remember the designation of the new partition (e.g., <filename
60 class="devicefile">hda5</filename>). This book will refer to this as
61 the LFS partition. Also remember the designation of the <systemitem
62 class="filesystem">swap</systemitem> partition. These names will be
63 needed later for the <filename>/etc/fstab</filename> file.</para>
64
65 <sect2>
66 <title>Other Partition Issues</title>
67
68 <para>Requests for advice on system partitioning are often posted on the LFS mailing
69 lists. This is a highly subjective topic. The default size for most distributions
70 is to use the entire drive with the exception of one small swap partition. This
71 is not optimal for LFS for several reasons. It reduces flexibility, makes
72 sharing of data across multiple distributions or LFS builds more difficult, makes
73 backups more time consuming, and can waste disk space through inefficient
74 allocation of file system structures.</para>
75
76 <sect3>
77 <title>The Root Partition</title>
78
79 <para>A root LFS partition (not to be confused with the /root directory) of
80 ten gigabytes is a good compromise for most systems. It provides enough
81 space to build LFS and most of BLFS, but is small enough so that multiple
82 partitions can be easily created for experimentation.</para> </sect3>
83
84 <sect3>
85 <title>The Swap Partition</title>
86
87 <para>Most distributions automatically create a swap partition. Generally
88 the recommneded size of the swap partition is about twice the amount of
89 physical RAM, however this is rarely needed. If disk space is limited,
90 hold the swap partition to two gigabytes and monitor the amount of disk
91 swapping.</para>
92
93 <para>Swapping is never good. Generally you can tell if a system is
94 swapping by just listening to disk activity and observing how the system
95 reacts to commands. The first reaction to swapping shouuld be to check for
96 an unresonable command such as trying to edit a five gigabyte file. If
97 swapping becomes a normal occurance, the best solution is to purchase more
98 RAM for your system.</para> </sect3>
99
100 <sect3>
101 <title>Convenience Partitions</title>
102
103 <para>There are several other partitions that are not required, but should
104 be considered when designing a disk layout, The following list
105 is not comprehensive, but is meant as a guide.</para>
106
107 <itemizedlist>
108
109 <listitem><para>/boot &ndash; Highly recommended. Use this partition to
110 store kernels and other booting information. To minimize potential boot
111 problems with larger disks, make this the first physical partition on
112 your first disk drive. A partition size of 100 megabytes is quite
113 adequate.</para></listitem>
114
115 <listitem><para>/home &ndash; Highly recommended. Share your home
116 directory and user customization across multiple distributions or LFS
117 builds. The size is generally fairly large and depends on available disk
118 space.</para></listitem>
119
120 <listitem><para>/usr &ndash; A separate /usr partition is generally used
121 if providing a server for a thin client or diskless workstation. It is
122 normally not needed for LFS. A size of five gigabytes will handle most
123 installations.</para></listitem>
124
125 <listitem><para>/opt &ndash; This directory is most useful for
126 BLFS where multiple installations of large packages like Gnome or KDE can
127 be installed without embedding the files in the /usr hierarchy. If
128 used, five to ten gigabytes is generally adequate.</para>
129 </listitem>
130
131 <listitem><para>/tmp &ndash; A separate /tmp directory is rare, but
132 useful if coufiguring a thin client. This partition, if used, will
133 usually not need to exceed a couple of gigabytes.</para></listitem>
134
135 <listitem><para>/usr/src &ndash; This partition is very
136 useful for providing a location to store BLFS source files and
137 share them across LFS builds. It can also be used as a location
138 for building BLFS packages. A reasonably large partition of 30-50
139 gigabytes allows plenty of room.</para></listitem>
140
141 </itemizedlist>
142
143 <para>Any separate partition that you want automatically mounted upon boot
144 needs to be specified in the <filename>/etc/fstab</filename>. Details
145 about how to specify partitions will be discussed in <xref
146 linkend="ch-bootable-fstab"/>. </para>
147
148 </sect3>
149 </sect2>
150</sect1>
Note: See TracBrowser for help on using the repository browser.