Bạn vừa nâng cấp ổ cứng VPS từ 40 GB lên 80 GB, nhưng vào máy thì ổ C: (Windows) hoặc phân vùng / (Linux) vẫn báo dung lượng cũ? Đây là tình huống rất thường gặp và không phải lỗi. Bài viết này giải thích nguyên nhân và hướng dẫn từng bước mở rộng ổ đĩa VPS trên Windows Server và Linux, không cần cài lại hệ điều hành, không mất dữ liệu nếu làm đúng thứ tự.
Vì sao nâng cấp xong vẫn thấy dung lượng cũ?
Ổ cứng của VPS là một ổ ảo. Khi nâng cấp, ổ ảo được làm lớn hơn, nhưng bên trong nó vẫn còn nguyên bảng phân vùng và hệ thống tệp (NTFS, ext4, XFS) với kích thước cũ. Phần dung lượng mới nằm ở cuối ổ dưới dạng vùng trống chưa thuộc phân vùng nào. Muốn dùng được, bạn cần làm 2 việc:
- Giãn phân vùng để nó chiếm cả phần trống phía sau.
- Giãn hệ thống tệp bên trong phân vùng đó. Trên Windows, Disk Management làm cả hai bước cùng lúc.
Nếu kiểm tra thấy ổ đã nhận đủ dung lượng mới thì bạn không cần làm gì thêm, có thể bỏ qua bài này.
Tóm tắt nhanh
| Hệ điều hành | Công cụ | Thao tác chính |
|---|---|---|
| Windows Server 2012 – 2022 | Disk Management hoặc PowerShell | Chuột phải ổ C: → Extend Volume → Next → Finish |
| Linux, hệ thống tệp ext4 | growpart + resize2fs | growpart /dev/vda 1 rồi resize2fs /dev/vda1 |
| Linux, hệ thống tệp XFS | growpart + xfs_growfs | growpart /dev/vda 1 rồi xfs_growfs / |
| Linux dùng LVM | growpart + pvresize + lvextend | Xem mục riêng ở cuối phần Linux |
Trước khi bắt đầu
- Sao lưu dữ liệu quan trọng. Thao tác giãn phân vùng thường rất an toàn, nhưng bạn đang chỉnh trực tiếp lên ổ hệ thống. TDCLOUD có backup hằng ngày cho mọi gói VPS, tuy vậy bạn vẫn nên tự sao lưu những dữ liệu thay đổi trong ngày (database, file upload mới) trước khi làm.
- Kiểm tra dung lượng ổ ảo đã tăng chưa. Trong trang quản lý VPS tại manager.tdcloud.vn, tab Overview có mục Disk Usage hiển thị tổng dung lượng ổ. Nếu con số ở đây vẫn là dung lượng cũ, việc nâng cấp chưa hoàn tất, bạn hãy liên hệ bộ phận hỗ trợ trước.
- Khởi động lại VPS một lần nếu hệ điều hành chưa nhận ra ổ đã lớn hơn.
- Đăng nhập với quyền quản trị: tài khoản
Administratortrên Windows,roothoặc user cósudotrên Linux. Nếu chưa biết cách kết nối, xem hướng dẫn kết nối VPS Windows bằng Remote Desktop và hướng dẫn kết nối VPS Linux qua SSH.
Phần 1: Mở rộng ổ C: trên VPS Windows Server
Cách làm dưới đây áp dụng cho Windows Server 2012, 2012 R2, 2016, 2019 và 2022. Giao diện giữa các phiên bản gần như giống nhau.
Bước 1: Mở Disk Management
Kết nối vào VPS bằng Remote Desktop. Bấm tổ hợp phím Windows + R, gõ diskmgmt.msc rồi bấm OK. Bạn cũng có thể chuột phải vào nút Start và chọn Disk Management.

Bước 2: Tìm vùng Unallocated
Ở nửa dưới cửa sổ, bạn sẽ thấy Disk 0 với tổng dung lượng mới (ví dụ 80.00 GB). Ổ (C:) vẫn giữ kích thước cũ, còn phần vừa nâng cấp hiện thành một khối có thanh màu đen, ghi Unallocated.

