- Facts (사실, 객관)
: 어제 배운 LVM개념, 물리볼륨, 논리볼륨, 볼륨 그룹 복습 겸 실습을 진행하였다. 오늘은 서비스 관리, 부트 프로세스에 대해서 배우고 실습 문제까지 풀었다.
- Feelings (느낌, 주관)
: 어제 배운것보다는 좀 쉬워서 그런지 실습도 제대로 해볼 수 있었다. - Findings (배운 점)
: systemd
- init 프로세스의 대체(PID 1)
- 부팅 시 병렬화 처리 -> 부팅 속도 향상
- cgroup을 통한 자원관리 및 프로세스 트래킹
- 선택적 데몬 실행
- systemctl을 이용해 서비스 제어관리
systemctl
- systemctl -t help 명령어로 목록을 확일한 수 있다.
명령어 동작 systemctl status <UNIT> 서비스 유닛 상태 확인 systemctl start <UNIT> 서비스 유닛 시작 systemctl stop <UNIT> 서비스 유닛 중지 systemctl restart <UNIT> 서비스 유닛 재시작 systemctl enable <UNIT> 서비스 유닛 활성화
시스템이 부팅시에 자동으로 시작되는 것systemctl disable <UNIT> 서비스 유닛 비활성화
수동 실행 가능systemctl reload <UNIT> 서비스 유닛 구성파일 재설정 systemctl mask <UNIT> 서비스 유닛 마스크 설정
시작되는 것을 방지하도록 된 상태
수동 실행 불가능systemctl unmask <UNIT> 서비스 유닛 마스크 해제 systemctl list-dependencies <UNIT> 서비스 유닛 종속성 확인 systemctl list-units 설치가 되어있고 실행중인 유닛만 보임 -a 설치가 되어있지 않거나 실행중인 상태가 아닌 유닛을 보기 위한 옵션 -t 특정 유닛들만 확인
log
- 시스템에 일어나는 이벤트들에 대한 기록
- 이슈 발생 시에 해당 시간에 일어났었던 일을 파악하기 위한 첫번째 수단
로그가 저장되는 위치
- /var/log
로그를 관장한 서비스
- systemd-journald : 로그를 수집하는 역할 (/run/)
- rsyslogd : 로그를 저장하는 역할 (/var/)
rsyslong 서비스
/var/messages 대부분의 로그기록 (인증, 메일, 반복예약, 부팅, 디버그 제외) /var/secure 인증에 관련된 로그 /var/maillog 메일에 관련된 로그 /var/cron 반복적인 예약에 관련된 로그 /var/boot.log 부팅에 관련된 로그
facility(기능).priotity(우선순위)
- facility
authpriv 인증 auth,security 로그인 cron cron, at과 같은 스케줄링 daemon telnet,ftp와 같은 데몬 서비스 kern 커널 mail 메일 local1-8 부팅 lpr 프린트 mark syslog에 의해 만들어지는 날짜유형 user 사용자
0 emerg 1 alert 2 critical 3 error 4 warning 5 notice 6 info 7 debug
logger
- 로그를 임의적으로 생성하도록 하는 명령어
- logger -p 기능.우선순위 "메세지"
rsyslog.conf 설정 변경 후 반영
- systemctl restart rsyslog.service
실시간 로그 모니터링
- tail -f /var/log/로그파일
journalctl = 확인
n 숫자 최근 내역서 숫자만큼 출력 p 우선순위 해당 우선순위 이상으로 출력 f 실시간으로 모니터링 --since yyyy-mm-dd 해당 날짜부터 현재까지 출력 --since yyyy-mm-dd --until yyyy-mm-dd since 부터 until 까지 출력
/run/log/journal 영구저장
- mkdir /var/log/journal
chmod g+s /var/log/journal
chown :systemd-journal /var/log/journal
systemctl restart systemd-journald.service
Linux 부팅 과정
- 공통 부팅 과정 : POST -> Boot Loader -> Kernel 로딩 -> intramfs
- init 프로세스 : init -> sysinit -> rc
- systemd 프로세스 : systemd -> localfs.target -> sysini.target -> basic.target
부트 프로세스
- 1단계 : 시스템 전원 ON
- 2단계 : BIOS 프로그램의 실행
- 3단계 : 부트매체의 검색
- 4단계 : 부트로더의 실행
- 5단계 : 커널 부트 이미지 적재
- 6단계 : 루트 파일시스템 마운트
- 7단계 : systemd 프로세스 실행
system target
타켓 설명 poweroff.target runlevel0 rescue.target runlevel1 sulogin 프롬프트, 기본 시스템 초기화 완료 multi-user.target runlevel2~4 텍스트 기반 사용 환경 graphical.target runlevel5 그래픽 기반 사용 환경 reboot.target runlevel6 emergency.target sulogin 프롬프트, initramfs 피벗 완료 및 시스템 루트 마운트
읽기전용
GRUB 부트로더
- GRUB : 파일 시스템과 커널 실행 포맷을 인식하여 하드디스크 상에서의 커널의 물리적인 위치를 기록하지 않고도 커널의 파일명과 커널이 위치하고 있는 파티의 위치만을 알고 있으면 시스템 부팅이 가능함
- 부트로더 : 운영 체제의 부팅 이전에 먼저 실행되는 프로그램으로 커널이 올바르게 부팅되기 위해 필요한 모든 관련 작업을 마무리하고 최종적으로 운영체제를 부팅 시키기 위한 목적을 가지고 있음
'GOORM' 카테고리의 다른 글
GOORM: Kubernetes-16 (0) | 2021.11.15 |
---|---|
GOORM: Kubernetes-15 (0) | 2021.11.12 |
GOORM: Kubernetes-13 (0) | 2021.11.10 |
GOORM: Kubernetes-12 (0) | 2021.11.09 |
GOORM: Kubernetes-11 (0) | 2021.11.08 |
댓글