Linux

RHCSA 공부 3일차

황동리 2024. 4. 20. 21:40
반응형

7. 기본 스토리지 관리

파티션, 파일 시스템, 영구 마운트 추가

디스크 파티셔닝

디스크 파티셔닝은 하드 드라이브를 여러 개의 논리 스토리지 파티션으로 나눈다. 파티션을 사용하면 다양한 요구 사항에 따라 스토리지를 분할할 수 있으며, 이러한 분할은 다양한 이점을 제공한다.

  • 애플리케이션 또는 사용자가 사용할 수 있는 공간을 제한한다.
  • 사용자 파일에서 운영 체제와 프로그램 파일을 구분한다.
  • 메모리 스왑을 위해 별도 영역을 생성한다.
  • 디스크 공간 사용을 제한하여 진단 도구 및 백업 이미징의 성능을 향상한다.

MBR 파티션

  • MBR 파티셔닝 체계는 BIOS 펌웨어를 실행하는 시스템의 표준
  • 최대 네 개의 주 파티션을 지원, Linux 시스템에서는 확장 및 논리 파티션을 사용하여 최대 15개의 파티션을 생성할 수 있다.
  • MBR로 파티셔닝되는 디스크 크기는 최대 2TiB

GPT 파티션

  • UEFI 펌웨어를 실행하는 시스템의 경우 GPT 파티셔닝이 표준
  • GPT는 최대 128개의 파티션을 제공한다.
  • GPT 체계는 논리 블록 주소에 64비트를 할당하여 최대 8ZiB 또는 80억 TiB의 파티션 및 디스크를 지원한다.
  • GPT는 GUID(전역 고유 식별자)를 사용하여 각 디스크와 파티션을 식별한다.
  • GPT는 기본 GPT를 디스크 헤드에, 백업 보조 GPT를 디스크 끝부분에 배치하여 파티션 테이블을 이중화 한다.

파티션 관리

Red Hat Enterprise Linux의 표준 파티션 편집기는 parted 입니다.

parted 명령

parted /dev/vda print
=> 디스크의 파티션 테이블을 보여준다.
parted /dev/vda
=> 대화형 파티셔닝 세션 열기
parted /dev/vdb mklabel msdos or gpt
=> /dev/vdb 디스크의 label을 MBR or gpt 디스크 레이블로 변경해준다.

*중요 
mklabel 하위 명령은 기존 파티션 테이블을 지웁니다. 
기존 데이터에 관계없이 디스크를 재사용 하려는 경우 mklabel 하위 명령을 사용한다. 
새 레이블이 파티션 경계를 변경하는 경우 기존 파일 시스템의 모든 데이터에 접근 할 수 없게 된다.

MBR 파티션 생성 및 삭제

- 생성 - 
parted /dev/vdb
(parted) mkpart
(Partition type) primary/extended
(File system type) ext2,ext3,ext4,xfs
(starts?) 새 파티션을 시작할 디스크 섹터 지정
(End?) 새 파티션을 끝낼 디스크 섹터 지정

- 삭제 -
parted /dev/vdb
(parted) print => 파티션 번호 확인
(parted) rm 1 => 삭제할 파티션 번호 입력

gpt 파티션 생성 및 삭제

- 생성 -
parted /dev/vdb
(parted) mkpart
(Partition name) any name
(File system type) ext2,ext3,ext4,xfs
(starts?) 새 파티션을 시작할 디스크 섹터 지정
(End?) 새 파티션을 끝낼 디스크 섹터 지정

- 삭제 -
parted /dev/vdb
(parted) print => 파티션 번호 확인
(parted) rm 1 => 삭제할 파티션 번호 입력

파일 시스템 생성

mkfs 명령으로 파일 시스템을 생성 해준다.

mkfs

mkfs.[파일 type] [디스크]
ex) mkfs.xfs /dev/vdb1

파일 시스템 마운트

디렉터리와 디스크 장치를 수동으로 연결하려면 mount 명령으로 하면 된다.
그러나, mount 명령으로 하면 영구적으로 mount 되지는 않는다. 영구적으로 mount 하려면 /etc/fstab 파일을 수정해야한다.

