ESXi + Ubuntu + LVM 环境的 一键根分区自动扩容脚本

📜 脚本内容:expand-root-lvm.sh

#!/bin/bash

set -e

echo "🚀 自动扩容开始:ESXi + Ubuntu + LVM"

# 检查是否有 growpart 工具
if ! command -v growpart &> /dev/null; then
  echo "📦 安装 cloud-guest-utils(包含 growpart)..."
  sudo apt update && sudo apt install -y cloud-guest-utils
fi

# 扩展 sda3 分区
echo "🔧 扩展分区 /dev/sda3 ..."
sudo growpart /dev/sda 3

# 扩展 LVM 物理卷
echo "🔧 扩展物理卷 /dev/sda3 ..."
sudo pvresize /dev/sda3

# 扩展逻辑卷
echo "🔧 扩展逻辑卷 /dev/ubuntu-vg/ubuntu-lv ..."
sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv

# 扩展 ext4 文件系统
echo "🔧 扩展文件系统 / ..."
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv

# 显示最终容量
echo
echo "🎉 扩容完成!当前磁盘使用情况:"
df -h /

echo "✅ 如果你看到 Size 接近你的虚拟磁盘容量,那就成功啦!"

🧪 使用方法:

  1. 创建脚本文件:
nano expand-root-lvm.sh
  1. 粘贴以上内容,保存退出。
  2. 赋予执行权限:
chmod +x expand-root-lvm.sh
  1. 一键运行:
sudo ./expand-root-lvm.sh

🧠 注意事项:

  • 只适用于 默认 LVM 安装的 Ubuntu(你的是 ✔️)
  • 会自动安装 cloud-guest-utils(含 growpart
  • 自动扩展 /dev/sda3 → LVM → 文件系统
如果觉得我的文章对你有用,请随意赞赏