후기 / / 2024. 5. 2. 13:51

RHCSA9 후기 및 문제

반응형

 

 

 

 

 

 

 

장장 2달에 걸쳐 준비한 시험이 끝났다.

 

시험 보기 전 내 리눅스 실력은 cat, cd, grep 같은 기본 명령어나 사용할줄 알지 네트워크, 스토리지, 보안 등의 작업은 예전에 배웠지만 잊어버린 상태였다.

 

시험을 마치고 나니 이제는 서버에 디스크 용량이 부족하면 볼륨 붙여서 사용할 수도 있고, podman 명령어를 보면 대충 저게 뭘하는건지 이해할 정도는 된다. 역시 자격증을 딴다고 마스터가 되는건 아니지만, 그래도 안따는것 보다는 낫다는걸 다시 한 번 느낀다.

 

 

시험 화면이라던지 그런 정보는 워낙 잘 정리된 글이 많다보니

 

여기서는 rhcsa9에서는 어떤 문제가 나오는지, 문제 풀이 팁, 공부방법 정도만 풀어보려고 한다.

 

 

 

 

 

 

 

이정도 점수를 받은걸 감안해서 거를건 거르고 필요한 팁만 얻어갔으면 좋겠다. 시험 문제는 언제든지 달라질 수 있으니 맹신하지 말자!

 

 

 

기본 서버 세팅 1

서버 진입을 위한 root 비밀번호 설정.

 

rhcsa9 이전에는  e, rd.break, mount -o rw,remount /sysboot, chroot /sysboot, passwd 로 해결을 해왔지만, 이제는 이 방법이 안먹는다.

 

그래서 윗 방법과 아래 방법을 같이 알고가는게 좋다.

 

# 부팅 프로세스 중단
e

#linux 로 시작하는 줄 끝에 init=/bin/bash를 추가하고 ro를 rw 로 변경 후 Ctrl+X로 탈출
rw
init=/bin/bash

# 루트 비밀번호 재설정
passwd

# SELinux 파일 시스템 레이블링 재설정 후 시스템 초기화
touch /.autorelabel
exec /sbin/init

 

 

기본 서버 세팅 2

노드를 터미널로 접속하려면 ssh 구성 편집을 해야한다.

 

# /etc/ssh/sshd_config
PermitRootLogin yes

 

ssh로 루트 로그인 허가를 해줘야지 터미널로 접속할 수 있다.

 

 

그 외에도 chrony, sshd 등 시스템 서비스를 사용하는 문제가 나오면 문제 풀이 후 stop 시켰다가 enable --now 로 상시 실행시켜두는게 마음 편하다.

 

그리고 http, port 관련 문제가 나오면

 

firewall-cmd --permanent --add-service

firewall-cmd --permanent --add-port

semanage port -at

 

작업은 그냥 다 해주는게 낫다. firewall-cmd 는 reload 해주는걸 잊지말자.

 

 

 

네트워크

네트워크는 nmtui보다 nmcli로 외우고 가는게 좋다.

 

첫 시험을 nmtui로 풀었는데, 네트워크 파트에서 0점이 나왔다. 아무리 그래도 0점은 좀 의심스러운 터라, 차라리 nmcli로 외우고 가는게 맘 편하지 않을까 싶다.

 

처음에는 nmcli 명령어를 외우기 귀찮겠지만 생각보다 별거 없으니 그냥 외우고 가자.

 

 

그리고 시중에 보이는 예제와는 달리, hostname이 네트워크문제와 같이나오고, dns가 아닌 name server로 출제가 된다.

 

대충 아래처럼 나온다.

 

hostname: node1.example.com
ip address: 172.10.1.10
subnet mask: 255.255.255.0
gateway: 192.168.1.10
name server: 192.168.1.10

 

 

profile name은 따로 명시가 안되어있어서 고민하다가 그냥 node1로 했는데, 네트워크 점수가 100%로 나온걸로 봐서 별 의미는 없는듯 하다.

 

서버 이름은 hostnamectl set-hostname 쓰거나 hostnamectl hostname 쓰면 된다.

 

 

repo 설정

BaseOS와  AppStream 의 url을 준다. 아래 구조를 외워서 파일을 직접 만들어 돌리는게 제일 편하다.

 

# /etc/yum.repos.d/rhel9.repo
[BaseOS]
name=BaseOS
enabled=1
gpgcheck=0
baseurl=file:///rhel9_repo/BaseOS

[AppStream]
name=AppStream
enabled=1
gpgcheck=0
baseurl=file:///rhel9_repo/AppStream

# repo 활성화 및 업데이트
dnf clean all
dnf repolist
dnf update -y

 

 

사용자 및 그룹관리

useradd, groupadd 명령어와 옵션(-G, -u, ...)

chmod, chown, setfacl 명령어와 옵션(g+s, u+s, +t, ...)

정도만 알아가면 된다.

사용자나 그룹 만들고, 새로운 파일을 만들면 그 그룹의 소유자가 되게 한다는 등의 문제가 나온다.

 

 

