Unix操作系统之分区、LVM配置过程

  • 来源:网络
  • 更新日期:2020-07-13

摘要:系统运维 在安装类Unix操作系统时,分区肯定是必不可少的一步,这一步说简单也很简单,按着提示一步步的分区->格式化就可以完成,由于现在的

系统运维

    在安装类Unix操作系统时,分区肯定是必不可少的一步,这一步说简单也很简单,按着提示一步步的分区->格式化就可以完成,由于现在的项目几乎不会在硬盘的采购上出现瓶颈,所以很多项目可能直到硬件过保下线都不会用到LVM的动态扩容功能,所以在安装OS时也不会专门研究LVM、PV、VG、LV等概念,因为我之后的项目毕竟主要是搞存储了,所以最近研究了几个文档,总结一下在类unix系统时分区的一些事。


    在linux中对硬盘进行分区,格式化,挂载有两种方法,在最初安装OS时的图形界面和后期扩容硬盘时的用命令行,先说一下相对麻烦的后者:


 


首先看一下上面的图,在linux中输入fdisk -l可以看到目前服务器中安装的硬盘信息(lv是看不到的),/dev/sda是指的sda这块硬盘安装后的挂载路径,类似的光盘是挂载在/dev/sr0和/dev/media上,后者是前者的一个软链接,start end是扇区起始位置,blocks是块大小,上图是以kb计算的,ID指的是文件系统的代号:83代表ext2/3,82代表swap,5是扩展分区,lvm是8e,raid是fd.


sda1~6代表的是目前sda的分区情况,分了6个区,例如sda1挂载在/,sd2挂载在/opt,这个在OS安装时就可以完成,接下来说一下用命令行给sda再分两个新的分区sda7和sda8,并配置为LVM的过程。


1)#fdisk /dev/sda,输入大小和hex code[8e],8e是LVM类型分区的code,类似上面说的83代表ext2/3;

最新的理解:其实做pv是不需要格式化的,换句话说和格式化没关系,pv只是物理盘的一个进一步划分,参照这篇文章:文件系统 裸设备


2) #partprobe,不用重启让LVM分区立即生效;至此创建完成物理分区。

3)#pvcreat /dev/sda7,创建LVM的物理卷PV,按同样方法创建sda8,然后用pvscan或pvdiaplay查看。

4)#vgcreat   卷组名      物理卷

   #vgcreat  vg1   /dev/sda7 /dev/sda8,用之前创建的两个PV创建LVM的VG(也可以用一个PV创建),创建完成后用vgscan或vhdisplay来查看。

5)#lvcreat -L 大小 卷组名 -n 逻辑卷名称

   #lvcreat -L  5G    vg1  -n   lv1,用之前创建的vg创建一个5G的lv,至此lvm创建完毕,

只有逻辑卷不能写入数据,命令是无法单独在逻辑卷上实现的,只有在逻辑卷上建立文件系统,用户通过文件系统才能对逻辑卷操作。

6) #mkfs.ext3 /dev/vg1/lv1     加文件系统

   #mount -t ext3 /dev/vg1/lv1 /mnt 格式化lv并挂载在/mnt上,进到mnt下能看到;lost+found就算成功了。注意:lv用fdisk-l看是看不到的,用lvdisplay才能,参考下图:

  

如果要从上面创建的vg1里面再划一个lv2出来,直接从lvcreat开始就可以了。一个硬盘支持的分区是15个,但是如果用vg分lv。就可以没有数量限制。

总结一下lvm的配置过程:硬盘分区->创建pv->创建vg->创建lv->格式化挂载。


下面介绍lv的扩展方法:

例如上面划分的lv1是5G,想要增加1G,步骤如下:

0)umount /mnt 先卸载

  #lvresize -L 绝对大小 对象

1)#lvresize -L 6G /dev/vg1/lv1

2)#e2fsck -f /dev/vg1/lv1 检查数据块是否损坏

3)#resize2fs /dev/vg1/lv1 确定大小,生效数据

4)#mount -t ext3 /dev/vg1/lv1 /mnt 重新挂载


至此lv的容量扩展完成,lv容量是基于vg容量来扩展的,如果要扩展vg容量,方法如下:


1)#pvcreate /dev/sda9 创建新的pv

2) #vgextend 卷组名 物理卷

   #vgextend  vg1   /dev/sd9 把sd9加入vg

3) #vgdisplay vg1 查看


至此vg扩容完毕,删除lv、vg、pv和分区的方法如下,注意删除的顺序:


1)#umount /mnt

2) #lvremove /dev/vg1/lv1 删除lv

3) #vgremove vg1   删除vg

4) #pvremove /dev/sda7 删除pv物理卷

5) #fdisk,command选d,patition number选8 删除分区

6)#partprobe 命令不重启生效


至此从创建分区到创建lv的所有内容消除。


创建raid也是可以用命令行来实现的,有空再补充吧,接下来说一下在安装os时的lvm创建:


如上图,在前一步点了sda后会出现上图,可以直接从sda中创建lvm.


 

如上图,从sda2中创建pv,然后在上面的vg中继续分区。其实在pv中分区和直接在sdax中分区意思是一样的,区别就是lvm的扩展功能。


#fdisk -l只能查看物理设备,不能查看lv,如果要查看lv,用lvdisplay,另外类似

/dev/mapper/VoLGroup00-LogVol00的df -h,/dev/mapper下面的其实都是映射关系,就是做了lvm和多路径才会有/dev/mapper这种,可以去/dev/VoLGroup00下查看查看。



新网虚拟主机