일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- shell #shell script
- publishnotreadyaddress
- test #비교
- Grid #CSS
- jgrp000032 #ocp #
- PODS #POD #pods #pod #파드 #재기동 #롤링재기동 #rolling
- DB #mariaDB #SQL
- Excel #엑셀
- Linux #wc
- dump #jattach
- OCP
- lvm #lv #vg #pv
- Python #pakage
- 오블완
- Node #POD #Container
- Swap Memory
- istio #k8s #kubernetes
- EFK
- dify
- bootstrap #css #CSS
- Kafka #카프카
- 네트워크 #NW
- CI #CD #CI/CD
- lenova #레노버 #노트북
- function #사용자 정의 함수
- jmap #jstack
- EKS
- 티스토리챌린지
- 백준 #10430
- NameSpace #NS
Archives
- Today
- Total
BEOM_IT
[Linux] LVM 본문
728x90
반응형
LVM 기본 개념 이해
Physical Volume (PV): 물리적 디스크나 파티션을 LVM에서 사용할 수 있게 변환한 것.
Volume Group (VG): 여러 개의 PV를 묶어 하나의 큰 논리적 스토리지 풀로 만든 것.
Logical Volume (LV): VG에서 논리적으로 생성한 저장 공간, 즉 실제 데이터를 저장할 수 있는 공간.
# 패키지 설치 (필요 시)
sudo apt-get install lvm2 # Ubuntu/Debian 계열
sudo yum install lvm2 # CentOS/RHEL 계열
LVM 생성 방법
1. disk 목록확인
sudo fdisk -l
2. pv 생성
sudo pvcreate /dev/sdb
## 검증
pvscan pvdisplay
3. vg 생성
sudo vgcreate myvg /dev/sdb
## 검증
vgscan vgdisplay
4. lv 생성
sudo lvcreate -L 10G -n mylv myvg
## 검증
lvscan lvdisplay
5. file system생성
sudo mkfs.ext4 /dev/myvg/mylv
6. 마운트 포인트 생성 및 마운트
sudo mkdir /mnt/mylv
sudo mount /dev/myvg/mylv /mnt/mylv
검증방법
root@bastion ~# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 7.7G 0 7.7G 0% /dev/shm
tmpfs 3.1G 8.8M 3.1G 1% /run
/dev/mapper/rhel-root 99G 61G 38G 62% /
/dev/sda2 960M 257M 704M 27% /boot
/dev/sda1 599M 7.1M 592M 2% /boot/efi
tmpfs 1.6G 4.0K 1.6G 1% /run/user/0
부팅시 자동 마운트 설정
echo "{파일시스템} {마운트포인트} {ext4/xfs/....} defaults 0 0" |sudo tee -a /etc/fstab
cat /etc/fstab
root@bastion ~# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Mon Oct 7 07:20:11 2024
#
# Accessible filesystems, by reference, are maintained under '/dev/disk/'.
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
# After editing this file, run 'systemctl daemon-reload' to update systemd
# units generated from this file.
#
/dev/mapper/rhel-root / xfs defaults 0 0
LV의 용량 변경
증설시
vg의 용량 확인
##ext4의 경우
vgdisplay myvg # vg 용량 확인
lvscan # lv마운트 포인트 확인
lvextend -L +5G /dev/myvg/mylv # 5G 증설
resize2fs /dev/myvg/mylv # 파일 시스템 크기 조정
## xfs의 경우
lvresize -l +100%FREE -n /dev/myvg/mylv # 전체 용량 증설
xfs_growfs {마운트 포인트}
감설시 => 마운트 해제
umount /mnt/mylv e2fsck -f /dev/myvg/mylv # 파일 시스템 오류 검사
resize2fs /dev/myvg/mylv 10G # 축소 용량
lvreduce -L 10G /dev/myvg/mylv # 감설
mount /dev/myvg/mylv /mnt/mylv # 다시 마운트
## LV 삭제
umount /mnt/mylv lvremove /dev/myvg/mylv
VG 및 PV 삭제 (필요 시) = 모든 LV 삭제 후 진행
vgremove myvg pvremove /dev/sdb
RHEL 기본 LVM 세가지
- rhel/root
- rhel/home
- rhel/swap
rhel/swap 삭제시 정상적으로 reboot이 수행되지 않으면, grubby를 사용해서 부팅 옵션 확인 및 제거
reboot 중 dracut-initqueue failed to find logical volume : rhel/swap 에러 발생
root@bastion ~# grubby --info DEFAULT
index=0
kernel="/boot/vmlinuz-5.14.0-427.13.1.el9_4.x86_64"
args="ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=/dev/mapper/rhel-swap rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap rhgb quiet"
root="/dev/mapper/rhel-root"
initrd="/boot/initramfs-5.14.0-427.13.1.el9_4.x86_64.img $tuned_initrd"
title="Red Hat Enterprise Linux (5.14.0-427.13.1.el9_4.x86_64) 9.4 (Plow)"
id="24eb30a7c46d4856a12ad53beb956ce8-5.14.0-427.13.1.el9_4.x86_64"
root@bastion ~# grubby --update-kernel=ALL --remove-args="rd.lvm.lv=rhel/swap"
root@bastion ~# grubby --update-kernel=ALL --remove-args="resume=/dev/mapper/rhel-swap"
root@bastion ~# grubby --info DEFAULT
index=0
kernel="/boot/vmlinuz-5.14.0-427.13.1.el9_4.x86_64"
args="ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M rd.lvm.lv=rhel/root rhgb quiet"
root="/dev/mapper/rhel-root"
initrd="/boot/initramfs-5.14.0-427.13.1.el9_4.x86_64.img $tuned_initrd"
title="Red Hat Enterprise Linux (5.14.0-427.13.1.el9_4.x86_64) 9.4 (Plow)"
id="24eb30a7c46d4856a12ad53beb956ce8-5.14.0-427.13.1.el9_4.x86_64"
728x90
반응형
'OS > Linux' 카테고리의 다른 글
[RHEL] 스왑 메모리 (Swap Memory) (1) | 2024.12.03 |
---|---|
[Linux] 7일 전 로그 삭제 (0) | 2024.11.29 |
[linux] rhel8 버전 간소화 보안취약점 스크립트 (0) | 2024.10.31 |
[Linux] if 문 문법 (0) | 2024.10.31 |
journalctl 명령어 사용 (0) | 2024.03.13 |