2个方法:虚拟机VMware容量扩展,无vg分组的linux无损磁盘扩容

目的是:将虚拟机的容量从20G扩大到25G

编辑虚拟机设置 :

在这里插入图片描述
硬盘 - 扩展磁盘容量 :
在这里插入图片描述
填入扩容后大小:
在这里插入图片描述

以下在ubuntu/linux里操作:

查看当前分区情况:

biren@ubuntu:~$ df -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  955M     0  955M   0% /dev
tmpfs          tmpfs     196M  1.8M  195M   1% /run
/dev/sda1      ext4       20G   19G  498M  98% /      只剩下542M空间,ext4格式
tmpfs          tmpfs     980M     0  980M   0% /dev/shm
tmpfs          tmpfs     5.0M  4.0K  5.0M   1% /run/lock
tmpfs          tmpfs     980M     0  980M   0% /sys/fs/cgroup
/dev/loop0     squashfs  768K  768K     0 100% /snap/gnome-characters/741
......
biren@ubuntu:~/crossbuild$ sudo fdisk -l

Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors  共25G空间
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: dos
Disk identifier: 0x305e1b1e

Device     Boot Start      End  Sectors Size Id Type
/dev/sda1  *     2048 41940991 41938944  20G 83 Linux    第一块磁盘的第一分区
其它略...

可以看到/dev/sda共25G,实际使用的还是20G(/dev/sda1)

新增分区:

命令: sudo fdisk /dev/sda

biren@ubuntu:~/crossbuild$ sudo fdisk /dev/sda
[sudo] password for biren: 

Welcome to fdisk (util-linux 2.31.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

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

Help:
  DOS (MBR)
   a   toggle a bootable flag  设置启动标记
   b   edit nested BSD disklabel
   c   toggle the dos compatibility flag

  Generic
   d   delete a partition    删除分区
   F   list free unpartitioned space
   l   list known partition types  列出分区类型,如 83/8e
   n   add a new partition           增加分区
   p   print the partition table
   t   change a partition type      改变分区类型, 83为linux, 8e为lvm, 82为swap交换分区, 6为fat16, 7为nfs
   v   verify the partition table
   i   print information about a partition

  Misc
   m   print this menu
   u   change display/entry units
   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): 

选择: n , 即增加分区

Command (m for help): n
Partition type
   p   primary (1 primary, 0 extended, 3 free)      主分区
   e   extended (container for logical partitions) 扩展分区
Select (default p): p            回车默认即可
Partition number (2-4, default 2): 回车默认即可
First sector (41940992-52428799, default 41940992): 回车默认即可
Last sector, +sectors or +size{K,M,G,T,P} (41940992-52428799, default 52428799): 回车默认即可

Created a new partition 2 of type 'Linux' and of size 5 GiB.
Command (m for help): 

接头选择: w (表示写入分区表并退出)

Command (m for help): w
The partition table has been altered.
Syncing disks.

查看结果:

biren@ubuntu:~/crossbuild$ sudo fdisk -l

Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors
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: dos
Disk identifier: 0x305e1b1e

Device     Boot    Start      End  Sectors Size Id Type
/dev/sda1  *        2048 41940991 41938944  20G 83 Linux
/dev/sda2       41940992 52428799 10487808   5G 83 Linux    新增加的, ID为83
biren@ubuntu:~$ lsblk
sda      8:0    0    25G  0 disk 
├─sda1   8:1    0    20G  0 part /    根分区
└─sda2   8:2    0     5G  0 part       注意:type类型是part, 不是lvm

刷新分区表时提示要重启:

biren@ubuntu:~/crossbuild$ sudo partprobe /dev/sda2
Error: Partition(s) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64 on /dev/sda2 have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use.  As a result, the old partition(s) will remain in use.  You should reboot now before making further changes.

biren@ubuntu:~$ sudo partprobe /dev/sda
或 biren@ubuntu:~$ sudo partprobe

重启。。。
安装逻辑卷管理器lvm2 :
lvm管理原理:大致是新建物理卷pv,新建卷组vg或用旧的vg,将多个pv加入vg里,从vg里再分区建立逻辑卷lv, 扩容则扩大lv (在lv基础上创建文件系统)

biren@ubuntu:~$ sudo apt-get install lvm2

将物理磁盘分区初始化为物理卷:
命令 : sudo pvcreate /dev/sda2

biren@ubuntu:~$ sudo pvcreate /dev/sda2
  Physical volume "/dev/sda2" successfully created.

查看:

  • PV name : Physical volume name ,物理卷
  • VG name : Volume Group name ,卷组,多个PV组成VG
  • LV : Logical Volume ,逻辑卷,是从vg中分出来的空间,用于创建文件系统
biren@ubuntu:~$ sudo pvdisplay
  "/dev/sda2" is a new physical volume of "5.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sda2
  VG Name                                 为空表示没有分组(因为当前只有一块磁盘,一个分区)
  PV Size               5.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               BmvOyc-hy2d-YnJS-hwnu-aFfV-NqTd-gXqFAT

