在vmware workstation安装了银河麒麟桌面操作系统V11初始磁盘60GB安装时启用了LVM。安装结束后系统显示磁盘使用率高达95%以上。在vmware扩展磁盘容量增加20GB。经历几次错误最终在豆包的协助下完成了扩容。要点磁盘扩容前要分析并弄清磁盘的分区结构把命令的完整运行结果发送给AI分析效果立竿见影。kylinkylinpc:~$sudo growpart /dev/sda 5输入密码attempt to resize /dev/sda failed. sfdisk output below:| Backup files:| MBR (offset 0, size 512): /tmp/growpart.8S5Smx/orig.save-sda-0x00000000.bak| EBR (offset 2150629376, size 512): /tmp/growpart.8S5Smx/orig.save-sda-0x80300000.bak|| Disk /dev/sda: 80 GiB, 85899345920 bytes, 167772160 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: dos| Disk identifier: 0x2b148c33|| Old situation:|| Device Boot Start End Sectors Size Id Type| /dev/sda1 * 2048 4196351 4194304 2G 83 Linux| /dev/sda2 4200448 125829119 121628672 58G f W95 Extd (LBA)| /dev/sda5 4202496 125829119 121626624 58G 83 Linux|| Script header accepted.| Script header accepted.| Script header accepted.| Script header accepted.| Script header accepted.| Created a new DOS (MBR) disklabel with disk identifier 0x2b148c33.| /dev/sda1: Created a new partition 1 of type Linux and of size 2 GiB.| Partition #1 contains a ext4 signature.| /dev/sda2: Created a new partition 2 of type W95 Extd (LBA) and of size 58 GiB.| /dev/sda3: No free sectors available.| Failed to add #3 partition: No space left on device| Leaving.|FAILED: failed to resize***** WARNING: Resize failed, attempting to revert ******输入了 5120 块记录输出了 5120 块记录512 字节已复制0.000477829 s1.1 MB/s输入了 5120 块记录输出了 5120 块记录512 字节已复制0.000430243 s1.2 MB/s***** Restore appears to have gone OK ****豆包的分析先把结论说清楚你现在这个报错不是“磁盘没空间”而是MBR分区表扩展分区结构导致growpart没法往后扩而且你这个盘已经被sda2扩展分区占满了后面没有空闲扇区所以提示No space left on device。从你的输出看关键这一段/dev/sda2 4200448 125829119 121628672 58G f W95 Extd (LBA)/dev/sda5 4202496 125829119 121626624 58G 83 Linux整个磁盘 80Gsda12G主分区sda258G 扩展分区从 4200448 一直到磁盘末尾sda5就在 sda2 里面已经吃到扩展分区末尾了问题你在虚拟机里虽然把磁盘加到了 80G但 后面的空间没有变成 “未分配”分区表还是旧结构。MBR 最多 4 个主分区你现在用的是 扩展分区 逻辑分区 (sda5) 的结构growpart 对这种老结构支持很差。整个 sda2 已经占满磁盘后面没有空闲空间可以扩所以 growpart /dev/sda 5 直接失败。一、先确认虚拟机侧有没有真正扩容为什么你用 growpart 失败growpart 对 嵌套的扩展分区sda2 包着 sda5 支持很烂。它会试图新建主分区而 MBR 只能最多 4 个你已经用了 sda1、sda2再加就报错 No space left on device。不是磁盘满是 分区表类型 结构不支持 growpart 自动扩。kylinkylinpc:~$ lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTSsda8:0 0 80G 0 disk├─sda1 8:1 0 2G 0 part /boot├─sda2 8:2 0 1K 0 part└─sda5 8:5 0 58G 0 part├─kylin--vg-root 253:0 0 32.1G 0 lvm /sysroot/ostree/deploy/kylin/var│ /var│ /sysroot│ /usr│ /├─kylin--vg-data 253:1 0 21.4G 0 lvm /root│ /home│ /data└─kylin--vg-swap 253:2 0 4.5G 0 lvm [SWAP]sr0 11:0 1 7.6G 0 rom /run/media/henry/Kylin-Desktop-V11上述内容豆包的分析我现在完全看清你的磁盘结构了你这是LVM分区 MBR扩展分区所以不能用growpart之前的报错完全正常。我给你用最简单、最安全、一步到位的方法扩容直接复制命令就能完成。你的磁盘现状关键磁盘总大小80G已经扩成功了分区结构sda1/boot 2Gsda2扩展分区占了 58Gsda5LVM 物理卷在 sda2 里58G系统用LVM管理root系统盘 32.1Gdata/home /root 21.4Gswap4.5G你现在要做的只有3步扩大sda2扩展分区到 80G扩大sda5逻辑分区到 80GLVM 扩容系统自动识别新增空间推荐的操作1、安装parted如果有可省略此步骤Sudo apt install parted -y2、扩容sda2扩展分区sudo parted /dev/sda resizepart 2 100%3、扩容sda5LVM物理卷sudo parted /dev/sda resizepart 5 100%4、让系统识别新分区大小sudo partprobe /dev/sda5、扩容LVM物理卷sudo pvresize /dev/sda56、查看新增加了多少空间sudovgs7、扩展指定分区sudolvextend-l100%FREE /dev/mapper/kylin--vg-rootsudoresize2fs /dev/mapper/kylin--vg-root然后按图索骥操作完成加粗的部分是运行命令kylinkylinpc:~$sudo apt install parted -y正在读取软件包列表... 完成正在分析软件包的依赖关系树... 完成正在读取状态信息... 完成parted 已经是最新版 (3.6-ok3k0.3)。parted 已设置为手动安装。下列软件包是自动安装的并且现在不需要了archdetect-deb dmeventd finalrd libaio1t64 libdebian-installer4 libdevmapper-event1.02.1 liblvm2cmd2.03 lvm2user-setup使用sudo apt autoremove来卸载它(它们)。升级了 0 个软件包新安装了 0 个软件包要卸载 0 个软件包有 238 个软件包未被升级。kylinkylinpc:~$sudo parted /dev/sda resizepart 2 100%信息: 你可能需要 /etc/fstab。kylinkylinpc:~$sudo parted /dev/sda resizepart 5 100%信息: 你可能需要 /etc/fstab。kylinkylinpc:~$sudo partprobe /dev/sdakylinkylinpc:~$sudo pvresize /dev/sda5Physical volume /dev/sda5 changed1 physical volume(s) resized or updated / 0 physical volume(s) not resizedkylinkylinpc:~$sudo vgsVG #PV #LV #SN Attr VSize VFreekylin-vg 1 3 0 wz--n- 77.99g 20.00gkylinkylinpc:~$sudo lvextend -l 100%FREE /dev/mapper/kylin--vg-rootsudo resize2fs /dev/mapper/kylin--vg-rootSize of logical volume kylin-vg/root changed from 32.09 GiB (8214 extents) to 52.09 GiB (13334 extents).Logical volume kylin-vg/root successfully resized.resize2fs 1.47.0 (5-Feb-2023)/dev/mapper/kylin--vg-root 上的文件系统已被挂载于 /需要进行在线调整大小old_desc_blocks 5, new_desc_blocks 7/dev/mapper/kylin--vg-root 上的文件系统大小已经调整为 13654016 个块每块 4k。kylinkylinpc:~$df -h文件系统 大小 已用 可用 已用% 挂载点tmpfs 389M 19M 370M 5% /run/dev/mapper/kylin--vg-root 51G 29G 20G 60% /overlay 51G 29G 20G 60% /usroverlay 51G 29G 20G 60% /etcoverlay 51G 29G 20G 60% /var/libtmpfs 1.9G 240K 1.9G 1% /dev/shmtmpfs 5.0M 8.0K 5.0M 1% /run/lock/dev/sda1 2.0G 85M 1.8G 5% /boot/dev/mapper/kylin--vg-data 21G 961M 19G 5% /datatmpfs 389M 256K 389M 1% /run/user/1000/dev/sr0 7.7G 7.7G 0 100% /run/media/henry/Kylin-Desktop-V11kylinkylinpc:~$sudo pvsPV VG Fmt Attr PSize PFree/dev/sda5 kylin-vg lvm2 a-- 77.99g 0kylinkylinpc:~$sudo pvdisplay--- Physical volume ---PV Name /dev/sda5VG Name kylin-vgPV Size 78.00 GiB / not usable 3.00 MiBAllocatable yes (but full)PE Size 4.00 MiBTotal PE 19966Free PE 0Allocated PE 19966PV UUID nZRWpi-szBr-p8kZ-ygL2-VMBM-VWuj-k7IbPekylinkylinpc:~$sudo lvdisplay--- Logical volume ---LV Path /dev/kylin-vg/rootLV Name rootVG Name kylin-vgLV UUID N7vMBZ-1bq0-sT2X-OZ0g-ICcK-scvv-IVl0A5LV Write Access read/writeLV Creation host, time kylin, 2026-05-29 10:24:02 0800LV Status available# open 1LV Size 52.09 GiBCurrent LE 13334Segments 2Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:0--- Logical volume ---LV Path /dev/kylin-vg/dataLV Name dataVG Name kylin-vgLV UUID DcyYmq-A5cu-oYZn-zFjs-iiwL-3fDZ-d8vcmNLV Write Access read/writeLV Creation host, time kylin, 2026-05-29 10:24:03 0800LV Status available# open 1LV Size 21.38 GiBCurrent LE 5474Segments 1Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:1--- Logical volume ---LV Path /dev/kylin-vg/swapLV Name swapVG Name kylin-vgLV UUID 3HwBL0-aTkO-qp7C-ULVZ-THW3-XtAd-cFCSc7LV Write Access read/writeLV Creation host, time kylin, 2026-05-29 10:24:03 0800LV Status available# open 2LV Size 4.52 GiBCurrent LE 1158Segments 1Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:2kylinkylinpc:~$sudo fdisk -lDisk /dev/sda80 GiB85899345920 字节167772160 个扇区Disk model: VMware Virtual S单元扇区 / 1 * 512 512 字节扇区大小(逻辑/物理)512 字节 / 512 字节I/O 大小(最小/最佳)512 字节 / 512 字节磁盘标签类型dos磁盘标识符0x2b148c33设备 启动 起点 末尾 扇区 大小 Id 类型/dev/sda1 * 2048 4196351 4194304 2G 83 Linux/dev/sda2 4200448 167772159 163571712 78G f W95扩展 (LBA)/dev/sda5 4202496 167772159 163569664 78G 83 LinuxDisk /dev/mapper/kylin--vg-root52.09 GiB55926849536 字节109232128 个扇区单元扇区 / 1 * 512 512 字节扇区大小(逻辑/物理)512 字节 / 512 字节I/O 大小(最小/最佳)512 字节 / 512 字节Disk /dev/mapper/kylin--vg-data21.38 GiB22959620096 字节44843008 个扇区单元扇区 / 1 * 512 512 字节扇区大小(逻辑/物理)512 字节 / 512 字节I/O 大小(最小/最佳)512 字节 / 512 字节Disk /dev/mapper/kylin--vg-swap4.52 GiB4857004032 字节9486336 个扇区单元扇区 / 1 * 512 512 字节扇区大小(逻辑/物理)512 字节 / 512 字节I/O 大小(最小/最佳)512 字节 / 512 字节
为银河麒麟桌面版V11硬盘扩容
在vmware workstation安装了银河麒麟桌面操作系统V11初始磁盘60GB安装时启用了LVM。安装结束后系统显示磁盘使用率高达95%以上。在vmware扩展磁盘容量增加20GB。经历几次错误最终在豆包的协助下完成了扩容。要点磁盘扩容前要分析并弄清磁盘的分区结构把命令的完整运行结果发送给AI分析效果立竿见影。kylinkylinpc:~$sudo growpart /dev/sda 5输入密码attempt to resize /dev/sda failed. sfdisk output below:| Backup files:| MBR (offset 0, size 512): /tmp/growpart.8S5Smx/orig.save-sda-0x00000000.bak| EBR (offset 2150629376, size 512): /tmp/growpart.8S5Smx/orig.save-sda-0x80300000.bak|| Disk /dev/sda: 80 GiB, 85899345920 bytes, 167772160 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: dos| Disk identifier: 0x2b148c33|| Old situation:|| Device Boot Start End Sectors Size Id Type| /dev/sda1 * 2048 4196351 4194304 2G 83 Linux| /dev/sda2 4200448 125829119 121628672 58G f W95 Extd (LBA)| /dev/sda5 4202496 125829119 121626624 58G 83 Linux|| Script header accepted.| Script header accepted.| Script header accepted.| Script header accepted.| Script header accepted.| Created a new DOS (MBR) disklabel with disk identifier 0x2b148c33.| /dev/sda1: Created a new partition 1 of type Linux and of size 2 GiB.| Partition #1 contains a ext4 signature.| /dev/sda2: Created a new partition 2 of type W95 Extd (LBA) and of size 58 GiB.| /dev/sda3: No free sectors available.| Failed to add #3 partition: No space left on device| Leaving.|FAILED: failed to resize***** WARNING: Resize failed, attempting to revert ******输入了 5120 块记录输出了 5120 块记录512 字节已复制0.000477829 s1.1 MB/s输入了 5120 块记录输出了 5120 块记录512 字节已复制0.000430243 s1.2 MB/s***** Restore appears to have gone OK ****豆包的分析先把结论说清楚你现在这个报错不是“磁盘没空间”而是MBR分区表扩展分区结构导致growpart没法往后扩而且你这个盘已经被sda2扩展分区占满了后面没有空闲扇区所以提示No space left on device。从你的输出看关键这一段/dev/sda2 4200448 125829119 121628672 58G f W95 Extd (LBA)/dev/sda5 4202496 125829119 121626624 58G 83 Linux整个磁盘 80Gsda12G主分区sda258G 扩展分区从 4200448 一直到磁盘末尾sda5就在 sda2 里面已经吃到扩展分区末尾了问题你在虚拟机里虽然把磁盘加到了 80G但 后面的空间没有变成 “未分配”分区表还是旧结构。MBR 最多 4 个主分区你现在用的是 扩展分区 逻辑分区 (sda5) 的结构growpart 对这种老结构支持很差。整个 sda2 已经占满磁盘后面没有空闲空间可以扩所以 growpart /dev/sda 5 直接失败。一、先确认虚拟机侧有没有真正扩容为什么你用 growpart 失败growpart 对 嵌套的扩展分区sda2 包着 sda5 支持很烂。它会试图新建主分区而 MBR 只能最多 4 个你已经用了 sda1、sda2再加就报错 No space left on device。不是磁盘满是 分区表类型 结构不支持 growpart 自动扩。kylinkylinpc:~$ lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTSsda8:0 0 80G 0 disk├─sda1 8:1 0 2G 0 part /boot├─sda2 8:2 0 1K 0 part└─sda5 8:5 0 58G 0 part├─kylin--vg-root 253:0 0 32.1G 0 lvm /sysroot/ostree/deploy/kylin/var│ /var│ /sysroot│ /usr│ /├─kylin--vg-data 253:1 0 21.4G 0 lvm /root│ /home│ /data└─kylin--vg-swap 253:2 0 4.5G 0 lvm [SWAP]sr0 11:0 1 7.6G 0 rom /run/media/henry/Kylin-Desktop-V11上述内容豆包的分析我现在完全看清你的磁盘结构了你这是LVM分区 MBR扩展分区所以不能用growpart之前的报错完全正常。我给你用最简单、最安全、一步到位的方法扩容直接复制命令就能完成。你的磁盘现状关键磁盘总大小80G已经扩成功了分区结构sda1/boot 2Gsda2扩展分区占了 58Gsda5LVM 物理卷在 sda2 里58G系统用LVM管理root系统盘 32.1Gdata/home /root 21.4Gswap4.5G你现在要做的只有3步扩大sda2扩展分区到 80G扩大sda5逻辑分区到 80GLVM 扩容系统自动识别新增空间推荐的操作1、安装parted如果有可省略此步骤Sudo apt install parted -y2、扩容sda2扩展分区sudo parted /dev/sda resizepart 2 100%3、扩容sda5LVM物理卷sudo parted /dev/sda resizepart 5 100%4、让系统识别新分区大小sudo partprobe /dev/sda5、扩容LVM物理卷sudo pvresize /dev/sda56、查看新增加了多少空间sudovgs7、扩展指定分区sudolvextend-l100%FREE /dev/mapper/kylin--vg-rootsudoresize2fs /dev/mapper/kylin--vg-root然后按图索骥操作完成加粗的部分是运行命令kylinkylinpc:~$sudo apt install parted -y正在读取软件包列表... 完成正在分析软件包的依赖关系树... 完成正在读取状态信息... 完成parted 已经是最新版 (3.6-ok3k0.3)。parted 已设置为手动安装。下列软件包是自动安装的并且现在不需要了archdetect-deb dmeventd finalrd libaio1t64 libdebian-installer4 libdevmapper-event1.02.1 liblvm2cmd2.03 lvm2user-setup使用sudo apt autoremove来卸载它(它们)。升级了 0 个软件包新安装了 0 个软件包要卸载 0 个软件包有 238 个软件包未被升级。kylinkylinpc:~$sudo parted /dev/sda resizepart 2 100%信息: 你可能需要 /etc/fstab。kylinkylinpc:~$sudo parted /dev/sda resizepart 5 100%信息: 你可能需要 /etc/fstab。kylinkylinpc:~$sudo partprobe /dev/sdakylinkylinpc:~$sudo pvresize /dev/sda5Physical volume /dev/sda5 changed1 physical volume(s) resized or updated / 0 physical volume(s) not resizedkylinkylinpc:~$sudo vgsVG #PV #LV #SN Attr VSize VFreekylin-vg 1 3 0 wz--n- 77.99g 20.00gkylinkylinpc:~$sudo lvextend -l 100%FREE /dev/mapper/kylin--vg-rootsudo resize2fs /dev/mapper/kylin--vg-rootSize of logical volume kylin-vg/root changed from 32.09 GiB (8214 extents) to 52.09 GiB (13334 extents).Logical volume kylin-vg/root successfully resized.resize2fs 1.47.0 (5-Feb-2023)/dev/mapper/kylin--vg-root 上的文件系统已被挂载于 /需要进行在线调整大小old_desc_blocks 5, new_desc_blocks 7/dev/mapper/kylin--vg-root 上的文件系统大小已经调整为 13654016 个块每块 4k。kylinkylinpc:~$df -h文件系统 大小 已用 可用 已用% 挂载点tmpfs 389M 19M 370M 5% /run/dev/mapper/kylin--vg-root 51G 29G 20G 60% /overlay 51G 29G 20G 60% /usroverlay 51G 29G 20G 60% /etcoverlay 51G 29G 20G 60% /var/libtmpfs 1.9G 240K 1.9G 1% /dev/shmtmpfs 5.0M 8.0K 5.0M 1% /run/lock/dev/sda1 2.0G 85M 1.8G 5% /boot/dev/mapper/kylin--vg-data 21G 961M 19G 5% /datatmpfs 389M 256K 389M 1% /run/user/1000/dev/sr0 7.7G 7.7G 0 100% /run/media/henry/Kylin-Desktop-V11kylinkylinpc:~$sudo pvsPV VG Fmt Attr PSize PFree/dev/sda5 kylin-vg lvm2 a-- 77.99g 0kylinkylinpc:~$sudo pvdisplay--- Physical volume ---PV Name /dev/sda5VG Name kylin-vgPV Size 78.00 GiB / not usable 3.00 MiBAllocatable yes (but full)PE Size 4.00 MiBTotal PE 19966Free PE 0Allocated PE 19966PV UUID nZRWpi-szBr-p8kZ-ygL2-VMBM-VWuj-k7IbPekylinkylinpc:~$sudo lvdisplay--- Logical volume ---LV Path /dev/kylin-vg/rootLV Name rootVG Name kylin-vgLV UUID N7vMBZ-1bq0-sT2X-OZ0g-ICcK-scvv-IVl0A5LV Write Access read/writeLV Creation host, time kylin, 2026-05-29 10:24:02 0800LV Status available# open 1LV Size 52.09 GiBCurrent LE 13334Segments 2Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:0--- Logical volume ---LV Path /dev/kylin-vg/dataLV Name dataVG Name kylin-vgLV UUID DcyYmq-A5cu-oYZn-zFjs-iiwL-3fDZ-d8vcmNLV Write Access read/writeLV Creation host, time kylin, 2026-05-29 10:24:03 0800LV Status available# open 1LV Size 21.38 GiBCurrent LE 5474Segments 1Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:1--- Logical volume ---LV Path /dev/kylin-vg/swapLV Name swapVG Name kylin-vgLV UUID 3HwBL0-aTkO-qp7C-ULVZ-THW3-XtAd-cFCSc7LV Write Access read/writeLV Creation host, time kylin, 2026-05-29 10:24:03 0800LV Status available# open 2LV Size 4.52 GiBCurrent LE 1158Segments 1Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:2kylinkylinpc:~$sudo fdisk -lDisk /dev/sda80 GiB85899345920 字节167772160 个扇区Disk model: VMware Virtual S单元扇区 / 1 * 512 512 字节扇区大小(逻辑/物理)512 字节 / 512 字节I/O 大小(最小/最佳)512 字节 / 512 字节磁盘标签类型dos磁盘标识符0x2b148c33设备 启动 起点 末尾 扇区 大小 Id 类型/dev/sda1 * 2048 4196351 4194304 2G 83 Linux/dev/sda2 4200448 167772159 163571712 78G f W95扩展 (LBA)/dev/sda5 4202496 167772159 163569664 78G 83 LinuxDisk /dev/mapper/kylin--vg-root52.09 GiB55926849536 字节109232128 个扇区单元扇区 / 1 * 512 512 字节扇区大小(逻辑/物理)512 字节 / 512 字节I/O 大小(最小/最佳)512 字节 / 512 字节Disk /dev/mapper/kylin--vg-data21.38 GiB22959620096 字节44843008 个扇区单元扇区 / 1 * 512 512 字节扇区大小(逻辑/物理)512 字节 / 512 字节I/O 大小(最小/最佳)512 字节 / 512 字节Disk /dev/mapper/kylin--vg-swap4.52 GiB4857004032 字节9486336 个扇区单元扇区 / 1 * 512 512 字节扇区大小(逻辑/物理)512 字节 / 512 字节I/O 大小(最小/最佳)512 字节 / 512 字节