본문 바로가기

카테고리 없음

[리눅스 마스터 1급] 2023-1차 01번~10번

3번

1. 리처드 스톨먼 : Emacs, GCC, GDB 디버거 프로그램을 만들었으며, GNU 프로제긑와 자유 소프트웨어 재단(Free Software Foundation) 설립자이며, 카피레프트를 만든 사람.

2. 리누스 토발즈 : Linux 커널을 만든 사람이며 Linux 커널을 오픈 소스화 함.

3. 켄 톰슨 : C언어의 모체가 된 B언어를 개발하였고, UNIX를 개발하였다. QED, grep, 정규표현식, UTF-8 인코딩 정의 등을 개발하였으며 구글의 Go 언어의 개발에도 참여 하여ㅐㅆ다.

4. 앤드루 S, 타넨바움 : 유닉스 계열 운영체제 미닉스의 저자.

5. 데니스 리치 : 켄 톰슨과 함께 UNIX 시스템 개발 및 C언어개발을 하였다. 이후 C 프로그래밍 언어 책을 기술.

 

2번

1. 리다이렉션 : 명령의 출력 결과를 변경할 수 있으며, 결과값을 파일에 기록할 수 있다.

=> 입력 리다이렉션 

#) cat < /etc/resolv.conf : DNS 설정 파일을 cat 이라는 명령어로 입력 리다이렉트

=> 출력 리다이렉션

#) cat /etc/resolv.conf > resolv.txt : DNS 설정 파일의 cat 출력 값을 resolv.txt 로 저장 리다이렉트

2. 파이프 (shift + \ (엔터 위) : 어떤 프로세스의 표준 출력이 다른 프로세스의 표준 입력으로 쓰이는 것.

#) ps -ef | grep httpd : 현재 OS에서 실행중인 프로세스 출력(ps -ef) 그중 httpd 프로세스명 출력 ( grep httpd)

3. 라이브러리 :  프로그래밍에 사용할 수 있게 미리 만들어져 있는 함수나 변수들의 묶음

4. 가상 콘솔 : Linux, Unix 계열은 멀티 유저 시스템이므로, 하나의 OS에 다수 사용자가 접속이 가능. A라는 LINUX OS에 user1, user2, user3가 접속가능.

1번 세션은 2번 터미널, 2번 세션은 3번 터미널에 붙어 가상 콘솔 이용

 

1번

1. Apache License : 아파치 소프트웨어 재단에서 만든 소프트웨어 라이센스로, 누구든지 자유롭게 아파치 소프트웨어를 다운받아 부분 혹은 전체를 개인적, 상업적 목적으로 이용할 수 있으며, 재배포 시에 원본, 수정 소스코드를 반드시 포함시켜야 하는 것은 아니나, 아파치 라이센스 버전 및 표기는 반드시 표기해야한다.

2. LGPL : GPL의 조건이 엄격하여 사용자들이 사용에 있어 꺼려함을 감안하여 만든 라이선스. 

3. BSD : 버클리 소프트웨어 라이선스. 상업적 용도를 포함하여 모든 목적으로 사용 할 수 있으며, 제한 없이 수정 및 배포 가능, 소스코드는 소프트웨어 배포에 포함되어야 한다(LGPL, Apache License랑 조금 다른 부분인듯?)

4. MPL : 상업적 이용, 배포, 수정 가능하며 2차 라이선스로 이용 가능. 특허 기술이 구현 된 경우 관련 사실을 LEGEL에 기록 필요.

 

 

3번

(ubuntu 인줄 알았다)

1. Rocky Linux : yum 사용, rpm 사용, dnf 사용

2. CentOS : yum 사용, rpm 사용, dnf 사용

3. Debian : apt-get 사용, dpkg 사용 (칼리 리눅스는 Debian기반으로 만들어짐)

4. Ubuntu : apt-get 사용, dpkg 사용 (ubuntu 도 Debian 기반으로 만들어진 배포판)

 

1번

1. 고가용성 클러스터 :  (High Availability).  동일 서비스에 여러대의 서버를 구성하였다면, 하나의 서버에 부하가 가지 않게 부하분산하는 클러스터(LVS : Linux Virtual Server). 로드 밸런서를 Main, Backup 으로 나누어 고가용성 유지(HA).

2. 고계산용 클러스터 :  (High Performance Computing Cluster) 베어울프 클러스터라고도 불리며, 여러 노드를 이용하여 하나의 작업을 병렬로 수행하는 구조. => 베어울프 클러스터, HPC 클러스터, 고계산용 클러스터는 같은 의미

 

 

 

2번

1. RAID 0 - Striping, 구성하기 위해 최소 2개의 Disk 필요. RAID 구성하는 모든 디스크에 데이터를 분할하여 저장.

ex) A DISK 10GB - B DISK 10GB 에 a.txt (1MB) 저장 시 A 또는 B DISK 에 해당 파일 저장.

