2003

[Linux] CentOS 7 용량 늘리기 / 줄이기 본문

개발

[Linux] CentOS 7 용량 늘리기 / 줄이기

saya. 2024. 2. 20. 13:22

* VM으로 사용하고 있습니다.

 

오라클을 설치하다가 이런 오류를 마주쳤습니다.

 

 

disk에 500G나 할당되어 있지만 할당을 해 주지 않아서 용량이 부족하다고 합니다...

centos-root 파일 시스템 용량 늘리기 let's go

 

만약 DISK 자체에 용량이 부족할 경우, 가상 하드디스크를 추가해 주고 해당 디스크를 파티셔닝 및 마운트 하는 것으로부터 시작해야 합니다.

 


 

추가된 하드 디스크 확인

$ lsblk

 

  • lsblk는  리눅스 시스템에서 블록 장치들의 정보를 보여주는 유틸리티입니다. 이를 사용하여 디스크와 파티션의 구성을 확인할 수 있습니다.
  • VMware 등에서 가상 하드디스크를 추가해 주고 나서 해당 명령어를 사용하면 'sdb'라는 장치가 새로 인식되는 것을 확인할 수 있습니다.

 

하드디스크 파티셔닝 및 마운트

$ fdisk /dev/sdb #입력
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): n #입력

Command action
   e   extended
   p   primary partition (1-4)
   
Select (default p): p #입력

Partition number (1-4): 1 #입력

First cylinder (1-13054, default 1): (Enter) #입력
Using default value 1

Last cylinder, +cylinders or +size{K,M,G} (1-13054, default 13054):  (Enter) #입력
Using default value 13054

Command (m for help): w #입력
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.

 

파티션을 물리적 볼륨으로 생성

$ pvscan
  • 현재 사용 가능한 물리적 볼륨 목록을 확인합니다.
$ pvcreate /dev/sdb1
  • 방금 파티셔닝한 물리 파티션을 LVM(Logical Volume Manager)에서 사용할 수 있는 물리적인 볼륨으로 설정합니다.
$ vgextend centos /dev/sdb1
  • 생성한 물리적 볼륨을 'centos'라는 기존 사용하고 있던 볼륨 그룹에 추가합니다.

 

물리적 볼륨을 논리적 볼륨으로 할당 후 파일시스템 확장

$ pvdisplay /dev/sdb1
  • /dev/sdb1 물리 볼륨에 대한 정보를 출력합니다. 물리 볼륨의 크기, 사용 가능한 공간, 할당된 공간 등이 나타납니다.
$ lvextend -L +20GB /dev/centos/root
  • 지정한 /dev/centos/root 논리 볼륨을 20GB 늘립니다.
$ xfs_growfs /dev/centos/root
  • /dev/centos/root에 마운트된 XFS 파일 시스템의 크기를 현재 사용 가능한 모든 공간으로 늘립니다. 이를 통해 추가된 논리 볼륨 공간을 파일 시스템에서 사용할 수 있게 됩니다.

 

성공적으로 확장되었는지 확인

$ df -h

 


 

용량을 줄이고자 하는 디렉터리의 내용을 백업

$ tar -zcvf /root/home.tar.gz -C /home .
$ tar -tvf /root/home.tar.gz #압축 파일 내용 확인

 

해당 디렉터리 마운트 해제

$ umount /dev/mapper/centos-home

 

해당 디렉터리의 논리적 볼륨 삭제

$ lvremove /dev/mapper/centos-home

 

해당 디렉터리의 새로운 논리적 볼륨 생성

$ lvcreate -L 10GB -n home centos
  • home 디렉터리에 대해 새로 생성하는 논리적 볼륨의 용량을 '10G' 로 지정한 상태입니다.

 

파일 시스템 타입 지정 (xfts)

$ mkfs.xfs /dev/centos/home

 

디렉터리 마운트

$ mount /dev/mapper/centos-home

 

백업 파일을 이용하여 디렉터리 복구

tar -zxvf /root/home.tar.gz -C /home

 

 

 

 

정리하자면,

 

용량을 늘리고 싶다: 가상 디스크 추가 -> 해당 디스크 마운트 -> 물리적볼륨 생성 및 그룹 추가 -> 논리적볼륨 할당 -> 파일시스템 확장

용량을 줄이고 싶다: 해당 디렉터리 백업 -> 디렉터리 언마운트 ->   논리적볼륨 삭제 후 새로 생성 -> 파일 시스템 설정 -> 마운트 -> 복구