学前了解:创建有两种方式,一种是基于磁盘的,另外一种是基于分区的,如果是基于分区的就要通过fdisk或parted方式划分好分区,不要格式化,如果基于磁盘的就不需要创建分区了,直接就可以通过创建物理卷。只有创建好了物理卷之后才能添加到卷组,并在卷组里面创建逻辑卷,后格式化才能存放数据。(物理卷,卷组,逻辑卷,PE这些名词不了解的可以先行百度再来学习→)
[root@localhost ~]# lsblk ###查看当前硬盘情况
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 49G 0 part
├─centos-root 253:0 0 44G 0 lvm /
└─centos-swap 253:1 0 5G 0 lvm [SWAP]
sdb 8:16 0 20G 0 disk
sr0 11:0 1 973M 0 rom
[root@localhost ~]#
1,使用sdb创建基于磁盘的物理卷
创建物理卷
[root@localhost ~]# pvcreate /dev/sdb #创建物理卷
#如果有多个分区 # pvcreate /dev/sda /dev/sdb /dev/sdbc 或 # pvcreate/dev/sdb{1,2,3,4}
Physical volume "/dev/sdb"successfully created ##提示这个创建成功 [root@localhost ~]# pvscan #查看创建的物理卷 或 pvs
PV /dev/sdb2 lvm2 [500.00 MiB]
PV /dev/sdb1 lvm2 [500.00 MiB]
PV /dev/sdb3 lvm2 [500.00 MiB]
[root@localhost ~]#
删除物理卷
[root@localhost ~]# pvremove /dev/sdb2 #删除物理卷/dev/sdb2
Labels on physical volume "/dev/sdb2" successfully wiped
2,创建卷组,命令参数
--------------------------创建-------------------------
-s:可设置卷组上的物理卷的PE大小
[root@localhost ~]# vgcreate vg100 /dev/sdb1 /dev/sdb2 #创建卷组"vg100"
Volume group "vg1000" successfully created
--------------------------删除-------------------------
vgremove命令用于用户删除LVM卷组。当要删除的卷组上已经创建了逻辑卷时,vgremove命令需要进行确认删除
-f:强制删除
[root@localhost ~]# vgremove vg1000 #删除LVM卷组vg100
"vg1000" Volume group "vg1000" successfully removed
--------------------------添加-------------------------
vgextend命令用于动态扩展LVM卷组,向卷组中添加物理卷来增加卷组的容量。
[root@localhost ~]# vgextend vg200 /dev/sdb2 #将物理卷"/dev/sdb2"加入卷组"vg200"
Volume group "vg2000" successfully extended
--------------------------调整删除-------------------------
vgreduce命令通过删除LVM卷组中的物理卷来减少卷组容量。不能删除LVM卷组中剩余的最后一个物理卷。
-a:如果命令行中没有指定要删除的物理卷,则删除所有的空物理卷;
--removemissing:删除卷组中丢失的物理卷,使卷组恢复正常状态。
[root@localhost ~]# vgreduce vg200 /dev/sdb2 ##将物理卷"/dev/sdb2"从卷组"vg200"中删除
Removed "/dev/sdb2" from volume group "vg2000"
3,逻辑卷命令参数
--------------------------创建-------------------------
lvcreate命令用于创建LVM的逻辑卷。逻辑卷是创建在卷组之上的。逻辑卷对应的设备文件保存在卷组目录下-L
:指定逻辑卷的大小,单位为KMGT
-l
:指定百分比创建,如50%free表示vg
卷组的一半空间、100%free
所有剩下的。-n
:指定逻辑卷的名称
[root@localhost ~]# lvcreate -L 200M vg100 #创建大小为200M的逻辑卷(vg100为卷组名)或者 # lvcreate -l 50%free /dev/vg1000/lvol0 Logical volume "lvol0" created --------------------------删除------------------------- lvremove命令用于删除指定LVM逻辑卷。如果逻辑卷已经使用mount命令加载,必须使用umount命令卸载后,逻辑卷方可被删除
-f:强制删除。
[root@localhost ~]# lvremove /dev/vg100/lvol0 #删除逻辑卷"lvol0" Do you really want to remove active logical volume "lvol0"? [y/n]: y #确认删除
Logical volume "lvol0" successfully removed
--------------------------添加-------------------------
lvextend命令 磁盘管理 lvextend命令用于在线扩展逻辑卷的空间大小,而不中断应用程序对逻辑卷的访问
-L
:指定逻辑卷的大小,单位为KMGT
-l
:指定百分比创建,如50%free表示vg
卷组的一半空间、100%free
所有剩下的。 -n
:指定逻辑卷的名称
[root@localhost ~]# lvextend -L +100M /dev/vg1000/lvol0 #增加100M空间 Extending logical volume lvol0 to 300.00 MB Logical volume lvol0 successfully resized --------------------------调整大小------------------------- lvresize命令用于调整LVM逻辑卷的空间大小,可以增大空间和缩小空间。(不建议使用,自行百度使用方法!!!)
4,格式化,挂载使用
[root@localhost ~]# lsblk ##查看创建的逻辑卷 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sdb 8:16 0 20G 0 disk ├─sdb1 8:17 0 500M 0 part │ └─loa-lvol0 253:2 0 248M 0 lvm ├─sdb2 8:18 0 500M 0 part ├─sdb3 8:19 0 500M 0 part └─sdb4 8:20 0 18.5G 0 part
格式化硬盘并且挂载使用
##硬盘格式
mkfs.ext2 mkfs.ext3 mkfs.ext4 mkfs.xfs 等。。。
[root@localhost ~]# mkfs.ext4 /dev/mapper/loa-lvol0 #逻辑卷载/dev/mapper/这个目录下
centos-root centos-swap control loa-lvol0
mount /dev/mapper/loa-lvol0 /opt/ 将loa-lvol0挂载到opt下
自行百度修改/etc/fstab文件设设置自动挂载,建议使用uuid挂载(blkid查看硬盘id)