파일 시스템 수동 mount

mount [디스크] [마운트 포인트]
ex) mount /dev/vdb1 /mnt

파일 시스템 영구 마운트
vim /etc/fstab


<디스크 장치의 UUID> <mount 포인트> <파일시스템 type> <설정> 0 0
위와 같은 형식으로 추가를 해주면 재부팅 후 영구적으로 마운트가 된다.
그러나, fstab으로 작업을 하고 재부팅을 해야 적용이 되는데 fstab에 잘못된 정보를 넣으면 재부팅이 안된다.

lsblk --fs 
=> 이 명령으로 디스크 장치의 UUID를 확인 할 수 있다.

스왑 공간 관리

스왑 공간의 개념

스왑 메모리란, 실제 메모리 Ram이 가득 찼지만 더 많은 메모리가 필요할때 디스크 공간을 이용하여 부족한 메모리를 대체할 수 있는 공간을 의미합니다.

하지만, 스왑 메모리를 사용하면 속도가 상당히 느려집니다.

스왑 공간 계산

관리자는 시스템의 메모리 워크로드에 따라 스왑 공간의 크기를 조정해야 합니다.

RAM스왑 공간최대 절전 모드를 허용하는 경우 스왑 공간

2GB 이하 RAM의 두 배 RAM의 3배
2~8GB RAM과 동일 RAM의 2배
8~64GB 4GB 이상 RAM의 1.5배
64GB 초과 4GB 이상 최대 절전 모드는 권장되지 않습니다.

스왑 공간 생성

  • 파일 시스템 유형이 linux-swap인 파티션을 생성
  • 장치에서 스왑 시그니처를 저장

스왑 파티션 생성
parted 명령을 사용하여 스왑 파티션을 생성할 수 있다. (파티션 테이블이 gpt)

ex)
parted /dev/vdb
(parted) mkpart
(Partition name) swap1
* (File system type) linux-swap
(start) 1001MB
(end) 1257MB

스왑 공간 포맷
mkswap 명령은 스왑 시그니처를 장치에 적용한다.

ex)
mkswap /dev/vdb2
Setting up swapspace version 1, size = 244 MiB (255848448 bytes)
no label, UUID=39e2667a-9458-42fe-9665-c5c854605881

스왑 공간 활성화
swapon 명령을 사용하여 포맷된 스왑 공간을 활성화 할 수 있다.

ex)
[root@host ~]# swapon /dev/vdb2 or swapon -a
[root@host ~]# free
 	total used free shared buff/cache available
	Mem: 1873036 135044 1536040 16748 201952 1575680
	Swap: 249852 0 249852

스왑 공간 비활성화
swapoff 명령을 사용하여 스왑 공간을 비활성화 할 수 있다.

스왑 공간 영구 활성화
앞서 보았던 /etc/fstab 파일에 항목을 생성하여 시스템 부팅 시 스왑 공간을 영구적으로 활성화 시켜준다.
ex)

vim /etc/fstab
	UUID=39e2667a-9458-42fe-9665-c5c854605881 swap swap defaults 0 0

스왑 공간 우선순위 설정
기본적으로 시스템은 스왑 공간을 직렬로 사용한다. 처음에 만든 스왑 부터 우선순위가 높게 설정되어서 사용이 된다.
그러나 각 스왑 공간에 우선순위를 정의하여 특정 순서를 강제로 적용할 수 있다.
우선순위를 설정하려면 /etc/fstab 파일에서 pri 옵션을 사용하면 된다.
ex)

vim /etc/fstab
	UUID=af30cbb0-3866-466a-825a-58889a49ef33 swap swap defaults 0 0
	UUID=39e2667a-9458-42fe-9665-c5c854605881 swap swap pri=4 0 0
	UUID=fbd7fa60-b781-44a8-961b-37ac3ef572bf swap swap pri=10 0 0

mklabel은 최초에만 사용

