Linux 虚拟机中不重启的情况下加新硬盘及扩展根分区容量
我这个系统是Redhat7.7的系统。磁盘占用比较高,需要扩充空用空间,同时又不能关停服务器,或者服务。所以就需要在虚拟机中不重启的情况下加新硬盘及扩展根分区容量。
首先,看一下我这个虚拟机分区占用情况:

可以看到根目录总空间44G,已使用78%,属于占用比较高的了,对系统运行效率有严重影响。通过虚拟机管理工具添加一块新的磁盘。

我选择的是Thin Provision磁盘置备,与虚拟机存储在同一目录中。

选择虚拟设备节点。

确定添加新磁盘。添加结果:

=============================
显示当前分区
fdisk -l
通常在你在虚拟机中添加一块新硬盘时,你可能会看到新硬盘没有自动加载。这是因为连接到硬盘的SCSI总线需要重新扫描来使得新硬盘可见。这里有一个简单的命令来重新扫描SCSI总线和SCSI设备。
确定主机总线号
ls /sys/class/scsi_host/
结果:
host0 host11 host14 host17 host2 host22 host25 host28 host30 host4 host7
host1 host12 host15 host18 host20 host23 host26 host29 host31 host5 host8
host10 host13 host16 host19 host21 host24 host27 host3 host32 host6 host9

重新扫描SCSI总线来添加设备
for i in $(ls /sys/class/scsi_host/); do echo "- - -" > /sys/class/scsi_host/$i/scan; done

重新显示分区。这时候发现新硬盘已经自动加载了。
fdisk -l

显示文件系统,可以看到根分区的VG是rhel,VL是root,分区类型是xfs
df -Th
/dev/mapper/rhel-root xfs 44G 35G 9.8G 78% /
将/dev/sdb建立为pv
pvcreate /dev/sdb
Physical volume "/dev/sdb" successfully created
由于系统已经有了VG:rhel,这里直接将新建的pv加入到这个VG
vgextend rhel /dev/sdb #Redhat
vgextend centos /dev/sdb #CentOS
Volume group "rhel" successfully extended
给VL:root增加20G的空间
lvextend -L +19G /dev/rhel/root #Redhat
lvextend -l +5120 /dev/centos/root #CentOS
Size of logical volume rhel/root changed from 3.97 GiB (1016 extents) to 8.97 GiB (2296 extents).
Logical volume root successfully resized.
给VL:root增加剩余的空间
lvextend -l +100%FREE /dev/rhel/root #Redhat
lvextend -l +100%FREE /dev/centos/root #CentOS
Size of logical volume rhel/root changed from 8.97 GiB (2296 extents) to 9.00 GiB (2305 extents).
Logical volume root successfully resized.
LV扩容之后需要激活修改的配置
xfs_growfs /dev/rhel/root #Redhat
xfs_growfs /dev/centos/root #CentOS
meta-data=/dev/mapper/rhel-root isize=256 agcount=4, agsize=260096 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0 finobt=0
data = bsize=4096 blocks=1040384, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=0
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 1040384 to 2360320
重新显示文件系统,可以看到根分区大小从44G增加到了64G
df -Th
/dev/mapper/rhel-root xfs 64G 41G 24G 64% /
【完整步骤】