=> 20GB 가용 가능. 그러나 하나의 디스크 Fault시 복구 불가할 수 있음.

2. RAID 1 - Mirroring, 구성하기 위해서는 최소 2개의 Disk 필요. 말 그대로 미러링. A DISK 10GB, B DISK 10GB 를 RAID 1으로 구성, a.txt(1MB) 저장 시 A DISK 및 B DISK에 해당 파일 저장

=> 10GB 가용 가능. 안정성은 보장되나, 비용적인 측면에서 손해

3. RAID 4 - Block 단위로 Striping 하며, error correction을 위해 패리티 디스크를 하나 둬야함. 구성하기 위해선 최소 3개의 디스크가 필요. Parity 용도의 별도 디스크가 존재.

4. RAID 5 - RAID4와 비슷한구조이나 Parity 정보가 각 디스크에 존재

 

문제 풀이 : 총 디스크 용량 60GB 이나 스페어 용도로 10GB 빠져나와 50GB 가용 가능. 나머지 50GB로 RAID-5 구성. RAID 5 구성 시 디스크 수량 -1개의 용량이 가용가능하므로 40GB

 

* 추후 각 RAID 구성 시 가용 가능한 용량 체크 필요 및 각 RAID 별 상세 정리 필요할듯 함

4번

답은 4번

추후  싱글 모드 부팅 후 Root 패스워드 변경 테스트 진행 테스트 예정

 

1번

 

1. systemctl enable sshd : OS 부팅 시 sshd 서비스 실행

2. systemctl status sshd : sshd 상태 확인

3. systemctl active sshd : ?

4. systemctl start sshd : sshd 서비스 시작

 

* sshd 서비스 : 원격 접속 도구인 Telnet의 단점을 보완한 Secure Shell 서비스. Telnet 의 경우 패킷을 가로 채 id/pw 정보를 탈취할 수 있으므로~ 데이터를 암호화하여 전송하는 ssh 서비스를 이용

 

3번

1. xauth : X서버에서 설정하는 프로그램으로, X클라이언트를 허가 할 때 X윈도우 실행 시 생성되는 키 값으로 인증.

2. xhost : X서버에서 설정하는 프로그램으로, X서버에 호스트네임, 사용자 ID를 접속이 허용된 목록에 추가 또는 삭제. 

-> x 클라이언트에서 환경변수 DISPLAY를 x서버의 값으로 등록

3. x 클라이언트에서 x서버의 DISPLAY 값을 넣어야함.

4. TERM :  요 환경변수는 터미널 종류인듯?

 

1번

1. GDM : GNOME Display Manager

2. KDE : MS 사의 Windows 와 유사한 UI이며, 파일매니저, 윈도우매니저, 헬프시스템 등의 LINUX/UNIX 시스템을 위한 Desktop

3. GNOME : 우분투, 페도라 등의 유닉스 계열의 운영체제에서 사용 가능한 Desktop 환경.

4. Mutter : ?