[Linux] 21. DNS 서버
2022. 8. 9. 17:21
Linux
(Week 5 - Day 1) - (2/2) (Week 5 - Day 2) - (1/2) DNS 서버 도메인 네임을 IP (정방향), IP주소를 도메인 네임으로(역방향) 변환하는 프로토콜 도메인 주소를 root 도메인 부터 계층적으로 구성하고 관리하는 프로토콜 도메인 주소는 계층적으로 구성되어 있음 DNS 동작 방식 DNS 서버는 DNS 서버 한 대에서 모든 DNS 정보를 처리하는 방식이 아닌, 계층적으로 이루어진 구조를 통해 단계별로 정보를 제공하고 있다. DNS 구조 재귀적 쿼리(Recursive Query) 클라이언트가 DNS 서버에게 요청하는 쿼리 반복적 쿼리(Iterative Query) 재귀적 쿼리를 요청 받은 DNS 서버가 root 도메인 부터 해당 도메인을 관리하는 도메인 네임 서버를 찾아..
[Linux] 20. SELinux
2022. 8. 9. 17:09
Linux
(Week 5 -Day 1) - (1/2) SELinux - Security Enhanced Linux - 강제 접근 제어 모델인 MAC모델을 사용하여 시스템의 보안을 강화하는 니룩스 커널 모듈 접근 제어 모델 - Access Control Model - 주체(Subject) : 시스템의 리소스에 접근할 수 있는 프로세스, 사용자 - 객체(Object) : 파일 또는 포트 등과 같은 시스템의 리소스 DAC - Discretionary Access Control - 사용자가 임의로 객체에게 권한을 부여하여 객체에 대한 접근을 제어하는 임의 접근 제어 모델 - 주체는 객체에 대한 권한만 설정되어 있다면 접근할 수 있다. - Unix/Linux 시스템에서 기본적으로 사용하는 모델이다. MAC - Mandato..
[Linux] 19. 소프트웨어 패키지
2022. 8. 3. 19:08
Linux
(Week 4 -Day 3) - (2/2) 소프트웨어 패키지 - Software Package - 특정 서비스를 운영하기 위해 필요로 하는 프로그램 또는 도구를 쉽게 설치하고 - 관리할 수 있도록 하나의 패키지로 묶어서 제공하는 것 (레드햇, 데비안 방식이 있지만 레드햇만 해보기로...) RPM - Redhat Package Manager - 레드햇 계열의 리눅스 배포판에서 소프트웨어를 설치할 수 있도록 관리하는 도구 - 패키지 의존성 문제 (RPM 패키지 이름 형식 : 패키지이름-버전-릴리즈_정보-아키택쳐.rpm ) 명령어 RPM 패키지 설치 rpm -ivh 패키지_파일 RPM 패키지 업데이트 rpm -Uvh 패키지_파일 RPM 패키지 제거 rpm -e 패키지_이름 설치된 RPM 패키지 전체 목록 확인..
[Linux] 18. 리눅스 부트 프로세스
2022. 8. 3. 19:00
Linux
(Week 4 - Day 3) - (1/2) 리눅스 부트 프로세스 리눅스를 부팅하는 동안에 발생하는 단계별 초기화 프로세스 부팅 절차(공통) POST - Hardware상에서 문제가 없는지 확인하는 작업 - BIOS 또는 UEFI에서 이 과정을 거친 뒤에 선택에 따라 사용자가 추가하거나 변경한 - 디바이스를 설정할 수 있도록 한다. Booting 가능 장치 확인 CD/DVD -> ODD, HDD, SSD, NIC등을 찾느다. BIOS에서 부팅 가능한 장치의 순서를 찾는다. MBR - Master Bood Record - 파티션의 정보를 가지고 있다. - 그 이후 부트 로더를 찾아서 메모리에 적재한 뒤 시스템의 제어권을 부트 로더에게 전달한다. Boot Loader - /boot/grub2/gurb.cfg..
[Linux] 17. 로그 관리
2022. 8. 2. 21:40
Linux
(Week 4 - Day 2) - (2/2) 로그(Log) - 이벤트에 대한 기록 - 시스템에 특정 이벤트에 대한 기록이 있으면 문제가 발생한 시기와 이유를 확인할 수 있다. Syslog(rsyslogd) - Unix/Linux 시스템에서 사용하는 기본 로그(init) 로그 저장 경로 : /var/log/ 로그 저장 포맷 : 텍스트 로그 설정 파일 : /etc/rsyslog.conf 필터(Facility) kern 커널 레벨 메시지 news 네트워크 뉴스 관련 메시지 user 유저 레벨 메시지 uucp UUCP 서비스 관련 메시지 mail mail 서비스 관련 메시지 cron cron 서비스 관련 메시지 daemon 시스템 데몬 메시지 authpriv 보안 및 인가 메시지 auth 보안 및 인가 메시지 ..
[Linux] 16. Systemd
2022. 8. 2. 18:31
Linux
(Week 4 - Day 1) - (2/2) (Week 4 - Day 2) - (1/2) Systemd - 기존의 init 프로세스를 대체하는 프로세스로 최신 리눅스에 도입된 PID 1번 프로세스 기능 및 특징 - init 프로세스에 대한 호환성 제공(제한적으로 접근성을 제공) - systemd 유닛 사용 (service, socket, device)등의 unit이 있다. - 시스템 부팅 시 서비스 병렬 시작 init이 스크립트 기반으로 하나하나씩 실행되었다면, 기존 Unix 철학에 위반되지만 현대 컴퓨터의 성능이 향상됨으로써 병렬로 변경되었다. - 의존성 기반의 서비스 제어 Systemd 유닛 파일 구성 [Unit] 섹션 - 유닛에 대한 일반적인 정보 [Unit_type] 섹션 - 유닛 종류에 대한 정..
[Linux] 15. 논리 볼륨(LVM)
2022. 8. 1. 19:03
Linux
(Week 4 - Day 1) - (1/2) 논리 볼륨(LVM) - Logical Volume Management - 일반적인 스토리지 관리 방식보다 유연한 스토리지 관리 기능을 제공 구성 물리 볼륨(Physical Volume) -> 볼륨 그룹(Volume Group) -> 논리 볼륨(Logical Volume) 주요 용어 PV Physical Volume 논리볼륨에 디스크를 사용하기 위한 기본적인 디스크 관리 단위 VG Volume Group 1개 이상의 PV로 구성된 PV의 집합 LV Logical Volume LVM에서 데이터를 저장할 때 사용하는 볼륨 PE Physical Extent PV에서 사용하는 기본 데이터 저장 단위 기본값 4MB LE Logical Extent LV에서 사용하는 기본 ..
[Algorithm] 3. 백트래킹
2022. 7. 31. 22:32
Algorithm
정의 이름 그대로, 해를 찾는 과정에서 막히면 처음으로 돌아가는 방법이다. (= 가지치기) 재귀를 이용한 완전 검색을 하고 가지치기를 추가하는 기법 결론적으로, 불필요한 계산낭비를 방지하는 방식이라고 생각하면 된다. 주로 최적화문제와 결정문제를 해결하는데에 사용된다. ex_ 미로찾기, n-Queen 문제, Map coloring, 부분집합의 합 문제 코드 예시 N, M = map(int, input().split()) ans = [] def back(): if len(ans) == M: # 배열의 길이를 확인 print(" ".join(map(str, ans))) # 1 2 3 이런 상태로 출력하기 위해 return for i in range(1, N+1): # 1 ~ N 까지 if i not in an..