Logical Volume Manager (LVM) cho phép quản lý nhiều ổ cứng , giúp việc resizing các partition đơn giản hơn . Tính năng này có trong nhân Linux từ năm 1999 và cho đến nay được hỗ trợ bởi tất cả các bản phân phối . Phương pháp cấu hình thiết bị này được sử dụng rộng rãi bởi các system admin cho các server , hệ thống NAT , SAN chạy bằng linux nhằm cải thiện tối đa hiệu quả khi sử dụng ổ đĩa .
1. Định nghĩa :
LVM là phương pháp quản lý các storage device , các logical volume dễ dàng , linh hoạt hơn . Với kỹ thuật Logical Volume Manager (LVM) bạn có thể thay đổi kích thước mà không cần phải sửa lại partition table của OS .
2. Cấu trúc LVM :
LVM phân các lớp trên các ổ cứng vật lý .Bao gồm các thành phần sau : Hard drives – Drives :
- Thiết bị lưu trữ dữ liệu, ví dụ như trong linux nó là /dev/sda .
Partition:
- Partitions là các phân vùng của Hard drives, mỗi Hard drives có 4 partition, trong đó partition bao gồm 2 loại là primary partition và extended partition.
- Primary partition: Phân vùng chính, có thể khởi động , mỗi đĩa cứng có thể có tối đa 4 phân vùng này.
- Extended partition: Phân vùng mở rộng
Physical Volumes:
- Kí hiệu : pv…
- Là những thành phần cơ bản được sử dụng bởi LVM dể xây dựng lên các tầng cao hơn . Một Physical Volume không thể mở rộng ra ngoài phạm vi một ổ đĩa. Chúng ta có thể kết hợp nhiều Physical Volume thành Volume Groups
Volume Group
- Nhiều Physical Volume trên những ổ đĩa khác nhau được kết hợp lại thành một Volume Group
- Volume Group được sử dụng để tạo ra các Logical Volume, trong đó người dùng có thể tạo, thay đổi kích thước, lưu trữ, gỡ bỏ và sử dụng.
- 1 Volume group bao gồm nhiều các Physical Volume gộp thành .Các LE được cấp bởi các PE của các Physical Volume , Một Logical Volume là một ánh xạ mà LVM duy trì giữa các Logical và Physical extent.
Lưu ý :
- Extent trên Physical Volume được gọi là Physical extent.
- Extent trên Logical Volume được gọi là các Logical extent.
Logical Volumes:
Kí hiệu: lv…(có thể là lvm… trong hệ thống) – Có chức năng là các phân vùng trong ổ cứng vật lý , có thể thu hồi hoặc thêm dung lượng một cách dễ dàng . Là thành phần chính để người dùng và các phần mềm tương tác .
3. Cài đặt LVM :
Cấu hình :
- Tạo máy ảo CentOS7 trên VMWare.
- Add thêm 3 ổ cứng ảo vào .
- Sau khi add xong khởi động lại máy ảo , kiểm tra xem máy đã nhận 3 ổ ảo chưa bằng lệnh
lsblk
Tạo Logical Volume :
– Tạo các partition cho các ổ mới , bắt đầu từ sdb với lệnh : fdisk /dev/sdb
Trong đó :
- Command n để bắt đầu tạo partition.
- Chọn p để tạo partition primary
- Chọn 1 để đặt partition number
- First sector để mặc định
- Last sector để +1G (có các tùy chọn KB, MB ,GB)
- Sau khi hoàn thành các bước trên nhấn t để đổi định dạng partition
- Chọn 8e để thay đổi định dạng partition
- Sau khi hoàn thành ấn w để lưu và thoát
– Tương tự tạo thêm các partition primary từ sdb ,sdc,sdd.
Tạo Physical Volum :
- Từ các partition /dev/sdb1 /dev/sdc1 /dev/sdd1 ta tạo các Physical Volume bằng lệnh sau :
pvcreate /dev/sdb1
pvcreate /dev/sdc1
pvcreate /dev/sdd1
- Kiểm tra bằng lệnh
pvs
hoặcpvdisplay
xem các physical volume đã được tạo chưa :
Tạo Volume group:
– Sau khi tạo các Physical Volume ta gộp các PV đó thành 1 Volume Group bằng lệnh sau : vgcreate vg-demo1 /dev/sdb1 /dev/sdc1 /dev/sdd1
– Dùng các lệnh vgs
hoặc vgdisplay
để kiểm tra :
Tạo Logical Volume:
- Từ một Volume group , ta tạo các Logical Volume để sử dụng bằng lệnh sau :
lvcreate -L 1G -n lv-demo1 vg-demo1
Trong đó :
- L : Chỉ ra dung lượng của logical volume
- n : Chỉ ra tên của logical volume
- Kiểm tra bằng lệnh
lvs
hoặclvdisplay
Định dạng Logical Volume:
- Format các Logical Volume thành các định dạng ext2,ext3,ext4,… :
mkfs -t ext4 /dev/vg-demo1/lv-demo1
Mount và sử dụng:
- Ta tạo một thư mục để mount Logical Volume :
mkdir demo1
- Tiến hành mount logical volume lv-demo1 vào thư mục demo1
mount /dev/vg-demo1/lv-demo1 demo
- Kiểm tra bằng lệnh
df -h
4. Tài liệu tham khảo :
– https://www.ufsexplorer.com/articles/storage-technologies/lvm-data-organization.php
– https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/logical_volume_manager_administration/lvm_examples