【完】
Linux 虚拟机中不重启的情况下加新硬盘及扩展根分区容量的更多相关文章
- RHEL7虚拟机中不重启的情况下加新硬盘及扩展根分区容量
在VMware中添加一块新的5G硬盘 显示当前分区 # fdisk -l 通常在你在虚拟机中添加一块新硬盘时,你可能会看到新硬盘没有自动加载.这是因为连接到硬盘的SCSI总线需要重新扫描来使得新硬盘可 ...
- Linux 在不重启的情况下识别新挂载的磁盘
在使用 Linux 时,有时候会因为初始时磁盘空间分配估计不足,使用中需要将挂载点扩容的情况,这就需要我们挂载新的磁盘.但是如果我们在 Linux 运行过程中挂载磁盘, Linux 又不能在不重启的情 ...
- CentOS系统在不重启的情况下为虚拟机添加新硬盘
一.概述 用过虚拟机的都知道,如果在系统运行的时候去给虚拟机添加一块新设备,比如说硬盘,系统是读取不到这个新硬盘的,因为系统在启动的时候会去检测硬件设备.但是我们也可能会遇到这样的情况,比如正在运行比 ...
- @Java Web 程序员,我们一起给程序开个后门吧:让你在保留现场,服务不重启的情况下,执行我们的调试代码
一.前言 这篇算是类加载器的实战第五篇,前面几篇在这里,后续会持续写这方面的一些东西. 实战分析Tomcat的类加载器结构(使用Eclipse MAT验证) 还是Tomcat,关于类加载器的趣味实验 ...
- linux虚拟机关机、重启命令
linux虚拟机关机.重启命令 一.shutdown 1.shutdown -h now :立即关机 2.shutdown -h 10:53:到10:53关机 3.shutdown -h +10 ...
- @Java web程序员,在保留现场,服务不重启的情况下,执行我们的调试代码(JSP 方式)
一.前言 类加载器实战系列的第六篇(悄悄跟你说,这篇比较水),前面5篇在这里: 实战分析Tomcat的类加载器结构(使用Eclipse MAT验证) 还是Tomcat,关于类加载器的趣味实验 了不得, ...
- @Spring Boot程序员,我们一起给程序开个后门吧:让你在保留现场,服务不重启的情况下,执行我们的调试代码
前言 这篇其实是对一年前的一篇文章的补坑. @Java Web 程序员,我们一起给程序开个后门吧:让你在保留现场,服务不重启的情况下,执行我们的调试代码 当时,就是在spring mvc应用里定义一个 ...
- mysql在生产环境下有大量锁表,又不允许重启的情况下的处理办法
mysql在生产环境下有大量锁表,又不允许重启的情况下的处理办法 满头大汗的宅鸟该怎么办呢? mysql -u root -e "show processlist"|grep -i ...
- linux虚拟机中安装mongodb
今天在linux虚拟机中安装了mongodb数据库,安装过程主要参照了网上的一片文档,大部分地方都没有多大区别,只是在某些细节上有所改变. 我参考的文档是:http://my.oschina.net/ ...
- linux 存在多个版本的情况下,切换python版本
linux 存在多个版本的情况下 python 命令默认寻找 /usr/bin下的命令 所以先find / -name python* 找一下所有的Python版本 然后 sudo ln /usr/b ...
随机推荐
- golang日志库之log
查看基本使用: package main import ( "log" ) type User struct { Name string Age int } func main() ...
- 系统日志查询之journalctl
journalctl是什么 查询系统日志的工具 journalctl -xe是什么意思 -xe是排查问题时最常用的参数:-e 从结尾开始看-x 相关目录(如:问题相关的网址) journalctl - ...
- docker之基本命令(2)
上一篇介绍了一下,docker使用的有些基础命令.这次再来深入的了解一下较为复杂的docker命令 管理指令 说明 docker container 用于管理容器 docker image 用于 ...
- Java日志手机号脱敏工具类
背景 在开发过程中,很容易将用户敏感信息,例如手机号码.身份证等,打印在日志平台.为了保护用户数据,又不影响日志的打印,需要将日志中的敏感信息进行脱敏. 效果 没看明白,强烈建议 pull项目,执行一 ...
- js 实现可缓存方法
1.概述 有些场景下,如果一些函数需要大量的运算,但是他们的传入的参数是一样的,这个时候,我们可以将这些运算缓存下来,之后的运算就可以不用重复计算了. 2.实现方法 <script> // ...
- java 去重元素,元素是一组没有顺序的字符
1.需求描述: 有一个大集合,大集合中的元素是是一个小集合,要求在大集合中的小集合不能重复,小集合中的元素没有顺序. 例如有个大集合 [[a,b],[b,c]] 向这个元素中添加元素[b,a]就是添加 ...
- 推荐一款轻量级且强大的 Elasticsearch GUI : elasticvue
推荐一款轻量级且强大的 Elasticsearch GUI : elasticvue 很多同学都是用过 Elasticsearch 的 GUI 工具 Kibana ,但 Kibana 相对比较重,这篇 ...
- RHCL8无法使用yum install的解决方法
报错如下: Updating Subscription Management repositories. Unable to read consumer identity This system i ...
- Docker非root用户修改/etc/hosts文件
本文会讲解在Docker容器环境下,非root用户如何编辑修改/etc/hosts文件. 1.背景和需求描述 环境:Docker 运行用户:非root用户,如普通用户1001 需求:应用运行在容器内, ...
- 开源产品测评之 SQL 上线能力
背景 近期,我司准备引入一款 SQL 审核产品来供内部流程使用,解决目前 SQL 人工上线的流程管控问题,目标是对业内的开源产品进行调研,选型一款作为落地方案,后期如果内部有需求可能会进行二次开发.我 ...