Ask question

Ask Questions and Get Answers from Our Community

Answer

Answer Questions and Become an Expert on Your Topic

Contact Staff

Our Experts are Ready to Answer your Questions

Linux Lab 3: Thay đổi kích thước phân vùng LVM trên Linux

BlackDrag0n

Moderator
Joined
Jan 4, 2021
Messages
21
Reaction score
15
Points
3

Lab 3: Thay đổi kích thước phân vùng LVM trên Linux



Chào các bạn, hôm này ở bài lab này mình sẽ hướng dẫn các bạn thay đổi kích thước phân vùng LVM trên Linux. Để làm bài lab này các bạn câf môt VM Linux có thể sử dụng bất kỳ Distro nào. Ở đây mình sẽ dùng Distro CentOS 8.
Cấu hình phân vùng của VM mình gồm:
1628442568489.png


Trong bài lab này mình sẽ thực hiện các việc sau đây:

1. Cấu hình LVM trên phân vùng /dev/sdb1


Bước 1: Tạo Physical Volume (PV) chứa phân vùng /dev/sdb1 bằng lệnh:
Bash:
pvcreate /dev/sdb1
1628442874085.png

Nếu các bạn có nhiều phân vùng cần cấu hình physical volume thì có thể thêm vào phía sau vd: "pvcreate /dev/sdb1 /dev/sdb2". Sau khi tạo xong dùng lệnh pvs để kiểm tra
1628442970831.png


Bước 2 Tạo Volume Group (VG) có tên là DATA chưa phân vùng /dev/sdb1
1628443080580.png

Sau khi tạo xong VG DATA có thể sử dụng lệnh vgdisplay DATA để kiếm tra. Ở đây các bạn để ý chỗ FREE PE / Size của chúng ta sẽ là 25599 / <100GB tức là mình sẽ tạo ra phân vùng Logical Volume < 100GB
1628443160774.png

Bước 3: Tạo Logical Volume (LV) trên VG DATA vừa tạo.
Bash:
lvcreate -L 100G DATA
Như mình nói ở phía trên là phân vùng LV bắt buộc phải bé hơn 100GB nếu không sẽ bị báo lỗi
1628443463560.png

Vậy phải làm sao nếu chúng ta chọn 99GB thì sẽ bị mất đi 1GB. Còn không thì 1 PE có kích thước là 4MB nên ở đây sẽ lấy 100GB - 4MB = ??. Việc tính toán v sẽ trở nên phức tạp vì thế trên LVM cconf hỗ trợ cách tạo khác.
Bash:
lvcreate -l 100%FREE DATA --name DATA
1628443645778.png

Ở đây mình sử dụng tham số -l để lấy 100% phân vùng còn trống để tạo LV cho VG DATA và đặt tên LV là DATA.
Sau khi tạo xong phân vùng LV thì việc tiếp theo của mình sẽ làm là định dạng phân vùng. Có thể sử dụng EXT4 hoặc XFS. Trong lab này thì mình sẽ dùng XFS cho cùng với hệ thống.
Code:
mkfs.xfs /dev/DATA/DATA
1628443823993.png

Bước 4: Mount LV DATA vào thư muc /data. DO chưa có thư mục này mình sẽ tiến hành tạo.
Bash:
mkdir /data
mount /dev/DATA/DATA /data
Và thành quả:
1628444021633.png

Tuy nhiên đây chỉ là mount tạm thời, cần thêm vào file /etc/fstab để tự động mount khi khởi động hệ thống
Bash:
/dev/DATA/DATA  /data   xfs     defaults        0       0
1628444100092.png

Sau khi mount xong sử dụng lệnh mount -a để kiếm tra, nếu không báo lỗi gì là được.

2. Giảm kích thước phân vùng /home


Phân vùng /home của mình hiện tại đang là 23GB và mình sẽ tiến hành giảm nó xuống 5GB và mở rộng phân vùng / bằng dung lượng còn trống.
Đầu tiên mình sẽ giảm kích thước phân vùng /home ( Lưu ý: Việc giảm kích thước phân vùng sẽ mất dữ liệu. Cần backup trước khi làm)
Bước 1: umount phân vùng /home
Bash:
[root@localhost ~]# umount /home
Bước 2: Giảm kích thước phân vùng LV home
Bash:
[root@localhost ~]# lvreduce /dev/mapper/cl-home -L 5GB                                                                   
WARNING: Reducing active and open logical volume to 5.00 GiB.                                                          
 THIS MAY DESTROY YOUR DATA (filesystem etc.)                                                                          
Do you really want to reduce cl/home? [y/n]: y                                                                            
Size of logical volume cl/home changed from 23.13 GiB (5922 extents) to 5.00 GiB (1280 extents).                       
Logical volume cl/home successfully resized.
Bước 3: Format phân vùng LV home (Lưu ý cần thêm tham số -f)
Bash:
[root@localhost ~]# mkfs.xfs /dev/cl/home                                                                               
mkfs.xfs: /dev/cl/home appears to contain an existing filesystem (xfs).                                                 
mkfs.xfs: Use the -f option to force overwrite.                                                                         
[root@localhost ~]# mkfs.xfs /dev/cl/home -f                                                                            
meta-data=/dev/cl/home           isize=512    agcount=4, agsize=327680 blks                                                      
                 =                       sectsz=512   attr=2, projid32bit=1                                           
                 =                       crc=1        finobt=1, sparse=1, rmapbt=0                                     
                 =                       reflink=1                                                                              
data         =                       bsize=4096   blocks=1310720, imaxpct=25                                 
                =                       sunit=0      swidth=0 blks                                                             
naming   =version 2              bsize        =4096   ascii-ci=0, ftype=1                                                      
log          =internal log           bsize=4096   blocks=2560, version=2                                                       
                =                       sectsz=512   sunit=0 blks, lazy-count=1                                                
realtime  =none                   extsz=4096   blocks=0, rtextents=0

Bước 4: remount phân vùng và kiểm tra
Bash:
[root@localhost ~]# mount /home
1628445387516.png


3. Mở rộng phân vùng /


Đối với việc mở rộng phân vùng sẽ không xảy ra gián đoạn dịch vụ gì cả nên mình sẽ tiến hành trực tiếp mà ko cần umount gì cả.
Bước 1: Mở rộng phân vùng LV root
Bash:
[root@localhost ~]lvresize -l +100%FREE /dev/cl/root
Size of logical volume cl/root changed from <47.38 GiB (12129 extents) to 65.51 GiB (16771 extents).                   
Logical volume cl/root successfully resized.
Tuy nhiên mở rộng LVM xong nhưng phân vùng / vẫn chưa được mở rộng.
1628445905275.png

Bước 2: Grow XFS File System:
Code:
xfs_growfs /dev/cl/root
1628446098380.png
 

Attachments

  • 1628445317598.png
    1628445317598.png
    43.4 KB · Views: 0
Top