- A+
1. LVM逻辑卷图解
2. LVM逻辑卷管理相关命令
任务 |
PV阶段 |
VG阶段 |
LV阶段 |
搜寻(scan) |
pvscan |
vgscan |
lvscan |
创建(create) |
pvcreate |
vgcreate |
lvcreate |
列出(display) |
pvdisplay |
vgdisplay |
lvdisplay |
添加(extend) |
|
vgextend |
lvextend(lvresize) |
减少(reduce) |
|
vgreduce |
lvreduce(lvresize) |
删除(remove) |
pvremove |
vgremove |
lvremove |
改变容量(resize) |
|
|
lvresize |
改变属性(attnbute) |
pvchange |
vgchange |
lvchange |
3. LVM操作实践
3.1 添加磁盘后将其指定为物理卷
在当前服务器只有一块磁盘的情况下添加两块磁盘sdb和sdc
[root@beita /]# pvcreate /dev/sdb #<== 首先加入新磁盘盘之后将该盘做成物理卷 Physical volume "/dev/sdb" successfully created [root@beita /]# pvcreate /dev/sdc #<== 将第二块盘加入物理卷 Physical volume "/dev/sdc" successfully created [root@beita /]# pvdisplay #<== 查看当前的物理卷 "/dev/sdb" is a new physical volume of "1.00 GiB" --- NEW Physical volume --- PV Name /dev/sdb #<== 物理卷 VG Name PV Size 1.00 GiB #<== 物理卷(PV)大小为1GB Allocatable NO PE Size 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID 1lc5e5-B0lH-qloQ-nYUx-rkem-MVbR-GeIevc "/dev/sdc" is a new physical volume of "2.00 GiB" --- NEW Physical volume --- PV Name /dev/sdc #<== 物理卷 VG Name PV Size 2.00 GiB #<== 物理卷(PV)大小为2GB Allocatable NO PE Size 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID olYdeG-ZHXd-aUZu-34Yx-wPdg-T6RY-hxzPP0 #[root@beita /]# pvremove /dev/sdb #<== 删除指定物理卷返利命令(此处忽略)
3.2 指定完以上两块物理卷,然后加入卷组
说明:卷组名字自定义,但是要注意相关的命令用法
[root@beita /]# vgcreate vg_group /dev/sdb /dev/sdc #<== 创建卷组,将物理卷加入该卷组(卷组名字可随意) Volume group "vg_group" successfully created #<== 成功创建 [root@beita /]# vgdisplay #<== 查看卷组 --- Volume group --- VG Name vg_group #<== 卷组创建成功 System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 2 Act PV 2 VG Size 2.99 GiB #<== 卷组大小是所拥有的物理卷之和 PE Size 4.00 MiB Total PE 766 Alloc PE / Size 0 / 0 Free PE / Size 766 / 2.99 GiB VG UUID FRwIi8-yIOg-28CI-zGpI-v73I-sjAb-t8tDKx
3.3 卷组完成后开始分逻辑卷
[root@beita /]# lvcreate -L 2G -n lv_data vg_group #<== 卷组分好之后创建第一个逻辑卷(也可只创建一个)命令:lvcreate; -L参数指定大小;-n指定逻辑卷名称;最后加卷组。 Logical volume "lv_data" created. #<== 逻辑卷创建成功 [root@beita /]# lvcreate -L 0.99 -n lv2_data vg_group #<== 用剩下空间创建第二个逻辑卷 Rounding up size to full physical extent 4.00 MiB Logical volume "lv2_data" created. #<== 超出物理范围4M,但是创建成功了(是把剩下的空间都给这个逻辑卷了) [root@beita /]# ls /dev/vg_group/ #<== 以上创建的实际就是/dev下面创建一个设备磁盘 lv2_data lv_data [root@beita /]# ll /dev/vg_group/ total 0 lrwxrwxrwx 1 root root 7 Jun 17 15:21 lv2_data -> ../dm-1 lrwxrwxrwx 1 root root 7 Jun 17 15:17 lv_data -> ../dm-0
3.4 格式化
创建完之后怎么样才能用该逻辑卷呢?当然是格式化了!!!
[root@beita /]# mkfs.ext4 /dev/vg_group/lv_data #<== 格式化磁盘为ext4文件系统 mke2fs 1.41.12 (17-May-2010) Filesystem label= -----------------------------省略很多内容------------------ 180 days, whichever comes first. Use tune2fs -c or -i to override. [root@beita /]# mkfs.ext4 /dev/vg_group/lv2_data -------------------------省略很多内容------------------ Maximum filesystem blocks=4194304
3.5 使用tune2fs 命令使fsck自检查系统关闭
[root@beita /]# tune2fs -c -1 /dev/vg_group/lv_data #<== 设置第一块磁盘fsck自检关闭 tune2fs 1.41.12 (17-May-2010) Setting maximal mount count to -1 [root@beita /]# tune2fs -c -1 /dev/vg_group/lv2_data #<== 设置第一块磁盘fsck自检关闭 tune2fs 1.41.12 (17-May-2010) Setting maximal mount count to -1
3.6 挂载投入使用
提示:以下均演示一块磁盘
[root@beita /]# mount /dev/vg_group/lv_data /mnt #<== 挂载设备到/mnt下 [root@beita /]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 6.9G 1.4G 5.1G 22% / tmpfs 491M 0 491M 0% /dev/shm /dev/sda1 190M 36M 145M 20% /boot /dev/mapper/vg_group-lv_data 2.0G 3.0M 1.9G 1% /mnt #<== 挂载成功
3.7 动态扩容
[root@beita /]# pvcreate /dev/sdd #<== 先将/dev/sdd指定设为物理卷 Physical volume "/dev/sdd" successfully created [root@beita /]# vgextend vg_group /dev/sdd #<== 将物理卷扩容到卷组 Volume group "vg_group" successfully extended #<== 扩容成功 [root@beita /]# vgdisplay #<== 查看卷组扩容后状态 --- Volume group --- VG Name vg_group System ID Format lvm2 Metadata Areas 3 Metadata Sequence No 4 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 1 Max PV 0 Cur PV 3 Act PV 3 VG Size 3.99 GiB #<== 可见由原来的2.99G变为现在的3.99G PE Size 4.00 MiB Total PE 1021 Alloc PE / Size 513 / 2.00 GiB Free PE / Size 508 / 1.98 GiB VG UUID FRwIi8-yIOg-28CI-zGpI-v73I-sjAb-t8tDKx [root@beita /]# lvextend -L +0.99G /dev/vg_group/lv_data #<== 现在给逻辑卷扩容,使用命令lvextend –L 指定扩容大小,因为这里是扩容,所以现在加0.99G(因为容量在其中有一定的损耗,所以要比实际的小一点) Rounding size to boundary between physical extents: 1016.00 MiB Size of logical volume vg_group/lv_data changed from 2.00 GiB (512 extents) to 2.99 GiB (766 extents). Logical volume lv_data successfully resized [root@beita /]# df –h #<== 查看设备容量是否成功扩容 Filesystem Size Used Avail Use% Mounted on /dev/sda3 6.9G 1.4G 5.1G 22% / tmpfs 491M 0 491M 0% /dev/shm /dev/sda1 190M 36M 145M 20% /boot /dev/mapper/vg_group-lv_data 2.0G 3.0M 1.9G 1% /mnt #<== 现在还是2个G的容量,现在还没有成功扩容,是因为还没有生效,如果想让其生效就必须重启或者使用相关的命令====》resize2fs 接设备 [root@beita /]# resize2fs /dev/vg_group/lv_data #<== 该命令是lvm里面配套的命令 resize2fs 1.41.12 (17-May-2010) Filesystem at /dev/vg_group/lv_data is mounted on /mnt; on-line resizing required old desc_blocks = 1, new_desc_blocks = 1 Performing an on-line resize of /dev/vg_group/lv_data to 784384 (4k) blocks. The filesystem on /dev/vg_group/lv_data is now 784384 blocks long. [root@beita /]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 6.9G 1.4G 5.1G 22% / tmpfs 491M 0 491M 0% /dev/shm /dev/sda1 190M 36M 145M 20% /boot /dev/mapper/vg_group-lv_data 2.9G 3.0M 2.8G 1% /mnt #<== 成功扩容