1. 背景

用了一段时间后,发现 Ubuntu 空间太小了不够用了。于是扩容了硬盘大小,同时需要对分区进行调整来进行扩容。

系统采用的 LVM(Logical Volume Manager)的方式进行管理的。

2. 处理

这里分两种情况进行处理:

  1. LV(Logical Volume) 没有用尽 VG(Volume Group)。
  2. VG(Volume Group) 没有用尽 PV(Physical Volume),或者 PV(Physical Volume) 没有关联物理分区。

2.1 LV 使用全部 VG

可以看到 //dev/mapper/ubuntu--vg-ubuntu--lv 挂载:

$ df -hl
Filesystem                         Size  Used Avail Use% Mounted on
tmpfs                              196M  1.4M  195M   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv  9.8G  7.5G  1.8G  81% /
tmpfs                              980M   16K  980M   1% /dev/shm
tmpfs                              5.0M     0  5.0M   0% /run/lock
/dev/sda2                          1.8G  127M  1.5G   8% /boot
tmpfs                              196M  4.0K  196M   1% /run/user/1000

ubuntu--vg-ubuntu--lv 使用的是 sda3 分区,而 sda3 总共 18.2G,ubuntu--vg-ubuntu--lv 只用了 10G:

$ sudo lsblk
NAME                      MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
fd0                         2:0    1    4K  0 disk
loop0                       7:0    0 79.9M  1 loop /snap/lxd/22923
loop1                       7:1    0   62M  1 loop /snap/core20/1587
loop2                       7:2    0   47M  1 loop /snap/snapd/16292
sda                         8:0    0   50G  0 disk
├─sda1                      8:1    0    1M  0 part
├─sda2                      8:2    0  1.8G  0 part /boot
└─sda3                      8:3    0 18.2G  0 part └─ubuntu--vg-ubuntu--lv 253:0    0   10G  0 lvm  /
# VG ubuntu-vg 剩余 8.22G
$ sudo vgdisplay -A
--- Volume group ---
VG Name               ubuntu-vg
System ID
Format                lvm2
Metadata Areas        1
Metadata Sequence No  2
VG Access             read/write
VG Status             resizable
MAX LV                0
Cur LV                1
Open LV               1
Max PV                0
Cur PV                1
Act PV                1
VG Size               18.22 GiB
PE Size               4.00 MiB
Total PE              4665
Alloc PE / Size       2560 / 10.00 GiB
Free  PE / Size       2105 / 8.22 GiB
VG UUID               gHs11o-PLvl-3cw4-SIax-mcw6-7RCx-D4BEpo

两条命令调整 LV 占用 VG 的全部空间:

$ sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
$ sudo resize2fs /dev/ubuntu-vg/ubuntu-lv

结果,扩容成功:

$ sudo lsblk
NAME                      MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
fd0                         2:0    1    4K  0 disk
loop0                       7:0    0 79.9M  1 loop /snap/lxd/22923
loop1                       7:1    0   62M  1 loop /snap/core20/1587
loop2                       7:2    0   47M  1 loop /snap/snapd/16292
sda                         8:0    0   50G  0 disk
├─sda1                      8:1    0    1M  0 part
├─sda2                      8:2    0  1.8G  0 part /boot
└─sda3                      8:3    0 18.2G  0 part └─ubuntu--vg-ubuntu--lv 253:0    0 18.2G  0 lvm  /

2.2 VG 关联物理分区进行扩容

这里以不损坏数据为前提,所以就不对原分区 /dev/sda3进行调整了。而是采用将磁盘可用空间创建一个新的 /dev/sda4 分区,然后去关联 VG,毕竟 LVM 非常灵活。

下面对新增加的 30GB 进行处理。

创建分区 sda4,将设置为 lvm 类型:

$ sudo fdisk /dev/sda
==> Command (m for help): pDisk /dev/sda: 50 GiB, 53687091200 bytes, 104857600 sectors
Disk model: VMware Virtual S
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 3A0A0460-1FC2-46FF-A278-3299E8F2B745Device       Start      End  Sectors  Size Type
/dev/sda1     2048     4095     2048    1M BIOS boot
/dev/sda2     4096  3719167  3715072  1.8G Linux filesystem
/dev/sda3  3719168 41940991 38221824 18.2G Linux filesystem===> Command (m for help): n
Partition number (4-128, default 4):
First sector (41940992-104857566, default 41940992):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (41940992-104857566, default 104857566): Created a new partition 4 of type 'Linux filesystem' and of size 30 GiB.===> Command (m for help): p
Disk /dev/sda: 50 GiB, 53687091200 bytes, 104857600 sectors
Disk model: VMware Virtual S
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 3A0A0460-1FC2-46FF-A278-3299E8F2B745Device        Start       End  Sectors  Size Type
/dev/sda1      2048      4095     2048    1M BIOS boot
/dev/sda2      4096   3719167  3715072  1.8G Linux filesystem
/dev/sda3   3719168  41940991 38221824 18.2G Linux filesystem
/dev/sda4  41940992 104857566 62916575   30G Linux filesystem===> Command (m for help): t
===> Partition number (1-4, default 4):
===> Partition type or alias (type L to list all): lvmChanged type of partition 'Linux filesystem' to 'Linux LVM'.===> Command (m for help): p
Disk /dev/sda: 50 GiB, 53687091200 bytes, 104857600 sectors
Disk model: VMware Virtual S
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 3A0A0460-1FC2-46FF-A278-3299E8F2B745Device        Start       End  Sectors  Size Type
/dev/sda1      2048      4095     2048    1M BIOS boot
/dev/sda2      4096   3719167  3715072  1.8G Linux filesystem
/dev/sda3   3719168  41940991 38221824 18.2G Linux filesystem
/dev/sda4  41940992 104857566 62916575   30G Linux LVM===> Command (m for help): w
The partition table has been altered.
Syncing disks.