가끔 umask 문제도 나오는데, 문제 내용이 '사용자 sam이 생성하는 파일은 읽기 권한이, 디렉토리는 읽기 및 수정 권한이 있다' 비슷하게 나왔다.

 

처음에는 무슨소린지 몰라서 틀렸는데 아무래도 umask 문제인것 같다... 혹시 모르니까 알아두고 가자.

 

 

 

그리고 특정 사용자에게 root 비번 없이 로그인 할 수 있도록 설정하라는 문제도 있었다.

 

이문제는 준비를 안해가서 틀렸다.

 

 

 

cron

기본 cron 사용 방법 알아두고 가자. 특정 유저로 cron 작업하는 문제가 나온다.

 

cron 작업도 혹시모르니 systemctl stop, systemctl enable --now 해줬다.

 

 

 

ntp

 

ntp 서버 구성은 안해도 된다. 그냥 클라이언트 구성만 하면 되고, 'node1을 test.example.com의 클라이언트로 구성하라'는 식으로 문제가 나온다.

 

# /etc/chrony.conf
server test.example.com iburst

 

 

chrony 설정파일에 서버 추가해주고, systemctl stop, enable --now 해주고

 

firwall-cmd로 ntp 서비스 추가해주면 된다.

 

 

 

nfs

nfs 서버 구성도 안해도 된다. 클라이언트 구성하는 방법만 알면 된다.

 

내 기준 어려운 작업 중 하나였다. 설정 방법을 꼭 외우고 가자.

 

설정 후에 systemctl stop autofs, enable --now autofs 잊지말자.

 

 

 

tuned

기본값으로 설정하라고 한다. tuned-adm 을 사용하는 문제.

 

 

 

grep, find

문자열 찾아서 파일에 넣기

 

파일 찾아서 폴더에 넣기

 

둘 다 나온다.

 

 

 

tar

gzip으로 압축하는 문제가 나온다.

 

 

 

httpd

82 포트로 된 서버가 안열리고 어쩌구 하는 문제가 나온다.

 

firewall-cmd --permanent --add-port 및 --add-service 해주고 semanage port -at 해주고 stop, enable --now 해주면 된다.

 

 

 

LVM

n개의 extent와 1 extent당 크기가 16MiB인 LVM 파티션을 생성하는 문제가 나온다. vgcreate -s, lvcreate -l 명령어 숙지하고 가면 된다.

 

 

 

lvresize, lvextend 등 이미 생성되어있는 LV 크기 조절하는 문제도 나온다.

 

 

새로운 파티션을 생성하고 파일시스템 생성하는 문제도 나온다.

 

 

 

Swap

스왑 파티션을 만드는 문제. mkswap, free -h, mount -a, swapon -a 같은 명령어를 알고가면 된다.

 

 

 

Podman

특정 사용자로 container 파일을 빌드하고(문제1),

 

빌드한 이미지로 루트 없는 Podman 컨테이너를 생성한 뒤에 systemd를 사용하여 컨테이너를 관리하라는 문제가 나온다(문제2). 

 

 

특정 사용자로 podman을 사용하기 위해 loginctl enable-linger 설정 및 ~/.config/systemd/user 디렉토리 생성을 해야한다.

 

containerfile은 url 주소로 나온다. url로 빌드하는 명령어 알아놓자.

 

이미지 빌드만 잘 되면 podman run -d --privileged -v 명령어로 컨테이너를 생성하고, podman generate systemd 명령어로 서비스 만들고 systemctl --user enable --now 로 실행하면 된다.

 

 

 

 


 

 

 

공부 방법 등 후기

 

 

udemy 문제를 여러번 풀고갔다. 강의 제목은 'Unofficial Red Hat RHCSA 9 (EX200) Exam Preparation 2024' 이다.

 

nfs, 컨테이너는 큰 도움이 됐고

 

일부는 실제 시험이랑 좀 다른경우도 몇가지 있지만

 

그래도 이걸로 시험 대비하길 잘한것 같다.

 

 

회사 다니면서 틈틈히 문제 풀고, 다 풀고 나서는 파트별로 정리해서 여러번 손코딩하면서 외웠다.

 

 

그리고 시험장 준비물은 시험 등록할때 인증했던 여권만 가져가면 된다.

 

cka와 aws보다는 덜 까다로운것 같다.

 

시험장 외 장소는 잘 모르겠다...

 

 

시험장에 대한 소감은, 학동역 쪽 시험장이 안내를 잘해줬고 양재쪽 시험장은 아무 설명없이 바로 방으로 들어가라고한다.

 

그냥 눈치껏 읽고 하라는대로 하면 되긴 하지만 그래도 처음 시험보는 입장에서는 안내를 해주는 편이 심신 안정에 좋다.

 

 

 

 

 


 

 

 

 

다른 궁금한 사항이 있다면 댓글 주세요!

 

 

 

 

 

 

 

반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유