LVM逻辑磁盘卷创建完成后,并不代表它已经可以被系统所使用,需要对这个磁盘创建文件系统并挂载某个挂载点后,这个磁盘卷才真正能够被系统所访问和使用。

创建文件系统的过程类似于windows平台的格式化磁盘,只有经过格式化的磁盘才能真正被系统读写。Linux系统创建文件系统使用mkfs命令,输入命令后连按两下TAB键,会显示该命令才支持的文件系统参数表,一般常用的就是ext4以及xfs。

图.1 mkfs命令显示支持的格式信息

mkfs命令既可以通过”-t”参数指定文件系统类型,也可以使用上面显示的格式直接操作。假设已经在Debian-vg卷组下创建了一个新的逻辑卷”backup”,命令示例如下:

# mkfs -t ext4  /dev/Debian-vg/backup 
# mkfs.ext4  /dev/Debian-vg/backup

图.2 LV磁盘卷创建文件系统

文件系统创建完成后,需要在系统中创建对应于这个LV的挂载点,才可以将新卷提供给系统使用。Linux系统的挂载点通常是一个目录,现在我们就创建一个”/backup”目录,并将新的文件系统挂载到这个目录,最后可以使用”df”命令来查看挂载信息:

# mkdir /backup
# mount /dev/Debian-vg/backup /backup
# df -hTP

图.3 挂载新建文件系统

此时,已经将新创建的文件卷挂载到系统供系统使用了,但是如果不做其它操作的话,系统重新启动后需要再次挂载。方便起见,可以编辑”/etc/fstab”文件,将新建卷自动挂载。将如下内容添加至”/etc/fstab”文件即可:

/dev/mapper/Debian--vg-backup /backup ext4  defaults 0 0

图.4 编辑fstab文件自动挂载新加卷

至此,新加逻辑卷创建文件系统并自己挂载已经全部完成。但是这些并不能完全展示LVM系统真正强大的功能,看起来和windows平台也没什么区别,就是分区格式化再使用罢了。

其实LVM是支持平滑更改VG、LV容量的,这样就让磁盘空间得到更为有效的利用,同时,在出现磁盘容量不足时也可以动态添加磁盘,而不需要对现有系统做任何调整。

首先讲解一下如何调整LV 的容量。理论上讲,LV可以动态扩容和缩减容量的,但是缩减容量时可能会造成现有数据的丢失,建议谨慎操作。本次演示如何给LV扩容。

先用”vgdisplay”命令查看一下VG的详细信息:

图.5 vgdisplay命令显示VG信息

可以看到,目前”Debian-vg”这个卷组还有3GB的空间可供使用,包含两个PV。假设需要把”backup”这个逻辑卷的容量增加1GB,则使用如下命令:

lvextend -L +1G /dev/Debian-vg/backup

图.6 扩容现有LV

如图.6所示,已经通过”lvextend”命令对”/dev/Debian-vg/backup”卷进行了扩容,但是很奇怪的是”df”命令显示”/dev/Debian-vg/backup”的容量却没有变。其原因在于”lxextend”命令只给LV增加了容量,并没有给对应的文件系统进行扩容。完成这个功能的命令就是”resize2fs”,示例如下:

resize2fs /dev/Debian-vg/backup

图.7 使用reszie2fs命令应用文件系统容量变化

如果VG容量不够了,那么会影响LV的容量调整,最好的办法当然是向现有VG中添加新的PV了。当然,也可以将现有PV移出VG,以达到节省空间,充分使用磁盘的目的。两种操作对应的命令分别是”vgextend”和”vgreduce”。本次只演示如何给VG扩容。

假设又为主机添加了一块新磁盘”/dev/sdc”,容量为10GB,在其分区并创建PV后,可以使用以下命令扩容现有VG。

# vgextend Debian-vg /dev/sdc1

图.8 向现有VG添加PV扩容VG

从图.8可以看到,目前VG中已经包含3个PV,容量也已经达到40GB。

当然,也可以使用”vgreduce”命令将新添加的PV移出VG,示例命令为:

# vgreduce Debian-vg /dev/sdc1

图.9 将PV移出VG缩减V容量

以上就是调整LVM的全部操作,熟练使用这些命令后,就会体会到Linux磁盘管理的方便和强大。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注