biren@ubuntu:~$ sudo vgdisplay            结果没内容,说明没有分组
biren@ubuntu:~$ sudo blkid
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
/dev/loop2: TYPE="squashfs"
/dev/loop3: TYPE="squashfs"
/dev/loop4: TYPE="squashfs"
/dev/loop5: TYPE="squashfs"
/dev/loop6: TYPE="squashfs"
/dev/loop7: TYPE="squashfs"
/dev/sda1: UUID="b19b2c95-bd2c-4078-af6d-e09aadd02861" TYPE="ext4" PARTUUID="305e1b1e-01"
/dev/sda2: UUID="BmvOyc-hy2d-YnJS-hwnu-aFfV-NqTd-gXqFAT" TYPE="LVM2_member" PARTUUID="305e1b1e-02"
/dev/loop8: TYPE="squashfs"
  • /dev/sda1 : type=“ext4”
  • /dev/sda2 : type=“LVM2_member”

由于没有vg卷组和类型不一样,此时可以用如下两种方法解决:

第一种方法:(前面创建物理卷可不要)

先删除所有分区,然后重新只分成一个区,但起始地址一定要与原来一样的。
当前情况:记住起始地址2048

biren@ubuntu:~$ sudo pvs
  PV         VG Fmt  Attr PSize PFree
  /dev/sda2     lvm2 ---  5.00g 5.00g

biren@ubuntu:~$ sudo fdisk -l /dev/sda
Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors
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: dos
Disk identifier: 0x305e1b1e

Device     Boot    Start      End  Sectors Size Id Type
/dev/sda1  *        2048 41940991 41938944  20G 83 Linux   记住起始地址2048
/dev/sda2       41940992 52428799 10487808   5G 83 Linux

先删除所有分区 - 新建分区 - 保存退出:

biren@ubuntu:~$ sudo fdisk /dev/sda

Welcome to fdisk (util-linux 2.31.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): d    删除分区
Partition number (1,2, default 2): 2  分区号

Partition 2 has been deleted.

Command (m for help): d
Selected partition 1
Partition 1 has been deleted.

Command (m for help): p
Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors
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: dos
Disk identifier: 0x305e1b1e

Command (m for help): n    新建分区
Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): p     主分区
Partition number (1-4, default 1): 默认即可
First sector (2048-52428799, default 2048):  默认即可
Last sector, +sectors or +size{K,M,G,T,P} (2048-52428799, default 52428799): 默认即可

Created a new partition 1 of type 'Linux' and of size 25 GiB.
Partition #1 contains a ext4 signature.

Do you want to remove the signature? [Y]es/[N]o: n   这里一定要选n

Command (m for help): w     保存退出

The partition table has been altered.
Syncing disks.

看一下新的现状:

biren@ubuntu:~$ sudo fdisk -l /dev/sda
Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors
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: dos
Disk identifier: 0x305e1b1e

Device     Boot Start      End  Sectors Size Id Type
/dev/sda1        2048 52428799 52426752  25G 83 Linux

biren@ubuntu:~$ sudo lsblk
sda      8:0    0    25G  0 disk 
└─sda1   8:1    0    25G  0 part /      sda1显示25GB 

  biren@ubuntu:~$ sudo blkid
/dev/sda1: UUID="b19b2c95-bd2c-4078-af6d-e09aadd02861" TYPE="ext4" PARTUUID="305e1b1e-01"

biren@ubuntu:~$ df -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  955M     0  955M   0% /dev
tmpfs          tmpfs     196M  1.8M  195M   1% /run
/dev/sda1      ext4       20G   19G  458M  98% /     目前没生效
tmpfs          tmpfs     980M     0  980M   0% /dev/shm
。。。

刷新分区大小:

命令:

  • ext4用 : sudo resize2fs /dev/sda1
  • xfs用: xfs_growfs /dev/sda1
biren@ubuntu:~$ sudo partprobe /dev/sda

biren@ubuntu:~$ sudo resize2fs /dev/sda1
resize2fs 1.44.1 (24-Mar-2018)
Filesystem at /dev/sda1 is mounted on /; on-line resizing required
old_desc_blocks = 3, new_desc_blocks = 4
The filesystem on /dev/sda1 is now 6553344 (4k) blocks long.

分区大小已经更新完成了:

biren@ubuntu:~$ df -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  955M     0  955M   0% /dev
tmpfs          tmpfs     196M  1.8M  195M   1% /run
/dev/sda1      ext4       25G   19G  5.2G  78% /        变成25G了
tmpfs          tmpfs     980M     0  980M   0% /dev/shm
。。。

第二种方法:

安装gparted工具:

biren@ubuntu:~$ sudo apt install gparted

