热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

lvextend逻辑卷扩容(xfs_growfs、resize2fs配合扩展文件系统)

lvextend命令用于逻辑卷在线扩容,也就是说lvextend扩容是不需要停机的,应用服务也不需要关闭,其语法格式如下:

lvextend 命令用于逻辑卷在线扩容,也就是说lvextend扩容是不需要停机的,应用服务也不需要关闭,其语法格式如下:

lvextend [参数] LogicalVolume[Path] [ PhysicalVolumePath… ]

常用参数:
-l + :指定逻辑卷的LE个数,如 -l +200
-L + :表示增加多少空间,如 -L +15G ,单位有bBsSkKmMgGtTpPeE
-l +100%FREE :表示增加vg的全部可用空间

PS:lvextend 扩展后只是扩展了lv的大小,而此时文件系统并未感知到,所有还需要使用xfs_growfs、resize2fs等命令来扩展文件系统,xfs_growf命令是扩展xfs文件系统,resize2fs是扩展ext4文件系统。

演示示例:

方法一、
[root@localhost lv_data]# lvextend -L +1G /dev/iflytek/lv_data #逻辑卷扩容,增加1个G的空间Size of logical volume iflytek/lv_data changed from 6.00 GiB (1536 extents) to 7.00 GiB (1792 extents).Logical volume iflytek/lv_data successfully resized.
[root@localhost mapper]# lvsLV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertroot cl -wi-ao---- 9.79g swap cl -wi-ao---- 1.20g lv_data iflytek -wi-ao---- 7.00g #发现lv_data其实增大到7G了
[root@localhost lv_data]# df -Th #发现/dev/mapper/iflytek-lv_data逻辑卷还是6G,这说明即使lv增大了但文件系统并未感知到lv增大了
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/cl-root xfs 9.8G 1021M 8.8G 11% /
devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 1.9G 8.6M 1.9G 1% /run
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 139M 876M 14% /boot
tmpfs tmpfs 378M 0 378M 0% /run/user/0
/dev/mapper/iflytek-lv_data xfs 6.0G 33M 6.0G 1% /lv_data
[root@localhost lv_data]#
#哎呀,df -Th 看到的怎么是/dev/mapper/iflytek-lv_data,我们的逻辑卷文件明明是/dev/iflytek/lv_data的呀,怎么回事?
#原来这是lvm的mapper机制决定的,当我们lvcreate一个逻辑卷的时候,Linux会新建两个软链接文件,如/dev/PVName/PVName和/dev/mapper/PVName-LVName,而这2个文件都是指向/dev/dm-X 块文件的,所有,当我们使用df -h看到的/dev/mapper/iflytek-lv_data其实是和/dev/iflytek/lv_data一样的,不管我们使用哪个都是可以的。如果使用xfs文件系统xfs_growfs /dev/iflytek/lv_data
如果使用ext4文件系统resize2fs /dev/root_vg/root[root@localhost mapper]# xfs_growfs /dev/iflytek/lv_data #使用xfs_growfs命令扩展xfs文件系统,如果是ext4文件系统,则使用resize2fs /dev/iflytek/lv_data
meta-data=/dev/mapper/iflytek-lv_data isize=512 agcount=4, agsize=393216 blks= sectsz=512 attr=2, projid32bit=1= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=1572864, imaxpct=25= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 1572864 to 1835008
[root@localhost mapper]# df -Th #检查
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/cl-root xfs 9.8G 1021M 8.8G 11% /
devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 1.9G 8.6M 1.9G 1% /run
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 139M 876M 14% /boot
tmpfs tmpfs 378M 0 378M 0% /run/user/0
/dev/mapper/iflytek-lv_data xfs 7.0G 33M 7.0G 1% /lv_data #大小其实增大了1G了
[root@localhost mapper]#

方法二、
[root@localhost mapper]# lvextend -l +25 /dev/iflytek/lv_data #增加25个LE就是100MSize of logical volume iflytek/lv_data changed from 7.00 GiB (1792 extents) to 7.10 GiB (1817 extents).Logical volume iflytek/lv_data successfully resized.
[root@localhost mapper]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/cl-root 10258432 1045568 9212864 11% /
devtmpfs 1921808 0 1921808 0% /dev
tmpfs 1932776 0 1932776 0% /dev/shm
tmpfs 1932776 8776 1924000 1% /run
tmpfs 1932776 0 1932776 0% /sys/fs/cgroup
/dev/sda1 1038336 141608 896728 14% /boot
tmpfs 386556 0 386556 0% /run/user/0
/dev/mapper/iflytek-lv_data 7329792 32980 7296812 1% /lv_data #查看容量大小
[root@localhost mapper]# xfs_growfs /dev/iflytek/lv_data #扩展文件系统大小
meta-data=/dev/mapper/iflytek-lv_data isize=512 agcount=5, agsize=393216 blks= sectsz=512 attr=2, projid32bit=1= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=1835008, imaxpct=25= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 1835008 to 1860608 #显示块已经增大了
[root@localhost mapper]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/cl-root 10258432 1045568 9212864 11% /
devtmpfs 1921808 0 1921808 0% /dev
tmpfs 1932776 0 1932776 0% /dev/shm
tmpfs 1932776 8776 1924000 1% /run
tmpfs 1932776 0 1932776 0% /sys/fs/cgroup
/dev/sda1 1038336 141608 896728 14% /boot
tmpfs 386556 0 386556 0% /run/user/0
/dev/mapper/iflytek-lv_data 7432192 32980 7399212 1% /lv_data #空间增大了
[root@localhost mapper]#

