系统为 Kali 2026运行在虚拟机环境虚拟机磁盘扩容 根分区扩容推荐直接扩容/步骤 1在虚拟机平台扩展磁盘容量VMware Workstation/Player关闭 Kali 虚拟机 → 右键虚拟机 →管理 → 虚拟机设置选中Hard Disk (SCSI)→ 点击扩展→ 输入新的总容量比如从 50G 扩展到 100G→ 点击扩展启动 Kali 系统VirtualBox关闭 Kali 虚拟机 → 选中虚拟机 →设置 → 存储选中虚拟磁盘 → 点击属性 → 虚拟大小→ 调整容量 → 应用启动 Kali 系统步骤 2扩展/dev/sda分区根分区所在磁盘查看当前磁盘结构你已经执行过lsblk确认/在/dev/sda1安装gparted图形化分区工具操作更简单bash运行apt update apt install gparted -y打开gparted选中/dev/sda磁盘右键/dev/sda1→Resize/Move拖动滑块将未分配空间全部分配给/dev/sda1→ 点击Resize/Move点击顶部√ 应用所有操作→ 等待完成扩展 ext4 文件系统让系统识别新容量bash运行resize2fs /dev/sda1验证扩容结果bash运行df -TH /此时/目录的总容量会更新为扩展后的大小不能直接扩容核心问题是/dev/sda1 右侧有 72.59GiB 未分配空间但 GParted 无法直接扩容 /dev/sda1这是 Linux 经典的「主分区被扩展分区 /swap 阻挡」问题。 为什么不能直接扩容从 GParted 界面可以看到/dev/sda1 是主分区ext4挂载 /右侧紧邻的是 /dev/sda2 扩展分区占用了剩余全部磁盘空间看到的 72.59GiB 未分配空间位于 /dev/sda2 扩展分区内部而不是 /dev/sda1 的右侧磁盘分区的物理顺序是/dev/sda1 → /dev/sda2(extended) → 内部未分配空间GParted 无法直接跳过 /dev/sda2 给 /dev/sda1 扩容必须先处理 /dev/sda2关闭 swap 分区/dev/sda5 位于 /dev/sda2 内运行swapoff /dev/sda5确认 swap 已关闭swapon --show无输出则表示关闭成功阶段 2删除扩展分区 /dev/sda2释放空间注意/dev/sda2 是扩展分区内部只有 swap 分区 /dev/sda5删除不会影响根分区 /在 GParted 中右键 /dev/sda5swap 分区→ Delete右键 /dev/sda2extended 扩展分区→ Delete此时 72.59GiB 未分配空间会直接出现在 /dev/sda1 的右侧成为连续未分配空间阶段 3扩容 /dev/sda1 根分区右键 /dev/sda1 → Resize/Move拖动右侧滑块将 New size 拉到最大此时最大容量 原 47.41GiB 72.59GiB 120GiB点击 Resize 确认点击 GParted 顶部的 √ 应用所有操作等待扩容完成时间取决于数据量约 5-10 分钟阶段 4重建 swap 分区可选恢复系统功能如果需要保留 swap虚拟内存在扩容完成后在 /dev/sda1 右侧的剩余空间如果没全部分配给 /右键未分配空间 → New文件系统选择 linux-swap点击 Add应用操作后执行以下命令启用 swap# 格式化新swap分区假设新分区为/dev/sda2mkswap /dev/sda2# 启用swapswapon /dev/sda2# 配置开机自动挂载编辑/etc/fstabecho UUID$(blkid -s UUID -o value /dev/sda2) none swap sw 0 0 /etc/fstab阶段 5验证扩容成功执行命令查看根分区容量bash运行df -TH /此时 /dev/sda1 总容量会变为120GiB使用率从 91% 大幅下降执行 lsblk 确认分区结构正常⚠️ 关键注意事项避坑指南必须先关 swap如果不关闭 swapGParted 无法删除 /dev/sda5会提示「设备忙」不要动 /dev/sda1 的左侧空间Free space preceding 必须保持 0否则会破坏分区表扩容过程中不要断电 / 关机否则会导致文件系统损坏如果需要保留 swap 大小可以在扩容 /dev/sda1 时预留 2-4GiB 空间给 swap再重建