02.Linux系统磁盘管理高级篇

  1. Linux系统磁盘进阶


物理卷(PV):把常规的块设备(硬盘,分区等可以读写数据的设备)通过pvcreate命令对其进行初始化,就成了物理卷

卷组(VG):把多个物理卷的容量组成一个逻辑整体,可以从里面灵活分配容量

逻辑卷(LV):从卷组中划分部分空间成为一个可以读写数据的逻辑单元。需要对其格式化然后挂载使用

  1. 1.部署逻辑卷

    创建过程:

    1.创建物理卷, 添加物理磁盘
    2.
    创建卷组, 添加物理卷加入到该卷组
    3.
    在卷组中划分逻辑卷

    //1.准备物理磁盘

    [root@lxgyw~]# lsblk |grep “sd[bcd]”

    sdb 8:16
    0
    1G 0 disk

    sdc 8:32
    0
    1G 0 disk

    sdd 8:48
    0
    1G 0 disk

     

    //1.将磁盘加入pv

    [root@linux-node1 ~]# pvcreate /dev/sdb

    Physical volume “/dev/sdb” successfully created.

    //检查pv创建情况

    [root@linux-node1 ~]# pvs

    PV VG Fmt Attr PSize PFree

    /dev/sdb lvm2 — 1.00g 1.00g

     

    //2.创建名为datavg的卷组

    [root@linux-node1 ~]# vgcreate datavg /dev/sdb

    Volume group “datavg” successfully created

    //检查卷组

    [root@linux-node1 ~]# vgs

    VG #PV #LV #SN Attr VSize VFree

    datavg 1
    0
    0 wz–n- 1020.00m 1020.00m

     

    //3.创建逻辑卷, 分配名称, 以及大小, 指定卷组

    [root@linux-node1 ~]# lvcreate -L 100M -n lv1 datavg

    Logical volume “datalv1” created.

    //检查逻辑卷

    [root@linux-node1 ~]# lvscan

    ACTIVE ‘/dev/datavg/lv1’ [100.00 MiB] inherit

     

    //4.格式化文件系统

    [root@linux-node1 ~]# mkfs.xfs /dev/datavg/lv1

     

    //挂载并使用

    [root@linux-node1 ~]# mkdir /lv1

    [root@linux-node1 ~]# mount /dev/datavg/lv1 /lv1/

    [root@linux-node1 ~]# df -h

    Filesystem Size Used Avail Use% Mounted on


    /dev/mapper/datavg-lv1 97M 5.2M 92M 6% /lv1

  2. 2.卷组池管理
    1. 新买的磁盘

    扩展卷组VG, 扩大VG卷组

    //1.新硬盘加入pv

    [root@lxgyw~]# pvcreate /dev/sdc

     

    2.使用vgextend扩展

    [root@lxgyw~]# vgextend datavg /dev/sdc

    Volume group
    “datavg” successfully extended

    移除卷组VG, 移除vg组中某一块硬盘

    [root@lxgyw~]# lvremove -f datavg /dev/sdb

    [root@lxgyw~]# vgreduce datavg /dev/sdb

    Removed “/dev/sdb”
    from volume group
    “datavg”

    数据迁移卷组VG, 同一卷组的磁盘才可以进行在线迁移

    //1.检查当前逻辑卷VGPV使用情况

    [root@lxgyw~]# pvs

    PV VG Fmt Attr PSize PFree

    /dev/sdb vg1 lvm2 a — 2.00g 1.76g

    /dev/sdc vg1 lvm2 a — 2.00g 2.00g

     

    //2.pvmove在线数据迁移至其他pv

    [root@lxgyw~]# pvmove /dev/sdb

    /dev/sdb: Moved: 41.33%

    /dev/sdb: Moved: 100.00%

    //2./dev/sdc中的数据迁移至/dev/sdd

    [root@lxgyw~]# pvmove /dev/sdc /dev/sdd

    //3.检查是否将sdb数据迁移至sdc

    [root@lxgyw~]# pvs

    PV VG Fmt Attr PSize PFree

    /dev/sdb vg1 lvm2 a — 2.00g 2.00g

    /dev/sdc vg1 lvm2 a — 2.00g 1.76g

  3. 3.扩容逻辑卷

    逻辑卷的扩展, 取决于vg卷中剩余多少容量, 扩展容量不能超过卷组VG

    [root@server0 ~]# vgs

    VG #PV #LV #SN Attr VSize VFree

    vg1 2
    2
    0 wz –n- 1.88g 1.00g

     

    1.扩展lv逻辑卷

    //增加800M分配给逻辑卷 {注意: 800M +800M 不一样}

    [root@lxgyw~]# lvextend -L +800M /dev/datavg/lv1

    //分配磁盘池中多少百分比给逻辑卷

    [root@lxgyw~]# lvextend -l +50%FREE /dev/datavg/lv1

     

    2.扩展fs文件系统

    //xfs扩容

    [root@server0 ~]# xfs_growfs /dev/datavg/lv1

    //ext扩容

    [root@server0 ~]# resize2fs /dev/datavg/lv1

    ext4文件系统的逻辑卷裁剪容量

    首先自己创建一个1G的逻辑卷作为裁剪的对象

    # lvcreate -n uplooking -L 1G finance

    # mkfs.ext4 /dev/finance/uplooking

     

    # mkdir /finance/uplooking

    # mount /dev/finance/uplooking /finance/uplooking/

    # cp /etc/host* /finance/uplooking/

     

     

    1、如果已经挂载,必须先卸载

    # umount /dev/finance/uplooking

     

    2、裁剪容量,必须是先检测文件系统

    # fsck -f /dev/finance/uplooking

    # resize2fs /dev/finance/uplooking 512M

     

    3、调整完毕后采取裁剪逻辑卷容量

    # lvreduce -L 512M /dev/finance/uplooking

    WARNING: Reducing active logical volume to 512.00 MiB

    THIS MAY DESTROY YOUR DATA (filesystem etc.)

    Do you really want to reduce uplooking? [y/n]: y

     

    4、强烈建议裁剪后,再次检测文件系统

    # fsck -f /dev/finance/uplooking

     

     

    5、挂载测试

    如果能够挂载,一般说明裁剪成功,文件系统没有损坏

     

    # mount /dev/finance/uplooking /mnt


    /dev/mapper/finance-uplooking 472M 1.6M 435M 1% /mnt 而且文件系统容量被刷新了

  4. 4.缩小逻辑卷

     

     

     

     

     

     

  5. 5.删除逻辑卷

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

        

标签

发表评论