可以看到 sda4 创建成功,并使用所有可用空间:

$ sudo lsblk
NAME                      MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
fd0                         2:0    1    4K  0 disk
loop0                       7:0    0 79.9M  1 loop /snap/lxd/22923
loop1                       7:1    0   62M  1 loop /snap/core20/1587
loop2                       7:2    0   47M  1 loop /snap/snapd/16292
sda                         8:0    0   50G  0 disk
├─sda1                      8:1    0    1M  0 part
├─sda2                      8:2    0  1.8G  0 part /boot
├─sda3                      8:3    0 18.2G  0 part
│ └─ubuntu--vg-ubuntu--lv 253:0    0 18.2G  0 lvm  /
└─sda4                      8:4    0   30G  0 part

sda4创建成 PV(Physical Volume):

$ sudo pvcreate /dev/sda4Physical volume "/dev/sda4" successfully created.$ sudo pvdisplay--- Physical volume ---PV Name               /dev/sda3VG Name               ubuntu-vgPV Size               <18.23 GiB / not usable 3.00 MiBAllocatable           yes (but full)PE Size               4.00 MiBTotal PE              4665Free PE               0Allocated PE          4665PV UUID               vO0lgC-X0bG-nUat-kevg-FONv-OpNh-qwY5zF"/dev/sda4" is a new physical volume of "30.00 GiB"--- NEW Physical volume ---PV Name               /dev/sda4VG Name               PV Size               30.00 GiBAllocatable           NOPE Size               0   Total PE              0Free PE               0Allocated PE          0PV UUID               A87gcC-J2mc-3jPD-4emh-8Ute-VQ52-Ceg7zu

sda4扩容到当前的 VG:

# 查看当前 VG
$ sudo vgdisplay--- Volume group ---VG Name               ubuntu-vgSystem ID             Format                lvm2Metadata Areas        1Metadata Sequence No  3VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                1Open LV               1Max PV                0Cur PV                1Act PV                1VG Size               18.22 GiBPE Size               4.00 MiBTotal PE              4665Alloc PE / Size       4665 / 18.22 GiBFree  PE / Size       0 / 0   VG UUID               gHs11o-PLvl-3cw4-SIax-mcw6-7RCx-D4BEpo# 将 PV 添加到 VG
$ sudo vgextend ubuntu-vg /dev/sda4# 扩展成功
$ sudo vgdisplay--- Volume group ---VG Name               ubuntu-vgSystem ID             Format                lvm2Metadata Areas        2Metadata Sequence No  4VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                1Open LV               1Max PV                0Cur PV                2Act PV                2VG Size               <48.22 GiBPE Size               4.00 MiBTotal PE              12344Alloc PE / Size       4665 / 18.22 GiBFree  PE / Size       7679 / <30.00 GiBVG UUID               gHs11o-PLvl-3cw4-SIax-mcw6-7RCx-D4BEpo

接下来就同 2.1 的操作了:

$ sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
$ sudo resize2fs /dev/ubuntu-vg/ubuntu-lv$ sudo lsblk
NAME                      MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
fd0                         2:0    1    4K  0 disk
loop0                       7:0    0 79.9M  1 loop /snap/lxd/22923
loop1                       7:1    0   62M  1 loop /snap/core20/1587
loop2                       7:2    0   47M  1 loop /snap/snapd/16292
sda                         8:0    0   50G  0 disk
├─sda1                      8:1    0    1M  0 part
├─sda2                      8:2    0  1.8G  0 part /boot
├─sda3                      8:3    0 18.2G  0 part
│ └─ubuntu--vg-ubuntu--lv 253:0    0 48.2G  0 lvm  /
└─sda4                      8:4    0   30G  0 part └─ubuntu--vg-ubuntu--lv 253:0    0 48.2G  0 lvm  /