打开gparted :
在这里插入图片描述
先删除sda2(如果有unallocated空间则直接扩容):
在这里插入图片描述
修改大小:
在这里插入图片描述
拉动箭头或直接输入新的大小:
在这里插入图片描述
应用修改:
在这里插入图片描述
在这里插入图片描述
另外说明 :

格式化命令:mkfs + 文件系统格式
mkfs.bfs
mkfs.ext2
mkfs.ext3
mkfs.ext4 格式化成ext4文件系统
mkfs.jfs
mkfs.msdos
mkfs.vfat
mkfs.cramfs
mkfs.minix
mkfs.reiserfs
mkfs.xfs 新一代64位日志文件系统

格式化:

  • sudo mke2fs -t ext4 -L ‘mydisk’ /dev/sda2 是将/dev/sda2分区格式化为ext4的文件系统
  • mkfs -t ext3 /dev/sda3 //在硬盘分区“/dev/sda3”上创建ext3文件系统
  • 8
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
### 回答1: 要扩展Linux虚拟机磁盘,需要先在虚拟机管理软件中将虚拟硬盘的大小扩展。然后,在Linux系统中使用命令行工具来扩展分区和文件系统。 具体步骤如下: 1. 在虚拟机管理软件中将虚拟硬盘的大小扩展。 2. 在Linux系统中使用fdisk命令查看分区情况,找到需要扩展的分区。 3. 使用fdisk命令删除需要扩展的分区,并重新创建一个新的分区,将其大小设置为扩展后的大小。 4. 使用partprobe命令重新加载分区表。 5. 使用resize2fs命令扩展文件系统。 6. 最后,使用df命令检查文件系统的大小是否已经扩展。 注意:在进行磁盘扩容操作时,一定要备份重要数据,以免数据丢失。 ### 回答2: 虚拟机磁盘扩容是很常见的操作,因为随着系统和应用的使用,磁盘空间会逐渐满足不了需求。Linux虚拟机磁盘扩容的操作步骤主要包括两个部分:虚拟机的硬盘扩容虚拟机操作系统的磁盘容量扩展。 硬盘扩容的步骤如下: 1. 关闭虚拟机,进入虚拟机监控器的管理界面进行设置。 2. 选择适当的存储设备进行扩容。 3. 在“编辑虚拟机设置”中,选择“硬件”选项卡,然后选择“硬盘”。 4. 找到要扩容的硬盘的相关信息,选择“扩展”选项。 5. 输入要扩展的大小(以GB为单位),点击“完成”。 磁盘容量扩展的步骤如下: 1. 开启虚拟机。 2. 在虚拟机中输入“fdisk -l”查看已有磁盘分区信息。 3. 将磁盘进行扩容后,需要重新加载分区表:输入“partprobe”命令。 4. 找到要扩容的分区,使用“fdisk /dev/xxx”进行磁盘分区。 5. 输入“n -> p -> ”等一系列选项设置分区大小。 6. 输入“wq”保存分区的设置。 以上是在Linux虚拟机上进行磁盘扩容的基本步骤。虽然操作比较繁琐,但是这种方法非常有用,可以满足虚拟机使用过程中磁盘容量发生变化的需求。这样就可以继续使用虚拟机,并且数据不会丢失。 ### 回答3: 在使用Linux虚拟机时,如果磁盘空间不足了,需要对磁盘进行扩容。下面介绍两种方式。 一、使用vmware工具进行扩容 1.在虚拟机所在的主机上,找到已停止运行的虚拟机,使用虚拟机编辑器(右键点击虚拟机,选择编辑设置),将虚拟磁盘大小扩大。 2.启动虚拟机并登录,使用lsblk命令来查看磁盘情况,看到磁盘已经扩大了但是分区表并没有更新。 3.输入fdisk /dev/sda命令,然后输入p显示目前磁盘情况,使用n来创建新的分区,输入w保存。 4.重启虚拟机,使用resize2fs /dev/sda1命令调整磁盘大小,完成扩容。 二、使用VMware的命令行工具进行扩容 1.在虚拟机所在的主机上,找到已停止运行的虚拟机,使用ssh连接到虚拟机,输入fdisk –l来查看磁盘情况。 2.使用vmware-vdiskmanager命令进行扩容,如下所示: vmware-vdiskmanager -x 20GB /path/to/virtual.disk 则表示将/path/to/virtual.disk文件大小改变至20GB。 3.重启虚拟机,在命令行中使用fdisk –l命令来查看磁盘情况,发现磁盘大小已经扩大了,但分区表并没有更新。 4.输入fdisk /dev/sda命令,然后输入p显示目前磁盘情况,使用n来创建新的分区,输入w保存。 5.重启虚拟机,使用resize2fs /dev/sda1命令调整磁盘大小,完成扩容。 总的来说,使用vmware工具进行扩容方便,但是需要先停机,使用命令行工具可以不停机,但是操作可能比较麻烦。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知行电子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值