1. [root 패스워드 설정]
linux -> end 키 눌러서 맨 끝으로 이동 한 후 rd.break 타이핑 후 C+X
mount -o remount,rw /sysroot -> chroot /sysroot -> passwd 설정 -> touch /.autorelabel -> exit 2번 종료
2. [그래픽모드 <-> 콘솔 모드 전환방법]
systemctl get-defaults 로 현재 부팅모드 설정 확인
systemctl set-defaults graphical.target(그래픽모드), multi-user.target(콘솔모드)
3. [yum repo 구성]
yum config-manager --add-repo={url}
gpgcheck= 0,1 (no,yes)
4. [nmcli 명령어를 이용한 network 구성 및 bonding 설정 구성]
(bonding nic 추가)
nmcli con add type bond ifname bond0 con-name bond0 bond.options "mode=1,miimon=100" ipv4.ipaddresses '/24' ipv4.gateway '' ipv4.dns '' ipv4.dns-search 'url' ipv4.method manual connection.autoconnect-slaves 1
(new nic 추가)
nmcli con add type ethernet ifname {NIC} con-name bond0-port master bond slave-type bond
(nic 에 내용추가)
nmcli con modify {NIC} master bond
(NIC 활성화)
nmcli con up {NIC}
(본딩상태 확인)
cat /proc/net/bonding/bond0
5. [호스트네임 설정]
hostnamectl set-hostname {name}으로 설정 or nmtui-hostname 도 가능
6. [SElinux 모드 설정]
getenforce 명령어로 현재 모드 확인
setenforce 로 모드 설정
(영구설정)
vim /etc/selinux/config 에서 모드 입력(철자 주의)
7. LVM
[ PV 생성 ]
선작업 fdisk /dev/sd*
n -> p -> Type 설정에서 8e 로 lvm type 설정 -> w 로 저장 후
pvcreate /dev/sd*
[ 제거 ]
pvremove ( vg에서 용량 먼저 확보 한 후 속한 vg에서 제거 해줘야함)
8.
[ VG 생성 ]
vgcreate [vg] [pv] ( 여러개 일 경우 /dev/sd* /dev/sd* 붙이면됨 )
vgcreate –s [용량] [pv] = PE사이즈 지정할 경우
[VG 축소 ]
vgreduce [vg] [pv] = pv 용량만큼 제거됨
[ VG 추가 ]
vgextend [vg] [pv] = 여러 개 일시 방법 상동
9.
[ LV 생성 ]
lvcreated –n [name] -L [size] [vg]
lvcreate –n [name] –l [le] [vg] = le 사이즈 지정
[ LV 축소 ]
umount [lv]
lvreduce –L [size] [name] -r
mkfs.[] 재 포맷
재 마운트
[ LV 삭제 ]
umount [lv]
lvremove [lv]
[ LV 확장 ]
lvextend [size] [lv] -r
10.
[유저 생성]
useradd [이름]
[그룹생성]
groupadd [이름]
[유저 UID 지정후 생성]
useradd -u [UID] [이름]
[로그인 불가 옵션]
-s /sbin/nologin
[그룹에 유저 추가]
usermode -aG [그룹이름] [유저이름]
11. [비밀번호 설정]
passwd [유저이름]
[비밀번호 기한설정]
chage -E YYYY-MM-DD [유저명]
chage -l [유저명] 타이핑 후 expires 에서 확인
passwd –x (숫자) [유저명]
[전체 비밀번호 변경 기간설정]
/etc/login.defs -> PASS_MAX_DAYS 일 수 변경
12.
[해당 폴더의 그룹 설정 및 권한 설정]
chgrp [group] [file]
chmod ---- [file]
chown [group]:[user] [file]
setfacl –m u:[user]:[---] [file] (사용자 별도 권한 설정)
getfacl [디렉토리]
13.
[방화벽 아이피 추가, 포트 추가 및 아이피 접근 불가 설정]
firewall-cmd —add-source=[ip] --permanent
firewall-cmd —zone=block —add-source=[ip] –permanent = 아이피 차단
firewall-cmd —reload
firewall-cmd —zone=[name] --add-port=[port]/[protocal] –permanent = 포트 추가
14.
[새로운 존 추가 서비스 추가]
firewall-cmd —new-zone=[name] –permanent = 존 추가
firewall-cmd —reload
firewall-cmd —zone=[name] --add-service=[] –permanent = 서비스 추가
firewall-cmd —reload
15.
[주석 내용만 포함하여 파일을 복사 및 모든 사용자가 읽고 쓰고 실행 가능하며 루트제외하고 삭제 못하도록 설정]
grep ‘^#’ /etc/ssh/ssh_config >> /tmp/ssh.txt
chmod 1777 /tmp/ssh.txt
16.
[특정 유저의 소유자 파일을 찾아서 디렉토리로 복사]
find / -user [name] -exec cp –rfp {} [디렉토리] \;
17.
[특정 유저의 스케쥴러 생성]
crontab –u [user] -e
18.
[메모리 용량 추가]
lsblk 확인 후 파티션 생성 코드번호 82
mkswap /dev/sd* >
partprobe /dev/sd*
lsblk | grep /dev/sd*(mkswap한 디바이스) >> /etc/fstab 추가 후 UUID none swap 0 0
swapon /dev/sd* 후 free –m 확인
19.
[bash 스크립트 생성]
#!/bin/bash
If [ $1 == ‘command’ ] ;then
command
fi
작성 후
chmod 755 로 변경
20.
[NTP 설정]
vi /etc/hosts 에 dns 설정
vi /etc/chrony.conf에서 3번째줄 주석처리 후
server [dns] iburst
systemctl restart chronyd 후
timedatectl 에 연동 부분 yes 확인
chronyc sources –v 도 확인 가능
21.
[소프트링크]
ln -s [원본 파일 및 디렉토리] [파일 이름]
22.
[NFS 설정]
서버 클라이언트 작업
yum install –y nfs-utils
systemctl start nfs-server
systemctl enable nfs-server
systemctl status nfs-server
mkdir –p [공유할 폴더]
/etc/exports 내용 [공유할 폴더] [ip(옵션)]
exportfs –arv 확인
firewall-cmd —permanent —add-service={nfs,mountd,rpc-bind}
firewall-cmd —reload
클라이언트 작업
yum install –y nfs-utils nfs4-acl-tools
showmount –e [ip]
mkdir [폴더 생성]
mount –t nfs [ip]:[디렉토리] ~[만든폴더]
재부팅후 지속하려면
echo “ip:[디렉토리] [만든폴더] nfs defaults 0 0” >> /etc/fstab
23.
[autofs 설정]
서버 클라이언트 작업
mkdir [autofs file]
vi /etc/exports 내용에 autofs file 추가
exportfs –arv 확인
systemctl restart nfs-server
클라이언트 작업
misc 매핑
vi /etc/auto.master
[생성할 디렉토리] auto.misc
vi /etc/auto.misc
[표시 디렉토리] [-옵션(-rw,sync,fstype=nfs4)] [ip:/(auto file)]
systemctl restart autofs
서버 작업
mkdir [공유폴더]
vi /etc/exports
[공유폴더] client(rw,async)
클라이언트 작업
직접(direct) 매핑
vi /etc/auto.master.d/direct.autofs
/direct_autofs /etc/direct.autofs
vi /etc/direct.autofs
/direct [-옵션(rw,sync,fstype=nfs4)] [ip:/(direct file)]
systemctl restart autofs
확인
클라이언트 작업
간접(indirect)매핑
vi /etc/auto.master.d/indirect.autofs
/indirect_autofs /etc/indirect.autofs
vi /etc/indirect.autofs
* [-옵션(rw,sync,fstype=nfs4)] [ip:/(indirect file)]
systemctl restart autofs
확인
autouser가 로그인 하면 자동으로
/exports/home/autouser 로 홈 디렉토리 지정 설정 해줘야함
권한 확인까지
24.
[튜닝프로파일 설정]
tuned-adm profile_info > 현재 모드 확인
tuned-adm profile > 모드 확인
tuned-adm profile [] 모드 설정
tuned-adm active > 모드 확인
25.
[ssh-keygen]
ssh-keygen 으로 생성
ssh-copy-id –i [~/.ssh/id_rsa.pub] root@client
ssh root@client
26.
[http]
디폴트 디렉토리 설정
/etc/httpd/conf/httpd.conf 파일에서 119번째 줄에서
원하는 경로로 설정
디폴트 디렉토리에 index.html 생성 후 내용 적은 후
systemctl restart httpd 후
ip 입력하면 완료
Listen 에 숫자는 포트번호
ServerName 에는 DNS 설정
디폴트 .html 파일은 / index.html 검색후 변경
27.
[ ps 명령어 ]
ps –ef | grep [프로세스 이름]
pkill [프로세스 이름]
28.
[scp]
scp [디렉토리/파일] [ip]
[journal 자동저장]
vim /etc/systemd/journald.conf
Storage, SystemMaxFiles 주석 해제 후
Storage=persistent = 자동저장
SystemMaxFiles=500 = 맥스파일
mkdir –p /var/log/journal = 로그 저장할 폴더 추가
systemd-tmpfiles --create —prefix /var/log/journal
29.
[ip forward 설정]
vi /etc/sysctl.conf
net.ipv4.ip_forward=1
리부팅 후
cat /proc/sys/net/ipv4/ip_forward
모를 경우 sysctl –a | grep forward
30.
[파일 및 디렉토리 권한 설정]
chgrp = 그룹소유자 변경
chown = 사용자소유자:그릅소유자 변경
chmod g+s = 생성되는 파일들을 그룹소유자로 변경
31.
[컨테이너]
(실행시 자동으로 시작되기)
loginctl enable-linger [name] = linger enable 설정
loginctl show-user [name] linger yes 확인
podman images = 사용 가능한 이미지 확인가능
podman search [] = 다운로드 가능한 이미지 검색
podman pull [] = 이미지 다운로드
podman inspect [] | less = 이미지 정보 보기
podman run —name [이름] -dit [IMAGE ID] = 생성
podman rm [name] = 컨테이너삭제
podman rmi [name] = 이미지 삭제
podman ps –a = 정보보기
podman run –it [images ID] /bin/bash
mkdir /opt/input
mkdir /opt/proceesed
setfacl –m u:[user]:[권한] [디렉토리]
man semanage fcontext | grep web 으로 사용법 확인
semanage fcontext –a –t container_file_t “[디렉토리(/.*)?”
restorecon –R –v [맨앞 상위 디렉토리]
mkdir –p /home/[user]/.config/systemd/user
podman generate systemd pdfconverter > /home/[user]/.config/systemd/user/container-pdfconverter.service
systemctl —user daemon-reload
systemctl —user enable —now container-pdfconverter
리붓
systemctl —user restart container-pdfconverter
systemctl —user status container-pdfconverter
[podman httpd 관련 설정]
podman search httpd = httpd 검색
podman pull [링크] = httpd 설치
podman images = 확인
podman run –d —name [name] -p 8080:80 [images id] = ps생성, 8080포트를 80포트로 변경
curl localhost:8080 테스트
podman run –it [images] /bin/bash = 이미지 터미널로 진입
find / -name index.html = index.html 의 경로 확인
mkdir [ index.html 새로 설정할 경로 생성 ]
ex) /web/page.html
podman run –d —name [name] -p 8080:80 –v /web:/[index.html 경로] [images id]
curl localhost:8080/page.html
podman generate systemd —new [ps id] >> /etc/systemd/system/[ps id].service
systemctl daemon-reload
systemctl start [ps id]
systemctl enable [ps id]
32.
[semanage]
semanage port –l | grep http // http 포트에 대한 정보 보기
semanage port –a –t http_port_t –p tcp 82 // 82 tcp 포트 추가
33.
[sebool 셋팅]
getsebool –a | grep [boolean] = 부울 찾기
setsebool [boolean] 1 or 0 = on , off 설정하기
setsebool -P [boolean] 1 or 0 = 영구적용하기
34.
[stratis]
wipefs /dev/sd* = 초기화
stratis pool create [name] [device] = 스트라티스 생성
stratis pool add-data [name] [device] = data 생성 ( 용량 증설 )
stratis fs create [pool name] [fs name]
stratis pool list = 확인
mkdir /pool
mount /stratis/stratispool/stratisfs /pool
stratis fs list
stratis fs snapshot [pool name] [fs name] [ss name]
lsblk —output=uuid /stratis/pool/fs >> /etc/fstab
vim /etc/fstab
uuid [dir] [xfs] defaults,x-systemd.requires=stratisd.service 0 0
mount -a
ㅡㅡㅡㅡㅡㅡㅡㅡ 시험내용 ㅡㅡㅡㅡㅡㅡㅡㅡ
node1
1. ip,gateway,dns,hostname 설정
nmcli con mod [name] ipv4.addresses [ip/24] ipv4.gateway [gateway] ipv4.dns [dns]
hostnamectl set-hostname [hostname]
2. url repo 설정
yum config-manager --add-repo=[url]
3. useradd natasha,harry = sharedgrp 소속
sarha = 로그인 x 설정
비밀번호 emesgvy ? 로 모든 비밀번호에 전부다 통일
4. /home/sharedgrp 파일 그룹권한 sharedgrp , 그룹 소유자만 rwx가능(루트도가능) 그외 사용자 접근권한x
파일 생성시 sharedgrp 로 설정
chown :sharedgrp
chmod -R 2770 [디렉토리 or 파일]
5. crontab natasha 유저가 3분마다 logger " RHCSA EXAM200 " 설정
crontab -eu natasha
*/3 * * * * logger "RHCSA EXAM200"
tail -600 /var/log/messages | grep natasha 로 확인 가능
6. uid 5624 가진 user 생성
useradd -u 5624 [name]
7. httpd 82 port 없어서 실행 안되는거 해결
semanage -port -a - t http_port_t -p tcp 82 추가하고
firewall-cmd --list-all 로 service 및 port 있는지 확인 후 없다면
firewall-cmd --add-serivce=http --permanent
firewall-cmd --add-port=82/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-all 후 httpd 잘 실행됩니다
8. 30k ~ 50k 사이의 파일들 전부 찾아서 해당 폴더로 옮기고 set uid 그대로 복사
find / -size +30k -size -50k -exec cp -arp {} [forder]₩;
9. /usr/local gzip으로 압축
tar gcvf /root/file.tar.gzip /usr/local
잘모르면 man
10. 컨테이너 using link주는데 그걸로 뭐 어케하는건지 몰라서 못풀었습니다
wget -o [설정할 파일 이름] [url] 해서 images 다운로드 후 진행
특정 사용자로 이미지 빌드
ssh [name]@[ip] 로 들어가야 가능
11. 컨테이너 서비스 등록 선행 못풀어서 못했습니다
12. 모든 사용자들이 새로 생성할때 패스워드 MAX_DAYS 기본 설정
/etc/login.defs
/ 999 검색 후
PASS_MAX_DAYS 99999 -> 일자 설정
13. 특정 단어만 찾아서 지정 경로에 저장
grep "[단어]" >> [경로]
14. 특정 유저에게만 권한 주기
setfacl -m u:[name]:[권한] [파일 or 디렉토리]
getfacl [파일 or 디렉토리] 로 확인
ll 로 drwxrwxr-x 뭐시기 맨 뒤에 + 가 있으면 acl 권한이 설정 들어간거 확인 가능
node2
1. root 비밀번호 뚫기
rd.break 말고 init=/bin/bash or rw, init=bin/bash -> mount -o remount, rw / -> passwd -> touch /.autorelabel -> exit
2. swap 756mb 추가
fdisk /dev/sd*
n -> skip -> +756M -> t -> L로 타입 찾은후 swap 타입 변경 후 w로 저장
mkswap /dev/sd*
partprobe /dev/sd*
blkid | grep /dev/sd* >> /etc/fstab
vi /etc/fstab -> uuid살린 후 uuid none swap defaults 0 0 -> mount -a -> swapon /dev/sd*
3. lvm 용량 늘리기 ( 조심히 늘려야합니다 데이터 날라가면 안되요 )
lvextend -L +90M /dev/vg/lv -r -> lvs -> df -h 확인
4. 32mb의 extend 를 가진 vg 그룹 만들고 vg 그룹에서 20 개의 extend 를 가진 lv 를 만들고 문제나온 파일시스템으로 포멧 후
오토 마운트 설정
vgcreate -s 32m vg00 /dev/sd*
lvcreate -l 20 --name lv00 vg00
mkfs.*
blkid | grep lv00 >> /etc/fstab 후 내용 수정
5. tuned-adm 기본 설정으로 적합한 프로파일로 설정 하기
tuned-adm recommend 후 나온 [기본 값]으로
tuned-adm profile [기본 값]
tuned-adm active
틀린 내용이나 추가 해야할 내용 있다면 댓글로 남겨주심 수정하겠습니다 ㅎ ㅎ
'RHEL > RHCSA v9 시험' 카테고리의 다른 글
RHCSA v9 준비 - 8. user , group 생성 및 user uid 지정, group 유저 추가 설정 (0) | 2024.05.07 |
---|---|
RHCSA v9 준비 - 7. LVM 구성 방법 / PV / VG / LV / 생성 추가 제거 방법 (0) | 2023.12.04 |
RHCSA v9 준비 - 6. selinux 모드 설정 / selinux mode setting (0) | 2023.12.04 |
RHCSA v9 준비 - 5. 호스트네임 설정 hostnamectl set-hostname (1) | 2023.12.04 |
RHCSA v9 준비 - 4. nmcli 명령어를 이용한 network 구성 및 bonding 설정 구성 (2) | 2023.12.03 |