linux磁盘管理:添加磁盘,lvm分区扩容

àì夳堔傛蜴生んèń 2022-03-22 09:00 477阅读 0赞

在vmware,virtualbox等虚拟化软件中,可以模拟硬盘扩展, 当空间不足时,可以添加一块新的硬盘,然后分区,格式化,并且挂载使用

文章目录

  • 1, 硬盘分区, 格式化, 挂载
  • 2, 硬盘添加到LVM,分区扩容
    • a, 创建lvm新分区
    • b, 扩容lvm已有分区
    • c, lvm 缩容

1, 硬盘分区, 格式化, 挂载

  1. [root@s101 ~]# history
  2. 739 fdisk -l #查看新增的硬盘
  3. 740 fdisk /dev/sdb #分区 ,p ,1 , w
  4. 741 fdisk -l # 查看是否分区成功: /dev/sdb1
  5. 742 mkfs.ext4 /dev/sdb1 # 格式化分区
  6. 743 mkdir /mysdb #创建目录,挂载到该分区
  7. 744 mount /dev/sdb1 /mysdb #可设置开机挂载: echo "/dev/sdb1 /mysdb ext4 defaults 0 0" >> /etc/fstab

2, 硬盘添加到LVM,分区扩容

现在的REHL系列的(cent6, cent7)系统默认使用LVM管理分区,此时可以方便的进行分区扩容缩容操作:解决已有的分区磁盘不够用
在这里插入图片描述

a, 创建lvm新分区

  1. #1,在磁盘分区上创建pv(可选)
  2. pvcreate /dev/sdb1
  3. pvcreate /dev/sdb2
  4. #2,在pv或磁盘上面创建vg
  5. vgcreate vg1 /dev/sdb1 /dev/sdb2
  6. #3,从vg里面划分一部分空间,命名为lv1
  7. lvcreate -l 100%FREE -n vg1_lv1 vg1
  8. #4,格式化该lv空间
  9. mkfs.ext4 /dev/vg1/vg1_lv1
  10. #5,挂载使用

