热扩容LVM形式的/(根)分区(无损增大、缩小LVM分区)
警告!
本文为虚拟机环境,生产环境请务必在操作前优先备份重要数据!
再有,请确保所需扩充的分区为非进程占用分区
实验背景:当时规划系统分区时/(根)目录分配过小
实验目的 : 无损增大/(根)分区容量
方案:
一、所在卷组(vg)有空闲,直接将空闲空间分配给/(根)挂载的逻辑卷(LV);
二、所在卷组(vg)已全部分配,无空闲空间,可系统增加一块盘,做物理卷(pv)加入到卷组(vg),达到扩充卷组空间,再将空闲的卷组空间划分给/(根)挂载的逻辑卷(LV);
三、所在卷组(VG)已全部分配,无空闲空间,VG下有其他LV有多余空间可分配出来。将这部分空间转移到/(根)下。
下面实验就是用方案三做演示:
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-可爱的分隔符=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
可以看到/已经达到了75%,我们要将test下的空间转移一部分到/下,下面详细介绍从lv_test分区下取出10G的空间添加到lv_root分区上去。

查看卷组和逻辑卷
[root@swnode1 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv_root vg_swnode1 -wi-ao---- 21.89g #/分区所在lv的空间
lv_test vg_swnode1 -wi-ao---- 19.99g #/test所在lv的空间
重新设定lv_test的大小(先调整文件系统大小)
[root@swnode1 ~]# resize2fs -p /dev/mapper/vg_swnode1-lv_test 10G //-p查看进度

提示先进行此命令检查
[root@swnode1 ~]# e2fsck -f /dev/mapper/vg_swnode1-lv_test

重新执行下文件系统缩容

mount下查看缩减后

将逻辑卷lv_test也减少到文件系统大小
[root@swnode1 ~]# lvreduce -L 9.8G /dev/mapper/vg_swnode1-lv_test

2、增加VG下可用空间到根目录(注:扩容时顺序和缩容相反,先扩lv再文件系统)
查看vg的空闲空间
[root@swnode1 ~]# vgdisplay

将空闲空间划分到/
[root@swnode1 ~]# lvextend -L +10.19G /dev/vg_swnode1/lv_root

现在设定分区文件系统大小
[root@swnode1 ~]# resize2fs -p /dev/vg_swnode1/lv_root

再次查看扩容结果

可能遇到的问题
1、在卸载/test目录的时候失败
可先执行如下fuser命令解除磁盘占用,然后再umount即可:
2、在设定lv_root的大小时,不要把Free PE / Size的空间全部都用上,这很可能会出现Free PE空间不足的现象,建议保留一点Free PE的空间。
3、重启后进入不到系统,提示文件损坏
热扩容LVM形式的/(根)分区(无损增大、缩小LVM分区)的更多相关文章
- Docker容器学习梳理 - 容器硬盘热扩容
前面已介绍了docker很多知识点的操作记录,今天这里梳理下docker容器空间扩展的操作.默认情况下,物理机下创建的docker容器的空间是10G(虚拟机下创建的docker容器空间就是虚拟机的空间 ...
- clickhouse高可用-节点宕机数据一致性方案-热扩容
1. 集群节点及服务分配 说明: 1.1. 在每个节点上启动两个clickhouse服务(后面会详细介绍如何操作这一步),一个数据分片,一个数据备份,为了确保宕机数据一致性,数据分片和数据备份不能同一 ...
- 图解MBR分区无损转换GPT分区+UEFI引导安装WIN8.1
确定你的主板支持UEFI引导.1,前期准备,WIN8.1原版系统一份(坛子里很多,自己下载个),U盘2个其中大于4G一个(最好 准备两个U盘)2,大家都知道WIN8系统只支持GPT分区,传统的MBR分 ...
- Linux上把新磁盘扩展到已有分区中(基于LVM)
0.在不重启服务器的前提下找到新加的磁盘 --查看主机总线号 ls /sys/class/scsi_host/ --根据查询结果生成刷新磁盘语句 echo "- - -" > ...
- Linux磁盘分区(四)之分区大小调整
Linux磁盘分区(四)之分区大小调整在学习调整分区大小之前,先了解linx分区的概念.参考如下博客:[1]linux 分区 物理卷 逻辑卷 https://www.cnblogs.com/liuch ...
- 打算安装个Ubuntu双系统,遇到了些基本概念问题(主分区、活动分区、扩展分区、逻辑分区)
和运维的同事聊天,了解到: 1.XP系统时代(老的硬盘分区形式和分区表),最多允许建4个“主分区”,为了解决这个限制,就有了“扩展分区”的概念: 2.在“扩展分区”上,我们就可以建很多的“逻辑分区”, ...
- Atitit 分区后的查询 mysql分区记录的流程与原理
Atitit 分区后的查询 mysql分区记录的流程与原理 1.1.1. ibd是MySQL数据文件.索引文件1 1.2. 已经又数据了,如何分区? 给已有的表加上分区 ]1 1.3. 分成4个区, ...
- UEFI+GPT模式下的Windows系统中分区结构和默认分区大小及硬盘整数分区研究
内容摘要:本文主要讨论和分析在UEFI+GPT模式下的Windows系统(主要是最新的Win10X64)中默认的分区结构和默认的分区大小,硬盘整数分区.4K对齐.起始扇区.恢复分区.ESP分区.MSR ...
- Sql Server 分区之后增加新的分区
随着时间的推移,你可能会希望为已分区的表添加额外的分区(例如,可以为每一个新年创建一个新的分区).要增加一个新的分区,可以使用ALTER PARTITION SCHEME和ALTER PARTITIO ...
随机推荐
- ProxySQL(读写分离)部署
proxySQL是MySQL的中间件产品,是灵活强大的代理层,实现读写分离,支持Query路由功能,支持动态指定某个SQL进行缓存,支持动态加载配置,故障切换和一些SQL 过滤功能 环境: 192.1 ...
- Lambda表达式语法
基础语法:‘->’Lambda操作符* 左侧:Lambda表达式的参数列表 对应接口中方法中的参数列表中的参数(比如nice1中MyPredict这个接口中的方法)* 右侧:Lambda表达式中 ...
- CSS3实现GIF动画
来自 dribbble 某位大师的作品,GIF图中一个小女孩抱着一只猫在跑步,非常可爱,动作轻巧,过渡自然.DEMO下载 回到项目需求,要实现类似上图卡通人物跑步动画,分析结果如下: 1.跑步动画可以 ...
- github上删除一个项目或者reposity
1,点击github的头像,选择如下操作. 2.选择要删除的reposity 3.选择settings 4.复制reposity名字,然后下滑鼠标到底部,选择delete this reposity ...
- ASP.NET MVC Action返回结果类型【转】
ASP.NET MVC 目前一共提供了以下几种Action返回结果类型: 1.ActionResult(base) 2.ContentResult 3.EmptyResult 4.HttpUnauth ...
- Chess (SG + 状态压缩预处理)
#include<bits/stdc++.h> #define bit(t) (1 << t) using namespace std; <<; ;//k是集合s的 ...
- python glob 模块
glob模块用来查找文件目录和文件,可以和常用的find功能进行类比.glob支持*?[]这三种通配符.返回的数据类型是list.常见的两个方法有glob.glob()和glob.iglob(),ig ...
- C# 复制值类型的变量和类
C#大多数基元类型包括int.float.double.和char等,注意这里不包括string,这些都是值类型.将变量声明为值类型,编译器会生成代码来分配足以容纳这个值得内存块.编译器分配内存的时候 ...
- golang学习笔记15 golang用strings.Split切割字符串
golang用strings.Split切割字符串 kv := strings.Split(authString, " ") if len(kv) != 2 || kv[0] != ...
- centos 安装arcgis server 10.1
1.创建新用户,不要在root下面直接安装 [root@localhost ~]# groupadd esri //创建esri组 [root@localhost ~]# useradd ags -g ...