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:
Trong bài lab này mình sẽ thực hiện các việc sau đây:
- Cấu hình LVM trên phân vùng /dev/sdb1
- Giảm kích thước phân vùng /home
- Tăng kích thước phân vùng / (root)
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
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
Bước 2 Tạo Volume Group (VG) có tên là DATA chưa phân vùng /dev/sdb1
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
Bước 3: Tạo Logical Volume (LV) trên VG DATA vừa tạo.
Bash:
lvcreate -L 100G DATA
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
Ở đâ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
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
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
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
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.
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
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.
Bước 2: Grow XFS File System:
Code:
xfs_growfs /dev/cl/root