方法三、
[root@localhost mapper]# lvs #查看还有多少空间LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertroot cl -wi-ao---- 9.79g swap cl -wi-ao---- 1.20g lv_data iflytek -wi-ao---- 7.10g #还有7.10G
[root@localhost mapper]# lvextend -l +100%FREE /dev/iflytek/lv_data #把vg的全部剩余空间都加给lvSize of logical volume iflytek/lv_data changed from 7.10 GiB (1817 extents) to 13.99 GiB (3582 extents).Logical volume iflytek/lv_data successfully resized.
[root@localhost mapper]# lvs #lv确实增加了LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertroot cl -wi-ao---- 9.79g swap cl -wi-ao---- 1.20g lv_data iflytek -wi-ao---- 13.99g
[root@localhost mapper]# vgs #iflytek卷组显示已经没有剩余空间了 VG #PV #LV #SN Attr VSize VFreecl 1 2 0 wz--n- 11.00g 4.00miflytek 2 1 0 wz--n- 13.99g 0
[root@localhost mapper]# df -Th #此时文件系统还没扩展
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/cl-root xfs 9.8G 1021M 8.8G 11% /
devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 1.9G 8.6M 1.9G 1% /run
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 139M 876M 14% /boot
tmpfs tmpfs 378M 0 378M 0% /run/user/0
/dev/mapper/iflytek-lv_data xfs 7.1G 33M 7.1G 1% /lv_data
[root@localhost mapper]# xfs_growfs /dev/iflytek/lv_data #扩展文件系统大小
meta-data=/dev/mapper/iflytek-lv_data isize=512 agcount=5, agsize=393216 blks= sectsz=512 attr=2, projid32bit=1= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=1860608, imaxpct=25= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 1860608 to 3667968
[root@localhost mapper]# df -Th #文件系统已扩展
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/cl-root xfs 9.8G 1021M 8.8G 11% /
devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 1.9G 8.6M 1.9G 1% /run
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 139M 876M 14% /boot
tmpfs tmpfs 378M 0 378M 0% /run/user/0
/dev/mapper/iflytek-lv_data xfs 14G 33M 14G 1% /lv_data
[root@localhost mapper]#

推荐阅读
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 在Linux系统中,网络配置是至关重要的任务之一。本文详细解析了Firewalld和Netfilter机制,并探讨了iptables的应用。通过使用`ip addr show`命令来查看网卡IP地址(需要安装`iproute`包),当网卡未分配IP地址或处于关闭状态时,可以通过`ip link set`命令进行配置和激活。此外,文章还介绍了如何利用Firewalld和iptables实现网络流量控制和安全策略管理,为系统管理员提供了实用的操作指南。 ... [详细]
  • vsftpd配置(虚拟用户、匿名用户登录)
    一、ftp服务搭建(一)概述1.ftp连接及传输模式(1)控制连接TCP21,用于发送FTP命令信息 ... [详细]
  • vue引入echarts地图的四种方式
    一、vue中引入echart1、安装echarts:npminstallecharts--save2、在main.js文件中引入echarts实例:  Vue.prototype.$echartsecharts3、在需要用到echart图形的vue文件中引入:   importechartsfrom"echarts";4、如果用到map(地图),还 ... [详细]
  • Leetcode学习成长记:天池leetcode基础训练营Task01数组
    前言这是本人第一次参加由Datawhale举办的组队学习活动,这个活动每月一次,之前也一直关注,但未亲身参与过,这次看到活动 ... [详细]
  • 华为捐赠欧拉操作系统,承诺不推商用版
    华为近日宣布将欧拉开源操作系统捐赠给开放原子开源基金会,并承诺不会推出欧拉的商用发行版。此举旨在推动欧拉和鸿蒙操作系统的全场景融合与生态发展。 ... [详细]
  • 包含phppdoerrorcode的词条 ... [详细]
  • 高端存储技术演进与趋势
    本文探讨了高端存储技术的发展趋势,包括松耦合架构、虚拟化、高性能、高安全性和智能化等方面。同时,分析了全闪存阵列和中端存储集群对高端存储市场的冲击,以及高端存储在不同应用场景中的发展趋势。 ... [详细]
  • HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送www方式的数据。HTTP协议采用了请求响应模型。客服端向服务器发送一 ... [详细]
  • 本文介绍了如何通过安装 rpm 包来使用 resize2fs 和 ext2online 工具进行系统文件的扩容。提供了详细的步骤和注意事项。 ... [详细]
  • 在 CentOS 6.4 上安装 QT5 并启动 Qt Creator 时,可能会遇到缺少 GLIBCXX_3.4.15 的问题。这是由于系统中的 libstdc++.so.6 版本过低。本文将详细介绍如何通过更新 GCC 版本来解决这一问题。 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • 本文回顾了作者初次接触Unicode编码时的经历,并详细探讨了ASCII、ANSI、GB2312、UNICODE以及UTF-8和UTF-16编码的区别和应用场景。通过实例分析,帮助读者更好地理解和使用这些编码。 ... [详细]
  • MySQL Decimal 类型的最大值解析及其在数据处理中的应用艺术
    在关系型数据库中,表的设计与SQL语句的编写对性能的影响至关重要,甚至可占到90%以上。本文将重点探讨MySQL中Decimal类型的最大值及其在数据处理中的应用技巧,通过实例分析和优化建议,帮助读者深入理解并掌握这一重要知识点。 ... [详细]
author-avatar
比熊--悉尼
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有