/etc/fstab 에 정보를 넣어줘야 영구적으로 마운트가 가능함

따라서 재부팅하기 전에 mount -a 로 확인을 해야한다.

스왑 공간 관리


8. 스토리지 스택 관리

논리 볼륨 생성 및 확장

논리 볼륨 개요

LVM(논리 볼륨 관리자) 시스템을 사용하여 논리 스토리지 볼륨을 실제 스토리지에 계층으로 생성 이 스토리지 시스템은 실제 스토리지를 직접 사용하는 것 보다 더 큰 유연성을 제공해준다.

물리 장치
논리 볼륨은 데이터를 저장하는 데 물리 장치를 사용한다. 디스크 장치를 LVM 물리 볼륨으로 초기화해야 사용이 가능하며 하나의 LVM 물리 볼륨이 전체 물리 장치를 사용해야 한다.

PV(물리 볼륨)
LVM은 기본 물리 장치를 LVM 물리 볼륨으로 사용한다. LVM 툴은 물리 볼륨을 PE(물리 확장)로 분할하여 PV에서 가장 작은 스토리지 블록 역할을 하는 작은 데이터 청크를 형성한다.

VG(볼륨 그룹)
하나 이상의 PV로 구성된 스토리지 풀이다. 실제 스토리지와 기능적으로 전체 디스크와 동일하다. 하나의 PV는 단일 VG에만 할당할 수 있다.

LV(논리 볼륨)
논리 볼륨은 VG의 사용하지 않는 물리 확장 영역에서 생성되며 애플리케이션, 사용자, 운영 체제를 위한 스토리지 장치로 제공된다.

lvcreate
-L: 놀리 볼륨 사이즈 지정하는 옵션

lvs: 논리 볼륨 그룹 상태확인


9. 네트워크 연결 스토리지 액세스

NFS를 사용한 네트워크 연결 스토리지 관리

NFS(Network FileSystem)란 네트워크 상에서 다른 컴퓨터의 파일 시스템을 마운트해서 공유하는 것이다.

즉, 다른 컴퓨터의 파일 시스템을 마치 자기 것처럼 사용할 수 있는 것이다.

우선, nfs를 사용하려면 nfs-utils 패키지를 설치해야한다.

dnf install -y nfs-utils

수동으로 마운트 => mount 명령어 사용

ex) mount -t nfs serverb.lab.example.com:/shares/public /public 
=> 로컬의 /public 디렉터리에 serverb의 /shares/public 디렉터리를 NFS 내보내기를 한다.

마운트 해제는 동일하게 umount
ex) umount /public

영구적으로 마운트 => /etc/fstab 설정 파일 변경

ex) vim /etc/fstab
serverb.lab.example.com:/shares/public /public nfs rw,sync 0 0

 

 

2024.04.04 - [Linux] - RHCSA 공부 1일차

 

RHCSA 공부 1일차

1. 명령줄 생산성 향상 Bash 스크립트 작성 스크립트의 첫 번째 행은 '#!' 표기법으로 시작한다. '#!' 두 문자의 이름은 she-bang 또는 hash-bang을 따서, sharp, hash, bang이라고 합니다. bash 구문 스크립트 파

ksh-cloud.tistory.com

2024.04.13 - [Linux] - RHCSA 공부 2일차

 

RHCSA 공부 2일차

3. 로그 분석 및 저장 정확한 시간 유지 관리 NTP(Network Time Protocol)을 사용하여 정확한 시간 동기화를 유지하고 시스템 저널 및 로그에서 기록하는 이벤트의 타임스탬프가 정확하도록 시간대를 구

ksh-cloud.tistory.com

 

반응형

'Linux' 카테고리의 다른 글

Forward Proxy 구성 및 확인  (0) 2024.09.13
Ubuntu 유저 생성 및 sudo 권한 부여  (1) 2024.06.04
Linux rsync를 사용하여 백업  (1) 2024.04.17
NFS mount 오류 확인 및 해결 (Connection time out)  (0) 2024.04.16
RHCSA 공부 2일차  (0) 2024.04.13