ubuntu扩展虚拟你

在我们安装ubuntu时,如果选择的是自动分区,就会按照逻辑卷的形式来分区,并且只分配100G其余的并不会被分配

这对我们大多数情况来说都是不合理的,所以,如何扩充呢

下面以一个小的案例来说明如何扩充

问题

磁盘空间已满

Usage of /: 99.8% of 9.75GB

df、fdisk查看磁盘占用情况

df -h

Filesystem Size Used Avail Use% Mounted on

tmpfs 197M 1.4M 196M 1% /run

/dev/mapper/ubuntu--vg-ubuntu--lv 9.8G 9.3G 0 100% /

tmpfs 983M 0 983M 0% /dev/shm

tmpfs 5.0M 0 5.0M 0% /run/lock

/dev/sda2 1.7G 253M 1.4G 16% /boot

tmpfs 197M 4.0K 197M 1% /run/user/1000

fdisk -l

Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors

Disk model: Virtual disk

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

Device Start End Sectors Size Type

/dev/sda1 2048 4095 2048 1M BIOS boot

/dev/sda2 4096 3674111 3670016 1.8G Linux filesystem

/dev/sda3 3674112 33552383 29878272 14.2G Linux filesystem

查看磁盘挂载情况

lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS

sda 8:0 0 25G 0 disk

├─sda1 8:1 0 1M 0 part

├─sda2 8:2 0 1.8G 0 part /boot

└─sda3 8:3 0 14.2G 0 part

└─ubuntu--vg-ubuntu--lv 253:0 0 9.8G 0 lvm /

可以看到sda3有15G,但是只分配了10G。

命令vgdisplay可以查看lvm卷组的信息;

vgdisplay

如果看到 Free PE / Size > 0,表示还有扩容空间。

解决

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

LV(Logical Volume) 没有用尽 VG(Volume Group)。

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

LV 使用全部 VG

使用lvresize扩容剩下所有空间。

#lvextend -L 10G /dev/mapper/ubuntu--vg-ubuntu--lv //增大或减小至19G

#lvextend -L +10G /dev/mapper/ubuntu--vg-ubuntu--lv //增加10G

#lvreduce -L -10G /dev/mapper/ubuntu--vg-ubuntu--lv //减小10G

#lvresize -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv //按百分比扩

lvresize -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv

执行resize2fs使扩容生效 【注意:不执行这个命令以上修改是不会生效的!】

resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv

resize2fs 1.46.5 (30-Dec-2021)

Filesystem at /dev/mapper/ubuntu--vg-ubuntu--lv is mounted on /; on-line resizing required

old_desc_blocks = 2, new_desc_blocks = 2

The filesystem on /dev/mapper/ubuntu--vg-ubuntu--lv is now 3734528 (4k) blocks long.

查看结果

vgdisplay

--- Volume group ---

VG Name ubuntu-vg

System ID

Format lvm2

VG Size <14.25 GiB

PE Size 4.00 MiB

Total PE 3647

Alloc PE / Size 3647 / <14.25 GiB

Free PE / Size 0 / 0

VG 关联物理分区进行扩容

补充:本系统使用的是虚拟机,所以需要在虚拟机设置中先扩容"物理"硬盘空间。

接下来采用的方法是:不修改原有分区,在新的空间上新建分区,并添加到LVM的LV中。

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

修改前分区状态

$ lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS

sda 8:0 0 25G 0 disk

├─sda1 8:1 0 1M 0 part

├─sda2 8:2 0 1.8G 0 part /boot

└─sda3 8:3 0 14.2G 0 part

└─ubuntu--vg-ubuntu--lv 253:0 0 14.2G 0 lvm /

开始分区

$ sudo fdisk /dev/sda

Command (m for help): m #查看帮助

Help:

GPT

M enter protective/hybrid MBR

Generic

d delete a partition

F list free unpartitioned space

l list known partition types

n add a new partition

p print the partition table

t change a partition type

v verify the partition table

i print information about a partition

Misc

m print this menu

x extra functionality (experts only)

Script

I load disk layout from sfdisk script file

O dump disk layout to sfdisk script file

Save & Exit

w write table to disk and exit

q quit without saving changes

Create a new label

g create a new empty GPT partition table

G create a new empty SGI (IRIX) partition table

o create a new empty DOS partition table

s create a new empty Sun partition table

Command (m for help): p #打印分区

Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors

Disk model: Virtual disk

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

Device Start End Sectors Size Type

/dev/sda1 2048 4095 2048 1M BIOS boot

/dev/sda2 4096 3674111 3670016 1.8G Linux filesystem

/dev/sda3 3674112 33552383 29878272 14.2G Linux filesystem

Command (m for help): n # 新建分区

Partition number (4-128, default 4): # 使用默认的序号4

First sector (33552384-52428766, default 33552384): #使用默认的开始

Last sector, +/-sectors or +/-size{K,M,G,T,P} (33552384-52428766, default 52428766): #使用默认的结束 也就也就意味着使用剩下的全部

Created a new partition 4 of type 'Linux filesystem' and of size 9 GiB.

Command (m for help): p # 打印分区

Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors

Disk model: Virtual disk

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

Device Start End Sectors Size Type

/dev/sda1 2048 4095 2048 1M BIOS boot

/dev/sda2 4096 3674111 3670016 1.8G Linux filesystem

/dev/sda3 3674112 33552383 29878272 14.2G Linux filesystem

/dev/sda4 33552384 52428766 18876383 9G Linux filesystem

Command (m for help): t #改变分区类型

Partition number (1-4, default 4): #默认选择刚刚的4

