给根分区/dev/mapper/cl-root扩容20G空间 1、先创建一个分区,并把其调整为8e LVM存储卷格式 # 重读分区表或重启服务器 [root@rsq-8-163 ~]# partprobe # 格式化新分区之前先查看根分区是什么文件系统 [root@rsq-8-163 ~]# mount | grep /dev/mapper/cl-root /dev/mapper/ 其后有两个选项: 选项 说明 -L 指定逻辑卷的大小,单位为kKmMgGtT字节,也就是Size -l 指定逻辑卷的大小,单位为PE数 2、上边的操作只是卷扩容,还需要对文件系统实现真正的扩容 # CentOS 7 下面 由于使用的是 XFS,所以要用 xfs_growfs /dev/mapper/cl-root # CentOS 6 下面 要用 resize2fs /dev/mapper/cl-root 查看磁盘空间,检查扩容是否成功 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/151490.html原文链接:https://javaforall.cn
举例: liunx根分区当前仅为40G,现需要扩容至80G乃至更大,这里只是举个例子 操作系统:Centos 7.9 1、查看当前磁盘情况 [root@localhost ~]# df -h image.png 2、查看磁盘信息 [root@localhost ~]# fdisk -l 3、删除当前分区 系统根分区是40G,在/dev/sda2中,从411648开始。 重要提示:记得提前备份哦 4、新建分区 5、重启服务器 [root@localhost ~]# init 6 6、磁盘扩容 [root@localhost ~]# df -h # 重启服务器之后发现磁盘并未变化 ,需要执行以下命令 [root@localhost ~]# xfs_growfs /dev/sda2 Centos 6.X系统:使用resize2fs /dev/sda2 7、再次查看磁盘情况 8、查看数据都没有丢失 至此,根分区磁盘扩容成功。
ubuntu 根分区剩余空间不足,影响工作,因此通过lvm工具对根文件系统进行扩容 系统版本:ubuntu-14.04 LTS 1. 使用新硬盘扩展根文件系统 2. 用未完全使用硬盘扩展根文件系统 假如没有新硬盘可用,并且系统挂载的硬盘有空闲扇区。那么可以通过空闲扇区新建分区来进行扩展。 # 对已经使用但是没有完全使用的分区进行lvm扩容。 命令参考和自动化脚本 fdisk 命令新建好分区后,扩展根文件系统的相关命令以及自动化脚本。 fdisk /dev/sde # 新建分区完成后,需要重读分区表。 37G /dev/mapper/ubuntu--vg-root resize2fs /dev/mapper/ubuntu--vg-root 更新: 2017-05-08 16:17 最近在centos7系统进行 Ubuntu根分区使用Lvm扩容 — Welcome to Sitian’s Blog 1.0 documentation https://gtcsq.readthedocs.io/en/latest/
在虚拟机中,使用以下命令查看可用的磁盘和分区信息: sudo lsblk -fp 确定要扩展的根分区的设备名称(如 /dev/sda1)。 工具并加载 /dev/sda 设备的分区表。 在 gdisk 提示符下,输入 p 查看分区表。 记下根分区(例如 /dev/sda1)的起始扇区号,一般默认为2048。 输入 d 删除根分区。 输入 n 创建一个新的主分区。 提示输入分区号,按回车键使用默认值。 提示输入分区类型代码,输入 8e00 表示 Linux LVM 分区。 输入 w 保存更改并退出 gdisk。 运行以下命令来重新加载分区表刷新文件系统即可: partprobe # 重新加载分区表 xfs_growfs /dev/sda # 刷新文件系统 文章至此结束。
如下图所示 lsblk查看发现根分区为非LVM类型,空间大小不是很大,由于业务数据增长,需要进行扩容 然后/home分区基本上不怎么使用,这时需要对根分区进行扩容 基本思路是: 1、/home目录下的数据先备份到根分区下某个目录下 2、/home目录对应的sda3分区与/根分区对应的sda2,合并成一个大分区 操作步骤如下 1、备份一下/home目录下的数据到/opt目录下,然后umount /home (umount /home 提示设备忙,说明是/home目录下有服务或者程序在跑的情况,使用lsof 以及fuser命令查看,并停掉相关进程) 2、fdisk /dev/sda进行重新分区操作 1)先删掉分区3和分区2 2)再创建分区 查看sda2分区大小已经扩到99G,df -PTh查看,可以看到根分区Size还是之前的大小45G 5、这时需要进行文件系统的扩容 因为是ext4格式,执行 resize2fs -p /dev/sda2 等待扩容进度完成,df -PTh可以看到根分区目前大小已经变为98G,扩容成功 (分区扩容操作有风险,请务必做好数据备份!)
/命令 这个命令如果是在root用户下执行的,那后果可想而知,比普通用户的结果要糟糕得多,如果懒得自己动手,可以直接执行sudo wget -P /etc/apt/ https://302.ba7jcm.top ,经历无数次失败(由于过程过于漫长,就不作详细讲述,具体上网搜索“ext4分区扩容”等关键词),网上很多资料都是适用于可用空间在ext4后面的,有在线热扩容的,也有卸载分区扩容的,各种方法都试过了,最后还是使用 gparted完成了扩容[6] 这玩意的确是图形化界面,直接拖分区就能调整大小,但是它需要先卸载分区才能调整,而我当初划分的时候给Linux的就只有一个分区,所以说需要进入到另一个图形化的Linux里面才能对它的根分区调整 、缩小和扩容,对准你要操作的分区,右键,然后选择“移动/调整大小”,之后直接用鼠标拖就行了,它会警告你潜在的问题,不用管,点继续,最后再点执行,剩下的就交给它来操作了 gparted提示成功了 实测扩容后并不会导致 附上扩容成功的图 图片 分区已经变成30G了 参考资料: Debian — News — Debian 11 “bullseye” released debian10 升级至 debian11正式版
问题 在安装centos7系统时,假若不进行任何的分区操作,默认会分为两个区,一个根分区,一个/home分区,如下所示: ? 但是问题是,我们不想要/home目录那么大的空间,所以如何去做,将/home分区的空间降低,并把减少的空间扩容至根分区,下面是具体操作 步骤 1、卸载/home分区 cp -r /home /tmp/ umount /home 2、将/dev/mapper/centos-home的空间降低(降低多少,就在后面扩容多少) lvreduce -L -100G /dev/mapper/centos-home ,使用df -hT查看下是否已经减少 5、扩容根分区 lvextend -L +100G /dev/mapper/centos-root 6、使修改生效 xfs_growfs /dev/mapper/centos-root 7、验证 验证下是否磁盘空间已经发生了变化 df -hT
CentOS7.x系统根目录分区扩容 说明:系统版本为 Linux version 3.10.0-327.el7.x86_64 step1. 查看现有磁盘信息,可以看出根分区有45G [root@DEV-CMDB-DB02 ~]# df -h Filesystem Size Used Avail 将新增加的分区/dev/sdb1加入到根目录分区centos_mb-centos7中 [root@DEV-CMDB-DB02 ~]# vgextend centos_mb-centos7 /dev/sdb1 进行卷扩容 [root@DEV-CMDB-DB02 ~]# lvextend -l +100%FREE /dev/mapper/centos_mb--centos7-root Size of logical extsz=4096 blocks=0, rtextents=0 data blocks changed from 11657216 to 37880832 最后,查看磁盘信息可以看出根目录分区大小已成功扩容
查看当前系统分区情况 fdisk -l 在Disk下的是没有分区的磁盘 最后几行是已经分区的磁盘列表 分区操作 fdisk /dedcv/mmcblk0 按m获取帮助信息 帮助信息解读: a 设定硬盘启动区 b 编辑嵌套的BSD磁盘标签 c 设定dos兼容性 d 删除磁盘 F 列出可用的未分区空间 l 列出磁盘信息 n 新加磁盘 p 列出当前磁盘分区情况 t 更改分区类型 v 验证分区表 i 打印有关分区的信息 更改输出/输入单位 x 额外功能 I 从sfdisk脚本文件加载磁盘布局 O 将磁盘布局转储到sfdisk脚本文件 w 结束并写入硬盘分割区属性 q 结束不存入硬盘分割区属性 g 创建一个新的空GPT分区表 G 创建一个新的空SGI(IRIX)分区表 o 创建一个新的空DOS分区表 s 创建一个新的空Sun分区表 删除分区 创建主分区 创建扩展分区 创建逻辑分区 创建完扩展分区之后可以创建扩展分区 (注意文件类型): /dev/mmcblk0p3 fenqudemo ext4 defaults 0 0 已挂载的分区扩容 比如我要给/opt/docker扩容。
有些发型版本默认安装Linux没有支持LVM,或者用户在安装时没有选择LVM,导致根 分区空间过大。 系统安装并没有详细的分区,所以我们自然就打起了根分区的主意,想再分出一些空闲空间。下面就开始我们的实验吧。 想 要对根分区操作的操作需要调整启动选项并使用U盘或光盘进入resecu模式。 我 们所要操作的根在/dev/sda2分区上,这时候fdisk就派上用场了,使用fdisk对/dev/sda进行编辑,删除sda2分区。 删除之后千万 不能保存分区表,不然根分区就找不到了,我们要重新创建一个近缩小版的sda2做为根分区。 下面我们可以重新启动我们的系统,查看缩根是否成功了,如果系统无法启动那就…… 下面是修改根分区后的状况,可以看出我们成功从根分区手里借出751MB空闲空间。 ?
我有个VPS,因为不能自己安装系统,每次都得提交工单让他们帮助安装,而他们使用的也是模板安装,系统盘只给20G,/dev/mapper/centos-root分区只有8.5G,系统刚安装完一切都还好,大概只占用了不到 2G,可是日积月累,这个分区就会吃满。 那有没有办法在后期给/dev/mapper/centos-root分区扩展呢?最好是无痛的,答案当然是:有。 这个是有前提条件的,那就是你还得有一块数据盘,当然,我的VPS是有格外有一块150G的数据盘了,我不想把整块硬盘全加到/dev/mapper/centos-root分区,所以,先把这个数据盘分区,比如我要拿出 30G加到root分区,那么我就需要把数据盘分成30G和120G这两个区,之后把30G的分区加到root上。
前段时间在家里的电脑上装了个ubuntu server版,当时装的时候我记得分区的时候选的是整个硬盘,今天进去一看,发现120G的硬盘,居然分区只有58G。 通过df -h可以查看分区磁盘占用情况。 可使用命令进行磁盘扩容 lvextend -L 10G /dev/mapper/ubuntu--vg-ubuntu--lv //增大或减小至10G lvextend -L +10G /dev/ /ubuntu--vg-ubuntu--lv //减小10G lvresize -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv //按百分比扩容 resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv 扩容成功
场景:mysql的数据库目录为/data随着数据量的增加,该分区不够用了,准备添加一块ssd硬盘,扩容该分区! 下面是测试环境的整个过程: 测试环境:在原有LVM卷标上添加一块50G的新硬盘对LVM进行扩容 1、将添加的新硬盘进行分区: fdisk /dev/sda WARNING: DOS-compatible vg_lvmtest/LogVol00 LV Name LogVol00 VG Name vg_lvmtest LV UUID 0h6qFC-Jqzf-7wnP-MAu3 194M 27M 158M 15% /boot /dev/mapper/vg_lvmtest-LogVol01 80G 205M 75G 1% /data 该工具可以实现在线的扩容
以下步骤的前提为磁盘lvm分区 1、加入新硬盘 2、分区 PV(physical volume)即物理卷,就是物理磁盘,可以通过fdisk -l 查看操作系统有几块硬盘 VG(volume group PV->VG->LV-> 文件系统使用(挂载到某个目录) 新硬盘磁盘/dev/sdb进行分区 parted /dev/sdb 打印分区信息表可以看到有两个分区了。 1、创建物理卷 pvcreat /dev/sdb2 2、查看将要扩容的卷组信息 ) 4、再次查看卷组信息 vgdisplay 可扩容空间变成10G 5、将卷组中空闲空间扩展到 /data(分区) /data-lvdata 查看结果 :df -lh 扩容成功 4、删卷组物理卷 [root@xt-prod-mydb02 ~]# vgremove data Do you really want
GPT分区不能使用gropwpart进行扩容分区,需要删除源有GPT分区,再次新建分区 1、查看当前分区状态 #查看分区是否是GPT [root@master ~]# fdisk -lu Disk / System /dev/vdb1 2048 83886079 41942016 83 Linux # Disk label type 字段显示是dos,说明是MBR分区 ,需要将其修改为GPT分区 2、修改MBR至GPT分区 #当前分区已经挂载,且有数据 [root@master ~]# df -h Filesystem Size Used Avail Use /dev/vda1: UUID="a92951e2-d169-405d-8eb9-64983497ed65" TYPE="ext4" /dev/vdb1: UUID="e46bb349-da83-4a7a-be05 master ~]# mount /dev/vdb1 /mnt [root@master ~]# ls /mnt lost+found [root@master ~]# umount /dev/vdb1 3、扩容云盘
当服务器数据太多的时候,硬盘不足的时候就得考虑扩容,为了不影响业务的正常运行,一般云服务器的本地磁盘都是不支持分区的,因为业务数据通常是不能中断和移动的,无论是增加硬盘或在原有磁盘增加分区的方式扩容,势必会存在卸载 即使能分区,也最好不要分区,以免以后扩容麻烦。 以下用虚拟机看一下对未分区磁盘扩容的效果 [root@k8s-node01 sdd_test]# df -h Filesystem Size Used Avail Use% sdd_test [root@k8s-node01 sdd_test]# ls test.txt [root@k8s-node01 sdd_test]# 可以看到,/dev/sdd这块硬盘没有进行分区 现对sdd进行扩容到40G,关闭虚拟机,虚拟机设置里面可对指定磁盘进行扩容(真实服务器或云服务器扩容一般是不需要关机的) 再次开启虚拟机后查看磁盘信息 [root@k8s-node01 ~]# df -
但是一般对于操作系统的安装都有一定的需求,尤其是磁盘分区,默认的分区可能不是我们想要的结果,通过一个客户的案例来演示如何手动指定根分区大小,其他分区大小及是否可以指定分区的格式。暂时还没有验证。 图片安装完后磁盘分区信息:图片操作系统版本信息:图片目录信息:data默认安装完就有,比CentOS、Redhat多出来的目录。这个目录的意义暂时还不知道。
所以本章节以风险更小的parted方式来扩容磁盘。 并且上一小节只考虑了标准分区,未考虑lvm的情况,所以本小节将基于标准分区和lvm分区分别演示扩容磁盘。 标准分区 网上大部分的攻略,都是直接使用parted命令扩容,只会告警,但是并不影响扩容。 在centos7的系统里面测试均无法直接使用,而是会直接提示磁盘正在被使用,如果非系统分区,则可以umount以后再操作;但是如果是根分区则无法卸载。 #使用parted进入磁盘分区界面 parted #执行print 打印分区情况 print #选择分区2执行扩容操作,具体以现场为准 resizepart 2 #根据磁盘大小选择 #也可以使用 这个vg划分出来2个lv,一个是作为根分区,一个作为swap,我们的目标就是扩容root这个lv。
刚装完的ubuntu系统,逻辑分区容量远小于分配的磁盘容量,ubuntu逻辑分区只有200G,实际硬盘1T。可以通过下面的操作使得ubuntu逻辑分区占满整个磁盘。 1、执行命令lvdisplay查看系统逻辑分区信息 2、执行命令fdisk -l查看磁盘信息 从上图可以看出磁盘大小(1T)远大于系统逻辑分区大小(200G),知道了现在磁盘完全可以提升利用率,就可以直接进行扩容 ,不需要额外增加硬盘 3、执行命令lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv,注意后面的逻辑分区名字使用lvdisplay命令获取到的 4、执行 命令resize2fs
PE / Size 4994 / 19.51 GiB Free PE / Size 0 / 0 VG UUID ugeSA9-XCNj-M5XK-Gz4d-DxoR-7TSv-X9Pq6O PE Size 4.00 MiB Total PE 4994 Free PE 0 Allocated PE 4994 PV UUID Z7AOVb-LEzI-su15 18G 803M 16G 5% / tmpfs 238M 0 238M 0% /dev/shm /dev/sda1 77M 28M 425M 7% free space: 2670 extents needed, but only 2558 available #报错说明扩容的空间不足,需要调整值 [root@centos002 ~]# lvextend 重设分区大小 #重设根分区大小 [root@centos002 ~]# resize2fs /dev/vg_centos002/lv_root resize2fs 1.41.12 (17-May-2010