Lưu ý: Nếu giữa ổ C: và vùng Unallocated có một phân vùng khác chen vào (thường là Recovery Partition vài trăm MB), Windows sẽ không cho giãn ổ C:. Xem cách xử lý ở phần lỗi thường gặp bên dưới.
Bước 3: Chọn Extend Volume
Chuột phải vào ô (C:) ở phần đồ họa phía dưới (hoặc dòng (C:) trong danh sách phía trên), chọn Extend Volume....

Bước 4: Hoàn tất Extend Volume Wizard
- Màn hình chào mừng: bấm Next.
- Màn hình Select Disks: Disk 0 đã được chọn sẵn ở cột Selected. Ô Select the amount of space in MB mặc định bằng Maximum available space, tức dùng hết phần trống. Giữ nguyên và bấm Next.
- Màn hình cuối: bấm Finish.

Thao tác chỉ mất vài giây và không cần khởi động lại. Ổ C: lúc này sẽ hiển thị dung lượng mới, vùng Unallocated biến mất. Mở This PC để kiểm tra lại.
Cách khác: Mở rộng ổ C: bằng PowerShell
Nếu bạn quen dòng lệnh, hoặc muốn làm nhanh trên nhiều VPS, hãy mở Windows PowerShell với quyền Administrator (chuột phải Start → Windows PowerShell (Admin)) và chạy lần lượt:
$max = (Get-PartitionSupportedSize -DriveLetter C).SizeMax
Resize-Partition -DriveLetter C -Size $max
Get-Volume -DriveLetter C

Nếu ổ C: đã ở kích thước tối đa, lệnh Resize-Partition sẽ báo lỗi kiểu "The size of the extent is less than the minimum of 1MB". Lỗi này chỉ có nghĩa là không còn chỗ trống để giãn thêm.
Phần 2: Mở rộng phân vùng trên VPS Linux
Các lệnh dưới đây chạy được trên Ubuntu, Debian, AlmaLinux, Rocky Linux, CentOS. Trong ví dụ, ổ đĩa tên là /dev/vda và phân vùng gốc là /dev/vda1. Đây chỉ là ví dụ: trên VPS của bạn tên có thể là /dev/sda, /dev/sda2... hãy xem kết quả lsblk thực tế và thay cho đúng.
Bước 1: Kiểm tra ổ đĩa và hệ thống tệp
lsblk
df -Th /

Ghi lại 3 thông tin:
- Tên ổ: dòng có TYPE là
disk, ví dụvda. - Số thứ tự phân vùng chứa thư mục
/: ví dụvda1thì số là1. - Loại hệ thống tệp: cột Type của lệnh
df -Th /, thường làext4hoặcxfs.
Nếu lsblk cho thấy phân vùng đã bằng kích thước ổ, chỉ có df còn báo dung lượng cũ, bạn bỏ qua bước 3 và làm thẳng bước 4.
Bước 2: Cài công cụ growpart
Nhiều bản cài sẵn công cụ này. Nếu gõ growpart báo "command not found", cài theo hệ điều hành:
# Ubuntu / Debian
apt update && apt install -y cloud-guest-utils
# AlmaLinux / Rocky Linux / CentOS
dnf install -y cloud-utils-growpart
Trên CentOS 7 dùng yum thay cho dnf.
Bước 3: Giãn phân vùng bằng growpart
growpart /dev/vda 1
Chú ý có dấu cách giữa tên ổ và số phân vùng (/dev/vda 1, không phải /dev/vda1). Kết quả thành công bắt đầu bằng CHANGED: partition=1. Nếu báo NOCHANGE nghĩa là phân vùng đã chiếm hết ổ, không cần giãn thêm.
Bước 4: Giãn hệ thống tệp
Chọn lệnh theo loại hệ thống tệp đã xem ở bước 1:
# Nếu là ext4
resize2fs /dev/vda1
# Nếu là XFS (thường gặp trên AlmaLinux, Rocky Linux, CentOS)
xfs_growfs /
Cả hai lệnh đều chạy được khi hệ thống đang hoạt động, không cần tắt dịch vụ hay khởi động lại.