记一次 Ubuntu Linux 动态调整分区空间相关推荐

  1. linux sd卡 分区变大,Linux 动态调整分区大小

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? Ubuntu根分区空间告急,即将使用完毕 先清理出一定空间 移除不再需要的软件包1sudo apt autoremove ...

  2. Ubuntu使用Gparted调整分区大小—进入图形界面前一直停留在debian界面

    其实是镜像的问题:Gparted镜像的位数要和虚拟机相同 今天按照教程操作-Ubuntu使用Gparted调整分区大小:https://www.cnblogs.com/z12568/p/1043493 ...

  3. linux交换分区的文件格式为,linux利用交换分区空间类提供虚拟内存,交换分区的文件系统类型必须是() (5.0分)...

    2021-03-06 10:21郑州新闻网编辑:admin人气: linux利用交换分区空间类提供虚拟内存,交换分区的文件系统类型必须是() (5.0分) 物业服务企业资质一级企业的注册资本为300万 ...

  4. linux lvm 调整分区大小,linux调整lvm分区大小(/home分区过大,/root分区过小)

    安装centos6.3使用自动推荐分区,发现一个问题/home 分区过大,超过了1.1T. [root@localhost ~]# df -h 文件系统              容量  已用  可用 ...

  5. ubuntu linux 自动挂载分区 硬盘 文件 无权限 Permission denied

    快速方法:重新格式化硬盘 ubuntu新硬盘挂载及格式化NTFS - CodeAntenna 如果还是无法解决的话,请再参考下面步骤 配置/etc/fstab实现自动挂载且所有用户均有权限 背景:为了 ...

  6. Ubuntu 用GParted调整分区大小

    https://www.cnblogs.com/zalebool/p/5814907.html https://blog.csdn.net/haifengid/article/details/5170 ...

  7. Linux的SWAP分区空间不够用的情况下,如何添加SWAP分区

    通常情况下,SWAP空间应大于或等于物理内存的大小,最小不应小于64M,通常应是物理内存的2-2.5倍.但根据不同的应用,应有不同的配置.如果是小的桌面系统,则只需要较小的SWAP空间,而大的服务器系 ...

  8. 安装Ubuntu Linux系统时硬盘分区最合理的方法

    无论是安装Windows还是Linux操作系统,硬盘分区都是整个系统安装过程中最为棘手的环节,网上的一些Ubuntu Linux安装教程一般都是自动分区,给初学者带来很大的不便,下面我就根据多年来在装 ...

  9. dev sda2 linux lvm,记录linux LVM 扩容硬盘空间的记录

    你看到的这个文章来自于http://www.cnblogs.com/ayanmw 从2008年学linux的时候就知道有LVM这个东西,那个时候还是ext3文件系统,LVM逻辑卷管理,可以动态管理磁盘 ...

  10. 动态调整linux分区大小,GParted 动态调整Linux分区大小

    在虚拟化环境中虚拟机运行一段时间后数据量持续增长,磁盘分区都需要进行扩容,对于Windows系统相对简单,在磁盘瘦格式的状态下直接修改虚拟机磁盘大小,在系统中的磁盘管理里扩展分区即可,实时生效连重启都 ...

最新文章

  1. ES _source字段介绍——json文档,去掉的话无法更新部分文档,最重要的是无法reindex...
  2. Android 异常: failed to connect to localhost/127.0.0.1
  3. 当进度对话框和后台线程处于活动状态时,如何处理屏幕方向变化?
  4. spring cloud 配置中心
  5. 参加web前端学习前需要知道的注意事项
  6. 201621123028《Java程序设计》第5周学习总结
  7. oracle查看jdk文档_Oracle JDK 9 Early Access文档已更新
  8. (网页)css和js的版本号问题
  9. 【算法分析与设计】经典排序算法实现
  10. [4] ADB 应用管理
  11. 还没使用过Web Worker,推荐一款开源工具Workerize,快速上手
  12. 优达学城深度学习之三(下)——卷积神经网络
  13. C语言 mallocfree
  14. Mac使用010editor
  15. eclipse 常用操作 持续更新
  16. 内外网共存环境迁移Exchange 2010至Exchange 2016
  17. 【总结】计算机网络常用协议总结------结合cpri
  18. 【数据结构基础_双向链表(有[*pHead]和[*pEnd])_(C++)】
  19. 毕业设计论文 基于遥感影像的道路材质信息提取方法研究
  20. MAC如何查看图片尺寸大小

热门文章

  1. 微型计算机系统王其藩,王其藩 系统动力学 附录Vensim模型集
  2. VS Code配置java环境
  3. SVN下载以及汉化安装包的使用
  4. SQL SERVER 报表开发工具入门教程
  5. c语言编程编写笑脸,用C语言编写笑脸游戏.doc
  6. Physics Bodies(中文翻译)—UE4官方文档
  7. 单片机的c语言程序控制直流电机,(单片机控制直流电机)毕业论文.doc
  8. 计算机网络机房面积,你必须要知道的机房的标准规范
  9. H.266/VVC代码学习笔记14:xCheckRDCostMerge2Nx2N()函数
  10. 百度地图与 select下拉框的双向维护