如何在Ubuntu中管理和使用逻辑卷管理LVM讲解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如何在Ubuntu中管理和使用逻辑卷管理LVM
在我们之前的文章中,我们介绍了什么是 LVM 以及能用 LVM 做什么,今天我们会给你介绍一些 LVM 的主要管理工具,使得你在设置和扩展安装时更游刃有余。
正如之前所述,LVM 是介于你的操作系统和物理硬盘驱动器之间的抽象层。这意味着你的物理硬盘驱动器和分区不再依赖于他们所在的硬盘驱动和分区。而是你的操作系统所见的硬盘驱动和分区可以是由任意数目的独立硬盘汇集而成的或是一个软件磁盘阵列。
要管理 LVM,这里有很多可用的 GUI 工具,但要真正理解 LVM 配置发生的事情,最好要知道一些命令行工具。这当你在一个服务器或不提供 GUI 工具的发行版上管理 LVM 时尤为有用。
LVM 的大部分命令和彼此都非常相似。每个可用的命令都由以下其中之一开头:•Physical Volume (物理卷) = pv
•Volume Group (卷组)= vg
•Logical Volume (逻辑卷)= lv
物理卷命令用于在卷组中添加或删除硬盘驱动。卷组命令用于为你的逻辑卷操作更改显示的物理分区抽象集。逻辑卷命令会以分区形式显示卷组,使得你的操作系统能使用指定的空间。
可下载的 LVM 备忘单
为了帮助你理解每个前缀可用的命令,我们制作了一个备忘单。我们会在该文章中介绍一些命令,但仍有很多你可用但没有介绍到的命令。
该列表中的所有命令都要以 root 身份运行,因为你更改的是会影响整个机器系统级设置。
如何查看当前 LVM 信息
你首先需要做的事情是检查你的 LVM 设置。s 和 display 命令可以和物理卷(pv)、卷组(vg)以及逻辑卷(lv)一起使用,是一个找出当前设置的好起点。
display 命令会格式化输出信息,因此比 s 命令更易于理解。对每个命令你会看到名称和 pv/vg 的路径,它还会给出空闲和已使用空间的信息。
最重要的信息是 PV 名称和 VG 名称。用这两部分信息我们可以继续进行 LVM 设置。
创建一个逻辑卷
逻辑卷是你的操作系统在 LVM 中使用的分区。创建一个逻辑卷,首先需要拥有一个物理卷和卷组。下面是创建一个新的逻辑卷所需要的全部命令。
创建物理卷
我们会从一个全新的没有任何分区和信息的硬盘开始。首先找出你将要使用的磁盘。(/dev/sda, sdb, 等)
注意:记住所有的命令都要以 root 身份运行或者在命令前面添加 'sudo' 。
1.fdisk -l
如果之前你的硬盘从未格式化或分区过,在 fdisk 的输出中你很可能看到类似下面的信息。这完全正常,因为我们会在下面的步骤中创建需要的分区。
我们的新磁盘位置是 /dev/sdb,让我们用 fdisk 命令在磁盘上创建一个新的分区。
这里有大量能创建新分区的 GUI 工具,包括Gparted,但由于我们已经打开了终端,我们将使用 fdisk 命令创建需要的分区。
在终端中输入以下命令:
1.fdisk /dev/sdb
这会使你进入到一个特殊的 fdisk 提示符中。
以指定的顺序输入命令创建一个使用新硬盘 100% 空间的主分区并为 LVM 做好了准备。如果你需要更改分区的大小或想要多个分区,我建议使用 GParted 或自己了解一下关于 fdisk 命令的使用。
警告:下面的步骤会格式化你的硬盘驱动。确保在进行下面步骤之前你的硬盘驱动中没有任何有用的信息。
•n = 创建新分区
•p = 创建主分区
• 1 = 成为磁盘上的首个分区
输入 enter 键两次以接受默认的第一个和最后一个柱面。
用下面的命令准备 LVM 所使用的分区。
•t = 更改分区类型
•8e = 更改为 LVM 分区类型
核实并将信息写入硬盘。
•p = 查看分区设置使得在写入更改到磁盘之前可以回看
•w = 写入更改到磁盘
运行这些命令之后,会退出 fdisk 提示符并返回到终端的 bash 提示符中。
输入 pvcreate /dev/sdb1 在刚创建的分区上新建一个 LVM 物理卷。
你也许会问为什么我们不用一个文件系统格式化分区,不用担心,该步骤在后面。
创建卷组
现在我们有了一个指定的分区和创建好的物理卷,我们需要创建一个卷组。很幸运这只需要一个命令。
1.vgcreate vgpool /dev/sdb1
vgpool 是新创建的卷组的名称。你可以使用任何你喜欢的名称,但建议标签以vg 开头,以便后面你使用它时能意识到这是一个卷组。
创建逻辑卷
创建 LVM 将使用的逻辑卷:
1.lvcreate -L 3G -n lvstuff vgpool
-L 命令指定逻辑卷的大小,在该情况中是 3 GB,-n 命令指定卷的名称。指定vgpool 以便 lvcreate 命令知道从什么卷获取空间。
格式化并挂载逻辑卷
最后一步是用一个文件系统格式化新的逻辑卷。如果你需要选择一个 Linux 文件系统的帮助,请阅读如果根据需要选取最合适的文件系统。
1.mkfs -t ext3 /dev/vgpool/lvstuff
创建挂载点并将卷挂载到你可以使用的地方。
1.mkdir /mnt/stuff
2.mount -t ext3 /dev/vgpool/lvstuff /mnt/stuff
重新设置逻辑卷大小
逻辑卷的一个好处是你能使你的存储物理地变大或变小,而不需要移动所有东西到一个更大的硬盘。另外,你可以添加新的硬盘并同时扩展你的卷组。或者如果你有一个不使用的硬盘,你可以从卷组中移除它使得逻辑卷变小。
这里有三个用于使物理卷、卷组和逻辑卷变大或变小的基础工具。
注意:这些命令中的每个都要以 pv、vg 或 lv 开头,取决于你的工作对象。
•resize –能压缩或扩展物理卷和逻辑卷,但卷组不能
•extend –能使卷组和逻辑卷变大但不能变小
•reduce –能使卷组和逻辑卷变小但不能变大
让我们来看一个如何向刚创建的逻辑卷 "lvstuff" 添加新硬盘驱动的例子。
安装并格式化新硬盘驱动
按照上面创建新分区并更改分区类型为 LVM(8e) 的步骤安装一个新硬盘驱动。然后用 pvcreate 命令创建一个 LVM 能识别的物理卷。
添加新硬盘到卷组
要添加新的硬盘到一个卷组,你只需要知道你的新分区,在我们的例子中是
/dev/sdc1,以及想要添加到的卷组的名称。
这会添加新物理卷到已存在的卷组中。
1.vgextend vgpool /dev/sdc1
扩展逻辑卷
调整逻辑卷的大小,我们需要指出的是通过大小而不是设备来扩展。在我们的例子中,我们会添加一个 8GB 的硬盘驱动到我们的 3GB vgpool。我们可以用lvextend 或 lvresize 命令使该空间可用。
1.lvextend -L8G /dev/vgpool/lvstuff