source: postlfs/filesystems/aboutlvm.xml@ f716ef4

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since f716ef4 was 29244b7, checked in by Pierre Labastie <pieere@…>, 4 years ago

format filesystems chapter

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@22895 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 4.8 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="aboutlvm">
9 <?dbhtml filename="aboutlvm.html"?>
10
11 <sect1info>
12 <othername>$LastChangedBy$</othername>
13 <date>$Date$</date>
14 </sect1info>
15
16 <title>About Logical Volume Management (LVM)</title>
17
18 <para>
19 LVM manages disk drives. It allows multiple drives and partitions
20 to be combined into larger <emphasis>volume groups</emphasis>, assists in
21 making backups through a <emphasis>snapshot</emphasis>, and allows for
22 dynamic volume resizing. It can also provide mirroring similar to
23 a RAID 1 array.
24 </para>
25
26 <para>
27 A complete discussion of LVM is beyond the scope of this introduction,
28 but basic concepts are presented below.
29 </para>
30
31 <para>
32 To run any of the commands presented here, the <xref linkend='lvm2'/>
33 package must be installed. All commands must be run as the <systemitem
34 class="username">root</systemitem> user.
35 </para>
36
37 <para>
38 Management of disks with lvm is accomplished using the following concepts:
39 </para>
40
41 <variablelist>
42 <varlistentry>
43 <term>physical volumes</term>
44 <listitem>
45 <para>
46 These are physical disks or partitions such as
47 /dev/sda3 or /dev/sdb.
48 </para>
49 </listitem>
50 </varlistentry>
51
52 <varlistentry>
53 <term>volume groups</term>
54 <listitem>
55 <para>
56 These are named groups of physical volumes that
57 can be manipulated by the administrator. The number of physical
58 volumes that make up a volume group is arbitrary. Physical volumes
59 can be dynamically added or removed from a volume group.
60 </para>
61 </listitem>
62 </varlistentry>
63
64 <varlistentry>
65 <term>logical volumes</term>
66 <listitem>
67 <para>
68 Volume groups may be subdivided into logical volumes. Each logical
69 volume can then be individually formatted as if it were a regular
70 Linux partition. Logical volumes may be dynamically resized by
71 the administrator according to need.
72 </para>
73 </listitem>
74
75 </varlistentry>
76 </variablelist>
77
78 <para>
79 To give a concrete example, suppose that you have two 2 TB disks. Also
80 suppose a really large amount of space is required for a very large
81 database, mounted on <filename class='directory'>/srv/mysql</filename>.
82 This is what the initial set of partitions would look like:
83 </para>
84
85 <screen><literal>Partition Use Size Partition Type
86/dev/sda1 /boot 100MB 83 (Linux)
87/dev/sda2 / 10GB 83 (Linux)
88/dev/sda3 swap 2GB 82 (Swap)
89/dev/sda4 LVM remainder 8e (LVM)
90/dev/sdb1 swap 2GB 82 (Swap)
91/dev/sdb2 LVM remainder 8e (LVM)</literal></screen>
92
93 <para>
94 First initialize the physical volumes:
95 </para>
96
97 <screen><userinput>pvcreate /dev/sda4 /dev/sdb2</userinput></screen>
98
99 <note>
100 <para>
101 A full disk can be used as part of a physical volume, but
102 beware that the <command>pvcreate</command> command will destroy any
103 partition information on that disk.
104 </para>
105 </note>
106
107 <para>
108 Next create a volume group named lfs-lvm:
109 </para>
110
111 <screen><userinput>vgcreate lfs-lvm /dev/sda4 /dev/sdb2</userinput></screen>
112
113 <para>
114 The status of the volume group can be checked by running the command
115 <command>vgscan</command>. Now create the logical volumes. Since there
116 is about 3900 GB available, leave about 900 GB free for expansion. Note
117 that the logical volume named <emphasis>mysql</emphasis> is larger than
118 any physical disk.
119 </para>
120
121 <screen><userinput>lvcreate --name mysql --size 2500G lfs-lvm
122lvcreate --name home --size 500G lfs-lvm</userinput></screen>
123
124 <para>
125 Finally the logical volumes can be formatted and mounted. In this
126 example, the jfs file system (<xref linkend='jfsutils'/>) is used for
127 demonstration purposes.
128 </para>
129
130 <screen><userinput>mkfs -t ext4 /dev/lfs-lvm/home
131mkfs -t jfs /dev/lfs-lvm/mysql
132mount /dev/lfs-lvm/home /home
133mkdir -p /srv/mysql
134mount /dev/lfs-lvm/mysql /srv/mysql</userinput></screen>
135
136 <para>
137 The LFS boot scripts automatically make these file systems available to
138 the system in the checkfs script. Edit the <filename>/etc/fstab</filename>
139 file as required to automatically mount them.
140 </para>
141
142 <para>
143 A LVM logical volume can host a root filesystem, but requires the use
144 of an initramfs (initial RAM file system) and is not discussed here.
145 </para>
146
147 <para>
148 For a more information about LVM, see the <ulink
149 url="http://www.tldp.org/HOWTO/LVM-HOWTO/">LVM HOWTO</ulink> and
150 the lvm man pages.
151 </para>
152
153</sect1>
Note: See TracBrowser for help on using the repository browser.