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

相关推荐
zx_741484811 小时前
【Linux入门】Linux 安装:VMware Workstation Pro 安装 CentOS 7 保姆级图文教程
linux·centos
名字还没想好☜2 小时前
Docker buildx 多架构镜像实战:一次构建 amd64+arm64,告别 exec format error
运维·docker·eureka·架构·kubernetes
智购科技无人售货机厂家2 小时前
2026自动售货机备用电池管理系统设计:从充放电保护到健康监测的工程实践~YH
大数据·linux·单片机·嵌入式硬件·微信
小雪崩2 小时前
嵌入式学习 day39:TCP并发服务器模型
linux·服务器·c语言·网络·学习·tcp/ip
智购无人售货机厂家2 小时前
2026自动售货机软硬件版本管理策略:从版本号规范到兼容性矩阵的工程实践~YH
运维·服务器·人工智能·单片机·嵌入式硬件·线性代数·矩阵
spencer_tseng3 小时前
[j2cache ehcache.xml]/tmp/.ehcache-diskstore.lock (Permission denied)
xml·linux·python·ehcache·[j2cache
内核笔记3 小时前
休眠唤醒 standby 调试
linux·bsp
小白不想画工图3 小时前
银河麒麟V10系统安装QT5.12
linux·开发语言·qt·银河麒麟
bksczm3 小时前
Linux 五种 I/O 模型与多路复用详解
运维·服务器·网络
wjcroom3 小时前
FileBrowser的docker运行了改变密码长度的做法
运维·docker·容器