Khái niệm về LVM
LVM (Logical Volume Manager) là công cụ quản lý ổ đĩa cho phép kết hợp nhiều phân vùng vật lý thành các nhóm thể tích (Volume Group), sau đó tạo các thể tích logic (Logical Volume) với khả năng mở rộng linh hoạt.
Lợi ích của LVM
- Khả năng mở rộng: Thêm/xóa phân vùng vật lý mà không cần định dạng lại
- Quản lý không gian hiệu quả: Tránh lãng phí dung lượng do giới hạn phân vùng
- Tính linh hoạt: Tạo snapshot, mirror và stripe dữ liệu dễ dàng
Các thành phần chính
- PV (Physical Volume): Thiết bị vật lý (ổ đĩa/phân vùng) được sử dụng trong LVM
- VG (Volume Group): Nhóm chứa các PV, xác định tổng dung lượng có sẵn
- LV (Logical Volume): Thiết bị logic được tạo từ VG, tương tự phân vùng truyền thống
- PE (Physical Extent): Đơn vị lưu trữ nhỏ nhất trong PV (thường 4MB)
Quy trình triển khai LVM
1. Tạo phân vùng vật lý
# Tạo phân vùng trên /dev/sdb
fdisk /dev/sdb
# Trong fdisk:
# - Tạo 2 phân vùng chính (sdb1 và sdb2)
# - Đặt kiểu phân vùng là 8e (Linux LVM)
# - Ghi cấu hình bằng lệnh 'w'
# Kiểm tra phân vùng mới
partprobe /dev/sdb
lsblk
2. Tạo thể tích vật lý
# Khởi tạo PV từ các phân vùng
pvcreate /dev/sdb1 /dev/sdb2
# Kiểm tra cấu trúc PV
pvs
3. Tạo nhóm thể tích
# Tạo VG mới với tên 'data_vg'
vgcreate data_vg /dev/sdb1 /dev/sdb2
# Kiểm tra thông tin VG
vgs
4. Tạo thể tích logic
# Tạo LV với tên 'storage_lv' chiếm toàn bộ dung lượng
lvcreate -l 100%FREE data_vg -n storage_lv
# Định dạng hệ thống tệp
mkfs.ext4 /dev/data_vg/storage_lv
5. Mở rộng dung lượng
# Thêm phân vùng mới vào hệ thống
fdisk /dev/sdc # Tạo /dev/sdc1 kiểu 8e
# Cập nhật cấu trúc
partprobe /dev/sdc
# Mở rộng VG và LV
pvcreate /dev/sdc1
vgextend data_vg /dev/sdc1
lvextend -l +100%FREE /dev/data_vg/storage_lv
# Điều chỉnh hệ thống tệp
resize2fs /dev/data_vg/storage_lv
Công cụ kiểm tra
# Hiển thị thông tin chi tiết
lvdisplay /dev/data_vg/storage_lv
vgdisplay data_vg
pvdisplay /dev/sdb1
# Kiểm tra dung lượng thực tế
df -h /mnt/storage
Cấu hình tự động mount
# Thêm vào /etc/fstab
/dev/mapper/data_vg-storage_lv /mnt/storage ext4 defaults 0 0
# Kiểm tra cấu hình
mount -a
df -h /mnt/storage