Sử dụng Linux LVM để mở rộng dung lượng lưu trữ trên ubuntu xảy ra khi nhu cầu cần lưu trữ dữ liệu tăng theo thời gian hay hệ thống phát triển nhanh chóng mà thiết lập lưu trữ ban đầu không đáp ứng được. Vì vậy hôm nay tôi sẽ hướng dẫn các ban mở rộng dung lượng lưu trữ trên ubuntu 22.04 bằng công cụ Linux LVM có sẳn trên hệ điều hành Linux.
Linux LVM là gì?
Hệ điều hành Linux thường sử dụng Logical Volume Manager (LVM) để quản lý hệ thống ổ đĩa vật lý (hoặc ảo). Linux LVM là một khung trừu tượng tồn tại giữa các đĩa vật lý (hoặc ảo) và hệ thống tệp tin (File Systems). Nó được sử dụng để nhóm các phân vùng riêng biệt với nhau thành Volume Groups (VGs), và sau đó cắt những VGs lên thành các đơn vị khối logic, hoặc Logical Volumes(LVs). LV là các thiết bị khối trừu tượng mà hệ thống tệp tin Linux có thể sử dụng nằm trên đó.
Dưới đây là một hình ảnh minh hoạ về cách Linux LVM hoạt động. Trong ví dụ này, chúng ta có 5 đĩa khác nhau, mỗi đĩa có một phân vùng duy nhất được liên kết với một Physical Volumes (PVs), tất cả đều được nhóm lại thành một Volume Group (VG) duy nhất. Volume Group được chia thành hai Logical Volumes (LVs) khác nhau và mỗi LV được sử dụng cho một hệ thống tập tin.
Hình minh hoạ dưới đây cho thấy hệ điều hành Ubuntu (cài đặt theo các tùy chọn mặc định) trên ổ đĩa 100GB được lưu trữ như thế nào.
Mở rộng dung lượng lưu trữ trên ubuntu từ không gian còn trống của ổ đĩa vật lý (hoặc ảo)
Như bạn có thể thấy ở trên, khi cài đặt Ubuntu (theo mặc định) chỉ sử dụng 50GB của dung lượng ổ đĩa 100GB.
Sử dụng df -h để kiểm tra không gian trống của ổ đĩa.
Chạy lệnh vgdisplay và kiểm tra không gian trống hiện có trên Volume Group.
- Chạy lệnh lvdisplay – kiểm tra kích cỡ Logic Volume
- Chạy lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv (mở rộng LV đến kích thước tối đa có thể sử dụng)
- Chạy lvadisplay một lần nữa để đảm bảo rằng nó đã thay đổi.
Tại thời điểm này, chúng ta mới chỉ tăng dung lượng lưu trữ của hệ thống gốc (Logical Volume), vì vậy bạn vẫn cần phải mở rộng hệ thống tập tin (File Systems).
- Chạy resize2fs /dev/mapper/ubuntu–vg-ubuntu–lv để mở rộng hệ thống tập tin
- Chạy df -h một lần nữa để đảm bảo bạn thành công.
Vậy là xong. Chúng ta vừa phân bổ không gian lưu trữ trống còn lại của ổ đĩa cho hệ thống tập tin Linux.
Nếu vẫn chưa đủ không gian lưu trữ, hãy tiếp tục đến phần tiếp theo để phân bổ thêm không gian lưu trữ bằng cách mở rộng một ổ đĩa cơ bản.
Mở rộng dung lượng lưu trữ trên ubuntu bằng cách mở rộng dung lượng ổ đĩa
Đầu tiên bạn cần phải tăng kích thước dung lượng ổ đĩa cho hệ điều hành Linux. Điều này có thể được thực hiện bằng cách mở rộng ổ đĩa ảo trong KVM/VMWare/Hyper-V. Bạn thường có thể làm điều này trong khi Linux đang chạy mà không cần tắt hoặc khởi động lại.
Kiểm tra không gian đĩa trống mới được mở rộng bằng cách chạy cfdisk để liệt kê không gian ổ đĩa có trên hệ thống.
Nếu không nhìn thấy không gian ổ đĩa trống được liệt kê, chạy lệch echo 1>/sys/class/block / sda/device/rescan. Sau đó chạy lại lệnh cfdisk và chúng ta sẽ thấy không gian ổ đĩa trống được liệt kê.
- Chọn phân vùng /dev/sda3 từ danh sách
- Chọn “Thay đổi kích thước (Resize)” từ menu. Nhấn Enter và nó sẽ yêu cầu xác nhận kích thước mới. Nhấn Enter một lần nữa và bạn sẽ thấy phân vùng /dev/sda3 với kích thước lớn hơn mới.
- Chọn “Write” từ menu, gõ Yes để xác nhận, và nhấn Enter. Sau đó sử dụng “q” để thoát khỏi chương trình.
Bây giờ phân vùng LVM hỗ trợ /dev/sda3 Physical Volume (PV) đã được mở rộng.
- Chạy pvresize /dev/sda3 để áp dụng thay đổi mở rộng PV
- Chạy pvdisplay để kiểm tra kích thước mới.
Như chúng ta có thể thấy, PV đã được tăng từ 98.5GB lên 198.5GB.
Bây giờ chúng ta thực hiện các bước tương tự như mở rộng dung lượng lưu trữ từ không gian còn trống của ổ đĩa.
Chúng ta có thể thấy ở trên rằng VG có 100GB không gian lưu trữ trống. Bây giờ chúng ta thực hiện lệnh sau để mở rộng Logical Volume.
- lvdisplay – kiểm tra kích thước của Logical Volume (LV)
- lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv – mở rộng LV để sử dụng tất cả không gian lưu trữ trống
- lvDisplay – kiểm tra LV một lần nữa để đảm bảo rằng nó đã được mở rộng
Tiếp theo thực hiện lệnh sau mở rộng hệ thống tập tin
- resize2fs /dev/mapper/ubuntu–vg-ubuntu–lv – để mở rộng hệ thống tập tin
- df -h – xem hệ thống tập tin đã mở rộng thành công.
Vậy là xong. Chúng ta đã thành công mở rộng dung lượng lưu trữ cho hệ thống Linux Server.