Phân vùng và hệ thống tệp
Cách phân vùng đĩa hoạt động trên VPS, LVM khác gì so với phân vùng thông thường, cách mount thư mục bổ sung, và nên viết gì trong fstab để máy khởi động.
Cập nhật 23 tháng 8, 2026
Máy ảo hiển thị đĩa với hệ thống dưới dạng /dev/sda. Cách bố trí phân vùng phụ thuộc vào image bạn chọn: Debian và Ubuntu thường cài với một phân vùng root duy nhất, còn AlmaLinux dùng LVM. Bạn cần biết cách bố trí hiện tại trước khi cần mở rộng bất cứ thứ gì.
Hiện tại bạn có gì
lsblk -f
df -hT
sudo fdisk -l /dev/sda
sudo blkid
lsblk -f là hữu ích nhất: nó hiển thị cây thiết bị, hệ thống tệp, nhãn và điểm gắn kết trong một màn hình.
Nếu kết quả có các dòng như vg-root và loại lvm, bạn đang dùng LVM. Khi đó những lệnh sau sẽ hữu ích:
sudo pvs
sudo vgs
sudo lvs
Phân vùng thường hay LVM
Phân vùng thường đơn giản hơn: một phân vùng — một hệ thống tệp. Chỉ phân vùng cuối cùng trên đĩa mới có thể mở rộng, và chỉ khi có dung lượng trống phía sau nó.
LVM thêm một lớp: physical volume, volume group, logical volume. Bạn có thể chia nhiều volume, mở rộng chúng theo bất kỳ thứ tự nào và thêm dung lượng mà không cần làm lại cách bố trí. Đổi lại là một lớp phụ mà bạn phải nhớ khi khôi phục.
Với một máy đơn lẻ chỉ có một đĩa, khác biệt không đáng kể. Đừng làm lại cách bố trí một cách không cần thiết: di chuyển root là thao tác có nguy cơ mất hệ thống thực sự.
Hệ thống tệp
| Hệ thống | Vị trí mặc định | Đặc điểm |
|---|---|---|
| ext4 | Debian, Ubuntu | Đã được kiểm chứng, mở rộng khi đang chạy, thu nhỏ khi đã ngắt gắn kết |
| xfs | AlmaLinux, CentOS Stream | Nhanh với tệp lớn, mở rộng khi đang chạy, không thu nhỏ được |
Kết luận thực tế: nếu bạn muốn linh hoạt, hãy ở lại với ext4. Dù sao bạn gần như sẽ không bao giờ cần thu nhỏ phân vùng trên VPS — đĩa trên máy không thu nhỏ theo gói của bạn.
Mở rộng sau khi tăng dung lượng đĩa
sudo growpart /dev/sda 1
sudo resize2fs /dev/sda1
Với LVM:
sudo growpart /dev/sda 3
sudo pvresize /dev/sda3
sudo lvextend -l +100%FREE /dev/mapper/vg-root
sudo resize2fs /dev/mapper/vg-root # xfs_growfs / for XFS
Cả hai thao tác đều được thực hiện trên hệ thống đang chạy. Để biết chi tiết về việc chuyển sang gói lớn hơn — đĩa đã trở nên quá nhỏ.
Sai số phân vùng trong
growparthoặcpartedsẽ phá hủy bảng phân vùng, và máy sẽ không khởi động được. Trước mọi thay đổi cách bố trí: hãy lưusudo sfdisk -d /dev/sda > /root/parts.txtvà đảm bảo sao lưu dữ liệu còn mới.
Gắn kết và fstab
Các điểm gắn kết cố định được mô tả trong /etc/fstab. Hãy dùng UUID, không dùng tên thiết bị:
sudo blkid /dev/sda1
UUID=1a2b3c4d-... /var/lib/postgresql ext4 defaults,noatime 0 2
Bắt buộc phải kiểm tra trước khi khởi động lại:
sudo mount -a
sudo findmnt --verify
Lỗi trong fstab sẽ khiến máy dừng ở console khẩn cấp khi khởi động. Nếu điều này xảy ra, đĩa cứu hộ sẽ giúp: máy khởi động lại vào SystemRescue, đăng nhập root không cần mật khẩu, đĩa hiển thị dưới dạng /dev/sda — bạn gắn kết phân vùng, sửa fstab, rồi quay lại chế độ khởi động bình thường.
Swap
Tệp swap được tạo theo cách thông thường:
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo "/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab
Swap giúp bạn tránh việc một tiến trình bị kill đột ngột khi hết bộ nhớ, nhưng swap nhiều sẽ vướng tốc độ đĩa và làm máy rất chậm. Khôn ngoan hơn là giới hạn nhu cầu tài nguyên của các dịch vụ — xem giới hạn tài nguyên.
Lỗi thường gặp
- Bạn không kiểm tra chỉnh sửa
fstabbằngmount -a. Khởi động hỏng, và bạn phải xử lý sự cố qua console trong bảng điều khiển. - Bạn gắn kết một thư mục đè lên dữ liệu. Nội dung cũ không đi đâu cả, nhưng trở nên vô hình — hãy ngắt gắn kết và kiểm tra.
- Bạn không đặt
noatime. Đây là chuyện nhỏ, nhưng việc ghi thêm mỗi lần đọc tệp trên một máy có tải cao là đáng chú ý.