LVM操作案例

本文原文出处: http://blog.csdn.net/bluishglc/article/details/48177367 严禁任何形式的转载,否则将委托CSDN官方维护权益!

场景

一台机器配备了3块硬盘,容量为20G,45G,45G,其中20G的硬盘已挂在至根目录

需求

由于硬盘容量都较小,需要将剩余两快45G硬盘拼接在一起使用

LVM基础

操作

0. 前期准备

我们假定我们已经对各个硬盘进行了分区和格式化操作,也就是说在我们进行LVM改造之前,这些硬盘和分区都已可以正常使用,这样我们来看一下这台机器的硬盘和分区情况:

简单地说,三块硬盘,每块硬盘一个分区,每个分区占据了磁盘的全部空间,我们特别注意的是分区的System ID(系统类型),也就是System一列对应的值,都是Linux,这是正常Linux物理分区的类型,我们接下来的第一个工作就是要修改它。

实际上,物理卷是可以直接建立在一个硬盘上的,也就是说,如是你想让整个硬盘成为一个物理卷,你根本不需要提前对它进行分区和格式化操作!这样你也就不需要把某个分区的类型改为Linux LVM了。

1. 修改分区的System ID(系统类型)

这是我们要创建LVM的第一步,如前所属,通常Linux分区的System ID为Linux(代码83),我们要把它们修改为Linux LVM (代码 8e)才能被LVM管理和使用。

具体方法是,使用fdisk来完成修改。在下面的操作示例中:

  1. 输入t, 命令修改分区的System ID
  2. 接着就需要输入新的System ID,Linux LVM类型的代码是8e
  3. 输入w, 保存分区表并退出

然后使用fdisk -l来查看更改是否成功,在输出的/dev/xvdb1分区的信息中我们可以清楚地看到,System ID已经变更为了8e Linux LVM

接下就是对第三块硬盘执行同样的操作,将其分区系统类型也改为8e Linux LVM

2. 创建物理卷(PV)

使用命令:

pvcreate /dev/xvdb1 /dev/xvdc1

注:如前文所属,你可以直接把一个硬盘建立物理卷而不是一个分区,你可以这样做

pvcreate /dev/xvdb /dev/xvdc

创建两个物理卷

使用命令:

pvdisply

查看创建的物理卷

3. 创建逻辑卷组(VG)

vgcreate vg1 /dev/xvdb1 /dev/xvdc1

创建逻辑卷组vg1

注:同样的,如前文所属,如果你是在硬盘上建立的物理卷,你应该这样做:

vgcreate vg1 /dev/xvdb /dev/xvdc

使用命令:

vgdisplay

查看创建的逻辑卷组

值得注意的是vg1的容量已经是两个分区的总和了。

4. 创建逻辑卷

使用命令:

lvcreate -l 100%VG -n lv1 vg1

创建逻辑卷lv1,将逻辑卷组vg1的全部容量分配给它

使用命令:

lvdisplay

查看刚刚创建的逻辑卷

5. 格式化逻辑卷

使用命令:

mkfs.ext4 /dev/vg1/lv1

至此,一个逻辑卷已经创建完成,我们可以看到,它在系统中和一个物理上的75GB的硬盘没有任何区别,接下来我们就可以把它挂载一个文件夹下使用了。我们可以使用 parted查看一下全部的分区情况:

### LVM逻辑卷管理器的扩容操作 #### 准备工作 在执行LVM扩容之前,需确认当前系统的磁盘布局和现有逻辑卷的状态。通过`lsblk`命令可以清晰地查看到各个磁盘及其分区的信息,包括哪些属于LVM逻辑卷的一部分[^4]。 ```bash [root@bogon /]# lsblk ``` 此命令会展示所有磁盘及相关分区详情,帮助定位要扩增的目标逻辑卷位置。 #### 扩展物理卷(PV) 如果计划向现有的卷组(VG)添加更多空间,则首先要确保有足够的未分配磁盘区域可用作新的物理卷(PV)[^1]。假设新增了一块名为`sdb`的新硬盘: ```bash pvcreate /dev/sdb vgextend storage /dev/sdb ``` 上述指令先初始化新加入的磁盘作为PV,再将其关联至指定VG中。 #### 增加逻辑卷(LV)容量 对于已存在的LV而言,可以直接利用`lvextend`工具来增大其尺寸。例如要把名为`vo`的LV扩大到290MB: ```bash lvextend -L 290M /dev/storage/vo ``` 这条语句指定了最终期望达到的具体大小[^2]。值得注意的是,在某些情况下可能更倾向于相对增量而非绝对设定值;此时可以用类似`+500M`的形式表示追加额外的空间量。 #### 文件系统调整 完成LV层面的增长之后,还需相应修改上面承载着的数据结构——即文件系统本身。针对ext系列或XFS类型的文件系统来说,通常采用如下方式更新元数据以匹配最新的底层存储变化: - 对于EXT3/4: ```bash resize2fs /dev/mapper/storage-vo ``` - 针对XFS: ```bash xfs_growfs /mountpoint_of_vo ``` 这里需要注意替换实际路径名以适应具体环境配置[^3]。 #### 实际案例演示 考虑一个具体的例子:当需要将`centos-root`这个根目录对应的LV增加5GB时,整个流程大致如下所示: 1. 使用`lsblk`检查现状; 2. 如果有必要的话,创建并连接新的PV到VG里; 3. 应用`lvextend`改变目标LV大小; 4. 调整对应挂载点上的文件系统参数使其生效。 以上步骤能够有效指导用户顺利完成一次完整的LVM扩容过程。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Laurence 

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值