// 红队渗透 · 2026-05-02

Kali Linux 磁盘扩容后内部分配完整教程

适用场景:VMware/VirtualBox 等虚拟机中已扩展虚拟磁盘容量,但 Kali 系统内部根分区空间未增加。


⚠️ 重要提醒

  • 操作前务必备份虚拟机快照或重要数据,磁盘操作存在风险
  • 确保虚拟机处于 关机状态 时再进行虚拟磁盘扩容操作

一、VMware 中扩展虚拟磁盘

  1. 关闭 Kali 虚拟机
  2. 右键虚拟机 → 设置 → 硬盘 → 扩展
  3. 输入新的磁盘大小(如从 50GB 扩展到 100GB)
  4. 点击 确定 保存

二、Kali 内部扩容操作

启动 Kali 后,按以下步骤操作:

步骤 1:确认磁盘已识别新容量

sudo lsblk

预期输出示例:

NAME                      MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda                         8:0    0  100G  0 disk     ← 磁盘总容量已变为 100G
├─sda1                      8:1    0  512M  0 part /boot/efi
├─sda2                      8:2    0  244M  0 part /boot
└─sda3                      8:3    0   49G  0 part     ← 但 sda3 分区仍是 49G
  └─kali--vg-kali--lv     253:0    0   49G  0 lvm  /   ← 根分区也只有 49G

磁盘总容量增加了,但分区 sda3 和逻辑卷大小未变,需要手动扩展。


步骤 2:扩展物理分区

安装 growpart 工具(如未安装):

sudo apt update
sudo apt install cloud-guest-utils

扩展 /dev/sda3 分区到磁盘末尾:

sudo growpart /dev/sda 3

注意:growpart 后参数是 磁盘设备名 和 分区号,中间有空格,不是 /dev/sda3。

验证分区扩展:

sudo lsblk

预期输出:

sda                         8:0    0  100G  0 disk
└─sda3                      8:3    0   99G  0 part     ← sda3 已扩展到约 99G

步骤 3:扩展 LVM 物理卷(PV)

让 LVM 识别分区的新大小:

sudo pvresize /dev/sda3

验证 PV 大小:

sudo pvs

步骤 4:扩展逻辑卷(LV)

将卷组剩余空间全部分配给根分区:

sudo lvextend -l +100%FREE /dev/mapper/kali--vg-kali--lv

路径名可能不同,可用 sudo lvs 查看实际的逻辑卷名称。

验证 LV 大小:

sudo lvs

步骤 5:扩展文件系统

根据文件系统类型选择命令:

ext4 文件系统:

sudo resize2fs /dev/mapper/kali--vg-kali--lv

xfs 文件系统:

sudo xfs_growfs /

Kali 默认通常使用 ext4,可用 df -Th 查看文件系统类型确认 。


步骤 6:验证扩容结果

df -h /

预期输出:

Filesystem                      Size  Used Avail Use% Mounted on
/dev/mapper/kali--vg-kali--lv    98G   25G   69G  27% /

根分区已成功扩展!


三、完整命令速查

# 1. 确认磁盘容量
sudo lsblk

# 2. 扩展物理分区
sudo apt install cloud-guest-utils
sudo growpart /dev/sda 3

# 3. 扩展 PV
sudo pvresize /dev/sda3

# 4. 扩展 LV
sudo lvextend -l +100%FREE /dev/mapper/kali--vg-kali--lv

# 5. 扩展文件系统(ext4)
sudo resize2fs /dev/mapper/kali--vg-kali--lv

# 6. 验证
df -h /

四、常见问题

问题 原因 解决
growpart 报错 “NOCHANGE” 分区后无未分配空间 确认已在 VMware 中扩容虚拟磁盘
resize2fs 报错 “Bad magic number” 文件系统类型不是 ext4 用 df -Th 确认,xfs 用 xfs_growfs
逻辑卷路径名不对 不同版本命名不同 用 sudo lvs 查看实际路径
无法在线扩展 分区正在使用中 确保是根分区在线扩展,LVM 支持在线操作

五、LVM 扩容流程图

VMware 扩容虚拟磁盘
        ↓
Kali 识别新磁盘容量 (lsblk)
        ↓
扩展物理分区 (growpart /dev/sda 3)
        ↓
扩展物理卷 (pvresize /dev/sda3)
        ↓
扩展逻辑卷 (lvextend -l +100%FREE ...)
        ↓
扩展文件系统 (resize2fs / xfs_growfs)
        ↓
验证 (df -h)

总结:Kali 使用 LVM 管理分区,扩容需要依次完成 分区扩展 → PV 扩展 → LV 扩展 → 文件系统扩展 四个步骤,缺一不可 。

原文 https://blog.csdn.net/2301_79518550/article/details/160719214