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

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


⚠️ 重要提醒

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

一、VMware 中扩展虚拟磁盘

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

二、Kali 内部扩容操作

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

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

bash 复制代码
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 工具(如未安装):

bash 复制代码
sudo apt update
sudo apt install cloud-guest-utils

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

bash 复制代码
sudo growpart /dev/sda 3

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

验证分区扩展:

bash 复制代码
sudo lsblk

预期输出

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

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

让 LVM 识别分区的新大小:

bash 复制代码
sudo pvresize /dev/sda3

验证 PV 大小:

bash 复制代码
sudo pvs

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

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

bash 复制代码
sudo lvextend -l +100%FREE /dev/mapper/kali--vg-kali--lv

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

验证 LV 大小:

bash 复制代码
sudo lvs

步骤 5:扩展文件系统

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

ext4 文件系统

bash 复制代码
sudo resize2fs /dev/mapper/kali--vg-kali--lv

xfs 文件系统

bash 复制代码
sudo xfs_growfs /

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


步骤 6:验证扩容结果

bash 复制代码
df -h /

预期输出

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

根分区已成功扩展!


三、完整命令速查

bash 复制代码
# 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 扩展 → 文件系统扩展 四个步骤,缺一不可 。

相关推荐
t5y225 小时前
【Linux】定时任务调度
linux·服务器
HY小海5 小时前
【Linux】进程概念
linux·运维·服务器
王八八。6 小时前
linux后台java、postSQL部署命令
java·linux·运维
瑞熙贝通实验室综合管理平台6 小时前
实验动物管理系统|以痛点为核心 构建动物房数字化管理新体系
linux
TheRouter6 小时前
LLM 应用的Evals 工程实践:从手动测试到自动化回归测试体系
运维·ai·自动化·log4j
黎阳之光8 小时前
黎阳之光:以视频孪生重构智慧防火,打造“天空地人智”一体化森林防火新范式
大数据·运维·人工智能·物联网·安全
黄筱筱筱筱筱筱筱8 小时前
LINUX-防火墙
linux·服务器·网络
сокол9 小时前
【网安-Web渗透测试-靶场系列】AWD-Platform(ctf-hub)
linux·服务器·ubuntu·网络安全·docker
utf8mb4安全女神10 小时前
Linux系统服务相关命令【定时任务设置】【任务进程管理】【防火墙区域应用】
linux·运维·服务器
凯丨10 小时前
Claude Code 自动化开发的完整体系
运维·自动化