Bước 5: Kiểm tra lại
df -h /
Cột Size hiển thị dung lượng mới là xong. Con số thường thấp hơn dung lượng gói một chút do phần dành cho bảng phân vùng và siêu dữ liệu của hệ thống tệp, đây là bình thường.
Trường hợp VPS dùng LVM
Nếu lsblk cho thấy dưới phân vùng có một dòng TYPE là lvm (ví dụ ubuntu--vg-ubuntu--lv), thư mục / nằm trên ổ logic LVM. Khi đó cần thêm 2 lệnh sau growpart:
# 1. Giãn phân vùng chứa LVM (ví dụ phân vùng số 3)
growpart /dev/vda 3
# 2. Báo cho LVM biết phân vùng đã lớn hơn
pvresize /dev/vda3
# 3. Giãn ổ logic và hệ thống tệp cùng lúc (tùy chọn -r)
lvextend -r -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
Tên phân vùng và tên ổ logic lấy theo kết quả lsblk và lvs trên máy bạn.
Lỗi thường gặp
Extend Volume bị mờ, không bấm được
Nguyên nhân phổ biến nhất là vùng Unallocated không nằm liền ngay sau ổ C:, thường do Recovery Partition chắn ở giữa. Disk Management chỉ giãn được sang vùng trống liền kề phía bên phải. Xử lý trường hợp này cần xóa hoặc di chuyển phân vùng chắn giữa, dễ gây lỗi khởi động nếu làm sai, nên bạn hãy liên hệ đội kỹ thuật TDCLOUD để được hỗ trợ.
Không thấy vùng Unallocated nào
Hệ điều hành chưa nhận ổ mới. Trong Disk Management, vào menu Action → Rescan Disks. Nếu vẫn không thấy, khởi động lại VPS rồi kiểm tra Disk Usage trong trang quản lý.
growpart báo lỗi "command not found"
Chưa cài gói công cụ. Xem lại bước 2 của phần Linux.
resize2fs báo "Bad magic number in super-block"
Thường do phân vùng dùng XFS chứ không phải ext4. Kiểm tra bằng df -Th / và dùng xfs_growfs / thay thế.
growpart xong nhưng df -h vẫn báo dung lượng cũ
Bạn mới giãn phân vùng, chưa giãn hệ thống tệp. Chạy tiếp lệnh ở bước 4.
Câu hỏi thường gặp
Mở rộng ổ đĩa có làm mất dữ liệu không?
Khi làm đúng các bước trên, dữ liệu hiện có được giữ nguyên vì bạn chỉ thêm dung lượng vào cuối phân vùng. Tuy vậy, bạn vẫn nên sao lưu trước, nhất là với database đang chạy.
Có cần khởi động lại VPS sau khi mở rộng không?
Không. Cả Extend Volume trên Windows lẫn resize2fs, xfs_growfs trên Linux đều áp dụng ngay khi hệ thống đang chạy.
Có thể thu nhỏ ổ đĩa lại không?
Trên Windows có Shrink Volume, nhưng việc giảm dung lượng ổ ảo phía nhà cung cấp phức tạp hơn nhiều. Riêng XFS trên Linux không hỗ trợ thu nhỏ. Vì vậy hãy chọn dung lượng phù hợp với nhu cầu thực tế khi nâng cấp.
Cần thêm dung lượng hoặc cần hỗ trợ?
Nếu website, database hay dữ liệu backup đang lớn nhanh, bạn có thể tham khảo các gói VPS Tiêu Chuẩn ổ NVMe hoặc VPS Nhiều RAM cho nhu cầu nặng hơn. Trong quá trình mở rộng ổ đĩa, nếu gặp lỗi không có trong bài, hãy gửi ticket hoặc liên hệ đội ngũ hỗ trợ TDCLOUD kèm ảnh chụp màn hình Disk Management hoặc kết quả lệnh lsblk để được kiểm tra nhanh hơn.