Hướng dẫn resize ổ cứng trên Ubuntu Server (LVM)
📌 Áp dụng cho
-
Server Ubuntu sử dụng LVM (Logical Volume Manager)
-
Đã clone ổ cứng từ dung lượng nhỏ sang dung lượng lớn hơn (ví dụ: 512GB → 1TB → 2TB…)
-
Không muốn cài lại hệ điều hành, chỉ cần mở rộng dung lượng ổ đĩa
🔍 Bước 1: Kiểm tra cấu trúc ổ đĩa hiện tại
Trước khi resize, cần xác định chính xác cấu hình ổ cứng.
# Xem cấu trúc phân vùng chi tiết
sudo parted -l
# Xem dung lượng và cách bố trí filesystem
lsblk -f
# Xem thông tin chi tiết ổ đĩa
sudo fdisk -l
📝 Giải thích kết quả cần tìm:
-
Ổ đĩa chính thường là
/dev/sdahoặc/dev/sdb -
Nếu thấy dòng
LVM2_membervàubuntu--vg-ubuntu--lv→ bạn đang dùng LVM (tin vui) -
Kiểm tra dung lượng thực tế của ổ so với dung lượng đang sử dụng
⚠️ Bước 2: Sửa cảnh báo GPT (nếu có)
Nếu lệnh parted -l báo cảnh báo về GPT, chạy lệnh sau:
sudo sgdisk -e /dev/sdb
Thay /dev/sdb bằng tên ổ đĩa chính của bạn
🚀 Bước 3: Các lệnh resize ổ cứng (thực hiện tuần tự)
Lưu ý: Các lệnh dưới đây giả sử ổ đĩa chính là
/dev/sdbvà partition LVM là/dev/sdb3. Hãy điều chỉnh theo kết quảlsblkcủa bạn.
3.1. Mở rộng partition
sudo growpart /dev/sdb 3
3.2. Kiểm tra partition đã được mở rộng
sudo parted /dev/sdb unit MiB print
3.3. Mở rộng Physical Volume (LVM)
sudo pvresize /dev/sdb3
3.4. Kiểm tra dung lượng trống của Volume Group
sudo vgdisplay
Tìm dòng Free PE / Size để biết dung lượng có thể mở rộng
3.5. Mở rộng Logical Volume ra toàn bộ dung lượng trống
sudo lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
3.6. Mở rộng filesystem (ext4)
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
Nếu filesystem là XFS (kiểm tra bằng
df -hT), dùng lệnh:sudo xfs_growfs /
3.7. Kiểm tra kết quả cuối cùng
df -h /
📋 Bảng tóm tắt các lệnh (copy-paste)
# 1. Kiểm tra cấu hình
sudo parted -l
lsblk -f
# 2. Sửa cảnh báo GPT (nếu cần)
sudo sgdisk -e /dev/sdb
# 3. Resize partition
sudo growpart /dev/sdb 3
sudo parted /dev/sdb unit MiB print
# 4. Resize LVM
sudo pvresize /dev/sdb3
sudo vgdisplay
sudo lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
# 5. Resize filesystem
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
# 6. Kiểm tra kết quả
df -h /
⚠️ Lưu ý quan trọng
| Vấn đề | Giải pháp |
|---|---|
Lệnh growpart không có |
sudo apt install cloud-guest-utils -y |
| Không nhớ tên Logical Volume | Xem trong lsblk hoặc df -h |
| Filesystem là XFS | Dùng xfs_growfs / thay vì resize2fs |
Ổ cứng khác tên (ví dụ /dev/nvme0n1) |
Thay sdb bằng tên tương ứng |
✅ Dấu hiệu thành công
-
df -h /hiển thị dung lượng mới (gần bằng tổng dung lượng ổ cứng mới) -
Không có lỗi trong quá trình thực hiện
-
Server vẫn hoạt động bình thường sau khi resize
📁 Tham khảo nhanh các lệnh kiểm tra
# Xem dung lượng đã dùng và còn trống
df -h
# Xem cấu trúc phân vùng dạng cây
lsblk
# Xem thông tin LVM chi tiết
sudo pvdisplay # Physical Volume
sudo vgdisplay # Volume Group
sudo lvdisplay # Logical Volume
# Xem dung lượng ổ đĩa thực tế
sudo fdisk -l | grep "Disk /dev/sd"
🎯 Khi nâng cấp lên 2TB hoặc lớn hơn
Quy trình hoàn toàn giống hệt:
-
Clone ổ cứng hiện tại sang ổ mới dung lượng lớn hơn
-
Boot vào ổ mới
-
Chạy lại toàn bộ các lệnh ở Bước 3
-
Kiểm tra kết quả bằng
df -h /
Không cần cài lại hệ điều hành hay dịch vụ!