https://www.acmicpc.net/problem/10942 10942번: 팰린드롬? 총 M개의 줄에 걸쳐 홍준이의 질문에 대한 명우의 답을 입력으로 주어진 순서에 따라서 출력한다. 팰린드롬인 경우에는 1, 아닌 경우에는 0을 출력한다. www.acmicpc.net 입출력을 꼭 sys.stdin.readline 으로 바꿔주어야 시간초과가 안난다 !! 그리고 pypy3로 통과했다 i 부터 j 까지의 수열이 펠린드롬인지 확인해야 하는데 미리 dp 테이블을 채워준다. 펠린드롬 수열의 경우 길이가 1인경우 펠린드롬이므로 dp[i][i] = 1 을 채워준다. if start == end: # 자기 자신인 경우 무조건 1 임 dp[start][end] = 1 길이가 2인경우 수열 두가지만 확인하면 되는데, ..
전체 글
Data Engineering과 Cloud Native 기술에 대해 Dive Deep 하는 만능 플랫폼 엔지니어가 되는 것을 목표로 하고 있습니다. 경험했던 내용과 공부했던 내용을 기록합니다. 🐻❄️☁️현재 생성되어 있는 connection 리스트를 볼 수 있다. nmcli con show enp0s3 인터페이스의 ip주소를 10.0.2.10으로 바꾸려고 한다. nmcli connection modify enp0s3 ipv4.addresses 10.0.2.10/24 gateway를 설정한다. nmcli connection modify enp0s3 ipv4.gateway 10.0.2.1 dns 서버를 설정한다. nmcli connection modify enp0s3 ipv4.dns 8.8.8.8 method를 manual 로 바꾼다. nmcli connection modify enp0s3 ipv4.method manual 네트워크 connection 설정을 업데이트한다. nmcli connection u..
DNS 서버는 요청을 받으면 특정 호스트의 주소를 제공한다. 그리고 특정 호스트 주소 뿐만 아니라 설정해준 영역에 해당하는 도메인 정보를 제공하기도 한다. DNS 서버 설정 파일 리눅스에서 dns 서버를 사용하기 위해서 사용하는 도구는 bind이다. 따라서 bind 패키지를 설치한다. yum -y install bind 설치하면 자동으로 /etc/named.conf 파일이 생기는데 기본적인 DNS 서비스 구성에 대해 설정할 수 있다. 이 설정파일에서 Master DNS 서버 설정을 할 수도 있다. 기본 설정값은 options { } 안에 listen-on port 53 {localhost}; 그리고 allow-query{localhost}; 라고 되어 있다. listen-on port 53 는 DNS 요..
리눅스에서 웹서버 서비스를 제공하기 위해서 Apache를 사용한다. 서버에서 http 요청은 웹서버가 수신하고 처리하는데 Apache가 바로 웹서버에 해당한다. Apache 는 클라이언트의 http 요청을 받고, 받은 요청에 대한 응답을 http 응답으로 전송한다. 1. 기본 웹서버 구성하기 httpd 패키지를 설치한다. yum -y install httpd httpd 설정파일은 /etc/httpd/conf/httpd.conf 파일이다. 여기서 관련 설정을 해줄수 있다. 2. 가상 호스트 구성하기 기본 설정으로 Apache 웹서버를 구성하면 단일 페이지만 제공하지만, 여러개의 웹 사이트를 제공하기 위해 가상호스트 구성을 할 수 있다. 우선 /etc/hosts 파일에 등록해서 이름 기반으로 가상 호스트를 ..
iscsi 서비스를 사용한 블록스토리지는 DAS, SAN 스토리지 연결방식에서 사용된다. DAS 연결방식은 Direct Attached Storage 방식이고 스토리지가 시스템에 직접적으로 연결되어 있는 방식이다. SAN 연결방식은 Storage Area Network 방식이며, 네트워크를 이용하는 스토리지 연결 방식이다. SAN 방식 중에서도 FC-SAN, IP-SAN방식이 있는데 그중에서 IP-SAN 방식에 해당하는 것이 iSCSI 블록 스토리지이다. 블록 스토리지를 공유할 서버에서 타겟 설정 하기 우선 targetcli 패키지를 설치한다. yum install targetcli target 서비스를 활성화한다. systemctl start target systemctl enable target ta..
1. NFS 란 Network File System 으로, 가상화 또는 클라우드 서비스에서 가상머신의 스토리지를 공유할 때 자주 사용된다. NFS서버를 구성하면 로컬에 존재하는 파일을 공유할 수 있다. 또한 파일을 공유할 때 접근가능한 host 목록을 지정할 수 있다. 현재 최신판 리눅스에서는 NFS 4.0 버전인 NFSv4를 주로 사용하고 있다. 2. NFS 서버 구성하기 우선 nfs-utils 패키지를 yum으로 설치한다. yum -y install nfs-utils NFS 는 server-client 구조를 취한다. 우선 server 역할을 하는 곳에서 /etc/exports 파일을 작성해준다. vi /etc/exports /etc/exports 파일에는 디렉토리경로 접근제어리스트(옵션) 이 세가지..
https://www.acmicpc.net/problem/2283 2283번: 구간 자르기 1번째 줄에 정수 N, K(1 ≤ N ≤ 1,000, 1 ≤ K ≤ 1,000,000,000)가 주어진다. 2~N+1번째 줄에 각 구간의 왼쪽 끝점과 오른쪽 끝점의 위치가 주어진다. 양 끝점의 위치는 0 이상 1,000,000 이하의 정수이다. www.acmicpc.net n, k = map(int, input().split()) array = [0] * 1000002 # 1 ~ 100001 까지 저장 for i in range(n): a, b = map(int, input().split()) array[a+1] += 1 array[b+1] -= 1 for i in range(1, 1000002): array[i]..
SELinux 가 필요한 이유 보통 리눅스는 DAC 모델을 기준으로 접근제어를 한다. DAC 모델은 Discretionary Access Control 의 약자로, 이는 '사용자 권한'을 기준으로하여 파일이나 자원에 대한 접근 제어를 하는 것이다. 그러나 취약점이 존재한다면 그 취약점을 통해 시스템 권한 및 시스템 정보가 쉽게 탈취될 수 있다. SELinux 는 리눅스의 보안을 강화해주는 커널 모듈이다. MAC 모델 SELinux 는 MAC 모델을 기반으로 한다. MAC 모델은 각 사용자나 프로세스, 파일에 보안 레이블을 지정한다. 이 보안레이블을 컨텍스트(context)라고 하며, 사용자나 프로세스에 지정된 컨텍스트와 파일에 지정된 컨텍스트가 연관성이 없으면 접근할 수 없다. ls -Z 명령어로 각 파..