Partition type or alias (type L to list all): lvm # 改编成lvm

Changed type of partition 'Linux filesystem' to 'Linux LVM'.

Command (m for help): p

Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors

Disk model: Virtual disk

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

Device Start End Sectors Size Type

/dev/sda1 2048 4095 2048 1M BIOS boot

/dev/sda2 4096 3674111 3670016 1.8G Linux filesystem

/dev/sda3 3674112 33552383 29878272 14.2G Linux filesystem

/dev/sda4 33552384 52428766 18876383 9G Linux LVM

Command (m for help): w # 写入保存并退出

The partition table has been altered.

Syncing disks.

建物理分区并关联到LVM

$ sudo lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS

...

sda 8:0 0 25G 0 disk

├─sda1 8:1 0 1M 0 part

├─sda2 8:2 0 1.8G 0 part /boot

├─sda3 8:3 0 14.2G 0 part

│ └─ubuntu--vg-ubuntu--lv 253:0 0 14.2G 0 lvm /

└─sda4 8:4 0 9G 0 part

创建物理卷PV

$ sudo pvcreate /dev/sda4

Physical volume "/dev/sda4" successfully created.

查看物理卷PV

$ sudo pvdisplay

--- Physical volume ---

PV Name /dev/sda3

VG Name ubuntu-vg

PV Size <14.25 GiB / not usable 0

Allocatable yes (but full)

PE Size 4.00 MiB

Total PE 3647

Free PE 0

Allocated PE 3647

"/dev/sda4" is a new physical volume of "9.00 GiB"

--- NEW Physical volume ---

PV Name /dev/sda4

VG Name

PV Size 9.00 GiB

Allocatable NO

PE Size 0

Total PE 0

Free PE 0

Allocated PE 0

查看卷组VG

$ sudo vgdisplay

--- Volume group ---

VG Name ubuntu-vg

System ID

Format lvm2

VG Size <14.25 GiB

PE Size 4.00 MiB

Total PE 3647

Alloc PE / Size 3647 / <14.25 GiB

Free PE / Size 0 / 0

扩容卷组VG

$ sudo vgextend ubuntu-vg /dev/sda4

Volume group "ubuntu-vg" successfully extended

查看卷组VG

$ sudo vgdisplay

--- Volume group ---

VG Name ubuntu-vg

System ID

Format lvm2

VG Size 23.24 GiB

PE Size 4.00 MiB

Total PE 5950

Alloc PE / Size 3647 / <14.25 GiB

Free PE / Size 2303 / <9.00 GiB

扩容逻辑卷LV

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

Size of logical volume ubuntu-vg/ubuntu-lv changed from <14.25 GiB (3647 extents) to 23.24 GiB (5950 extents).

Logical volume ubuntu-vg/ubuntu-lv successfully resized.

查看卷组VG

$ sudo vgdisplay

--- Volume group ---

VG Name ubuntu-vg

System ID

Format lvm2

VG Size 23.24 GiB

PE Size 4.00 MiB

Total PE 5950

Alloc PE / Size 5950 / 23.24 GiB

Free PE / Size 0 / 0

执行修改

$ sudo resize2fs /dev/ubuntu-vg/ubuntu-lv

resize2fs 1.46.5 (30-Dec-2021)

Filesystem at /dev/ubuntu-vg/ubuntu-lv is mounted on /; on-line resizing required

old_desc_blocks = 2, new_desc_blocks = 3

The filesystem on /dev/ubuntu-vg/ubuntu-lv is now 6092800 (4k) blocks long.

查看结果

$ df -h

Filesystem Size Used Avail Use% Mounted on

tmpfs 197M 1.6M 195M 1% /run

可以看到/已经变成了扩容后的容量

/dev/mapper/ubuntu--vg-ubuntu--lv 23G 9.2G 13G 43% /

tmpfs 983M 0 983M 0% /dev/shm

tmpfs 5.0M 0 5.0M 0% /run/lock

/dev/sda2 1.7G 253M 1.4G 16% /boot

tmpfs 197M 4.0K 197M 1% /run/user/1000

$ sudo lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS

sda 8:0 0 25G 0 disk

├─sda1 8:1 0 1M 0 part

├─sda2 8:2 0 1.8G 0 part /boot

├─sda3 8:3 0 14.2G 0 part

│ └─ubuntu--vg-ubuntu--lv 253:0 0 23.2G 0 lvm /

└─sda4 8:4 0 9G 0 part

└─ubuntu--vg-ubuntu--lv 253:0 0 23.2G 0 lvm /

完成

相关推荐
ding_zhikai2 小时前
SD:在一个 Ubuntu 系统安装 stable diffusion Web UI
前端·ubuntu·stable diffusion
古月-一个C++方向的小白3 小时前
Linux——查看与创建进程
linux·运维·服务器
vortex55 小时前
fd 工具指南:find 的现代替代品
linux·运维开发·命令行工具
馨谙5 小时前
vim保姆级使用,操作详解,快捷键大全总结
linux·编辑器·vim
驱动探索者5 小时前
find 命令使用介绍
java·linux·运维·服务器·前端·学习·microsoft
BruceD_6 小时前
新装 CentOS 7 切换 yum 源完整指南
linux·python·docker·centos·yum
洋哥网络科技6 小时前
Centos系统替代选择
linux·运维·centos
礼拜天没时间.6 小时前
VMware安装虚拟机并且部署 CentOS 7 指南
linux·运维·centos·系统安装
de之梦-御风6 小时前
【MediaMTX】centos 7 安装MediaMTX
linux·运维·centos
领创工作室6 小时前
安卓设备分区作用详解-测试机红米K40
android·java·linux