b, 扩容lvm已有分区

  • 需求: 现有的/: 14G ,  新增磁盘sdc:8G , sdd:8G , 如何扩容/分区?
  • 扩容vg:vgextend vgname /dev/sdc
  • 扩容lv:
    扩容20G: lvextend -L +20G /dev/cl/root
    扩容全部空闲磁盘:lvextend -l +100%FREE /dev/mapper/cl-root
  • 重新识别文件系统大小:
    ext4文件系统:resize2fs -f /
    xfs文件系统:xfs_growfs /

    [root@cent8 ~]# df -h #现有的磁盘分区大小 (/: 14G )
    Filesystem Size Used Avail Use% Mounted on
    devtmpfs 396M 0 396M 0% /dev
    tmpfs 411M 0 411M 0% /dev/shm
    tmpfs 411M 6.0M 405M 2% /run
    tmpfs 411M 0 411M 0% /sys/fs/cgroup
    /dev/mapper/cl-root 14G 3.9G 9.6G 29% /
    /dev/sda1 976M 133M 777M 15% /boot
    tmpfs 83M 4.0K 83M 1% /run/user/0

    [root@cent8 ~]# lsblk    #新增磁盘sdc:8G , sdd:8G
    NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
    sda 8:0 0 8G 0 disk
    |-sda1 8:1 0 1G 0 part /boot
    -sda2 8:2 0 7G 0 part |-cl-root 253:0 0 13.4G 0 lvm /-cl-swap 253:1 0 1.6G 0 lvm [SWAP]
    sdb 8:16 0 8G 0 disk
    -sdb1 8:17 0 8G 0 part-cl-root 253:0 0 13.4G 0 lvm /
    sdc 8:32 0 8G 0 disk
    sdd 8:48 0 8G 0 disk

  • 根分区扩容: (vg扩容: 添加pv —> lv扩容)

    ################1, 查看现有的vg, 扩容该vg

    [root@cent8 ~]# vgs
    VG #PV #LV #SN Attr VSize VFree
    cl 2 2 0 wz—n- 14.99g 0

    从上面的vgs 命令结果可知: 该vg 没有可用空闲资源,所以需要添加额外的磁盘来扩容

    [root@cent8 ~]# vgextend cl /dev/sdc #(vgextend自动在该磁盘创建pv)
    Volume group “cl” successfully extended

    ################2, 查看对应的分区映射的lv, 扩容该lv (扩容到指定大小)

    从上面的df -h 命令结果可知: /分区 ————映射块设备为——-> /dev/mapper/cl-root

    从上面的lsblk 命令结果可知: 映射块设备/dev/mapper/cl-root  ——-包含两个pv—-> sda1, sdb1

    [root@cent8 ~]# man lvextend
    ………….

    1. lvextend -L|--size [+]Size[m|UNIT] LV
    2. [ -l|--extents [+]Number[PERCENT] ]
    3. [ -r|--resizefs ]
    4. [ -i|--stripes Number ]
    5. [ -I|--stripesize Size[k|UNIT] ]
    6. [ --poolmetadatasize [+]Size[m|UNIT] ]
    7. [ COMMON_OPTIONS ]
    8. [ PV ... ]

    EXAMPLES

    1. Extend the size of an LV by 54MiB, using a specific PV.
    2. lvextend -L +54 vg01/lvol10 /dev/sdk3
    3. Extend the size of an LV by the amount of free space on PV /dev/sdk3.
    4. This is equivalent to specifying "-l +100%PVS" on the command line.
    5. lvextend vg01/lvol01 /dev/sdk3

    [root@cent8 ~]# lvextend -L 20G /dev/cl/root #扩容指定大小

    1. # lvextend -l +100%FREE /dev/mapper/cl-root #扩容剩余全部空间

    Size of logical volume cl/root changed from 13.39 GiB (3428 extents) to 20.00 GiB (5120 extents).
    Logical volume cl/root successfully resized.

    [root@cent8 ~]# df -hT
    Filesystem Type Size Used Avail Use% Mounted on
    devtmpfs devtmpfs 396M 0 396M 0% /dev
    tmpfs tmpfs 411M 0 411M 0% /dev/shm
    tmpfs tmpfs 411M 6.0M 405M 2% /run
    tmpfs tmpfs 411M 0 411M 0% /sys/fs/cgroup
    /dev/mapper/cl-root xfs 14G 3.9G 9.6G 29% /
    /dev/sda1 ext4 976M 133M 777M 15% /boot
    tmpfs tmpfs 83M 4.0K 83M 1% /run/user/0

    ext4/ext3 文件系统:扩容文件系统 [ resize2fs -f / ]

    [root@cent8 ~]# xfs_growfs /
    meta-data=/dev/mapper/cl-root isize=512 agcount=4, agsize=877568 blks

    1. = sectsz=512 attr=2, projid32bit=1
    2. = crc=1 finobt=1, sparse=1, rmapbt=0
    3. = reflink=1

    data = bsize=4096 blocks=3510272, imaxpct=25

    1. = sunit=0 swidth=0 blks

    naming =version 2 bsize=4096 ascii-ci=0, ftype=1
    log =internal log bsize=4096 blocks=2560, version=2

    1. = sectsz=512 sunit=0 blks, lazy-count=1

    realtime =none extsz=4096 blocks=0, rtextents=0
    data blocks changed from 3510272 to 5242880

    [root@cent8 ~]# df -h
    Filesystem Size Used Avail Use% Mounted on
    devtmpfs 396M 0 396M 0% /dev
    tmpfs 411M 0 411M 0% /dev/shm
    tmpfs 411M 6.0M 405M 2% /run
    tmpfs 411M 0 411M 0% /sys/fs/cgroup
    /dev/mapper/cl-root 20G 3.9G 17G 20% /
    /dev/sda1 976M 133M 777M 15% /boot
    tmpfs 83M 4.0K 83M 1% /run/user/0

c, lvm 缩容

  1. ################## ext4 lvm 缩容 ##################
  2. #卸载文件系统,并检查逻辑卷,然后缩容逻辑卷
  3. umount /data
  4. e2fsck -f /dev/mapper/vg1-lvol0
  5. resize2fs /dev/mapper/vg1-lvol0 1g
  6. #vg移除pv, 最后删除pv
  7. vgreduce vg1 /dev/sdc
  8. pvremove /dev/sdc
  9. ################## xfs lvm 缩容 ##################
  10. #缩容逻辑卷, 重新识别xfs文件系统: lvreduce, lvresize
  11. lvresize -L 3g /dev/mapper/vg1-lvol1
  12. xfs_growfs /dev/mapper/vg1-lvol1 #xfs文件系统需要执行,需要先挂载
  13. df -h #缩容成功
  14. #vg移除pv, 最后删除pv
  15. vgreduce vg1 /dev/sdc
  16. pvremove /dev/sdc

发表评论

表情:
评论列表 (有 0 条评论,477人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Win7 扩容磁盘分区

    1.计算机->管理->磁盘管理,磁盘颜色代表意义 主分区:深蓝色;扩展分区 :绿色的框;逻辑分区:浅蓝色的分区;可用空间:绿色分区 ![SouthEast][] 2