리눅스마스터 1급 필기 기출문제 해설/보충설명 20130309


 

Cap 2016-08-10 02-18-10-767운영체제의 주요 역할
1. 컴퓨터 하드웨어를 제어
2. 작업의 순서를 정하며, 입출력 연산을 제어
3. 프로그램의 실행을 제어하며, 데이터와 파일의 저장을 관리
4. 사용자들 간의 하드웨어 자원을 공유할 수 있도록 한다.
5. 시스템 자원을 스케줄링하여 효율적으로 활용할 수 있게 한다.
6. 입출력을 쉽게 하는 기능을 제공한다.
7. 응용 프로그램의 작성과 실행을 편리하게 한다.
8. 오류의 발생을 막고 복구를 지원
9. 데이터의 조직화, 네트워크 통신 처리 기능을 수행한다.
10. 편리한 사용자 인터페이스를 제공한다.

Cap 2016-08-10 02-18-22-145리눅스의 특징
1. 다중 사용자 및 다중 처리 시스템
2. 완전히 공개된 시스템
3. 뛰어난 네트워크 환경
4. 다양한 파일 시스템 지원
5. 뛰어난 이식성
6. 유연성과 확장성
7. 뛰어난 안정성과 보안성
8. 우수한 가격대 성능비
9.  다양한 응용 프로그램의 제공
10. 다양한 배포판의 존재

리눅스의 철학
1. GNU
– GNU란 “GNU는 유닉스가 아니다” 라는 뜻으로 유닉스와 호환이 되면서 더 강력한 운영체제를 만들고자 하는 프로젝트이다.
2. FSF와 자유 소프트웨어
– 자유 소프트웨어는 사용자가 소프트웨어를 실행, 복제, 학습, 개작, 향상시킬 수 있는 자유가 보장되어야 한다.
3. 카피레프트와 GNU GPL
– 카피레프트는 프로그램을 실행하고 복제할 수 있는 권리와 함께 개작된 프로그램에 대해 배포상의 제한조건을 설정하지 않는 한, 개작과 배포에 대한 권리 또한 모든 사람에게 허용하는 것이다.
– GNU GPL은 GNU 소프트웨어에서 카피레프트를 실제로 구현한 라이선스를 말한다.

리눅스 기반 모바일 운영체제
안드로이드, 바다, 마에모, 마고, 리모, 타이젠

리눅스의 탄생과 역사
1991년 핀란드 헬싱키 대학의 대학원생인 리누스 토발즈는 리눅스의 첫번째 버전인 0.01을 1991년 9월 17일에 인터넷에 공개하였다.

Cap 2016-08-10 02-43-29-586

Cap 2016-08-10 02-45-12-252

Cap 2016-08-10 02-45-55-634

리눅스 배포판
레드헷 리눅스, 데비안 리눅스, 수세 리눅스, 슬랙웨어, 우분투, 맨드레이크 리눅스, CentOS, 젠투 리눅스, 리눅스민트 등

Gnome : 그래픽 사용자 인터페이스로서 완전히 소스 공개 자유 소프트웨어

Cap 2016-08-10 03-12-39-452 Cap 2016-08-10 03-12-53-967RAID의 종류
RAID-0
스트라이핑 기술을 사용하여 빠른 입출력 속도를 제공
데이터를 중복이나 패리티 없이 디스크에 분산하여 기록
처리속도는 빠르나 구성된 디스크 중에 하나라도 오류가 발생하면 데이터 복구가 불가능

RAID-1
미러링 기술을 사용하여 두개의 디스크에 데이터를 동일하게 기록
스트라이핑 기술은 사용하지 않는다.
디스크 오류시 데이터 복구능력은 탁월하지만, 중복저장으로 인한 디스크의 낭비가 50%에 이른다.

RAID-2
디스크들은 스트라이핑 기술을 사용하여 구성하고, 디스크의 에러를 감지하고 수정하기 위해 ECC정보를 사용한다.

RAID-3
스트라이핑 기술을 사용하며 패리티 정보를 저장하기 위해 별도로 하나의 디스크를 사용한다.
입출력작업이 동시에 모든 디스크에 대해 이루어지므로 입출력을 겹치게 할수 없다.
보통 대형 레코드가 많은 시스템에서 사용

RAID-4
블록형태의 스트라이핑 기술을 사용하여 디스크를 구성
단일 디스크로부터 레코드를 읽을 수 있고 데이터를 읽을때 중첩 입출력의 장점이 있다.
쓰기 작업은 패리티 연산을 해야 한고 패리티 디스크에 저장해야 하기 때문에 입출력의 중첩이 불가능하고 병목현상이 발생할 수 있다.

RAID-5
패리티 정보를 이용하여 하나의 디스크가 고장나도 사용이 가능한 구성방식으로 최소 3개의 디스크로 구성해야 한다.
디스크에 쓰기 제한 주소를 지정하므로 모든 읽기 및 쓰기가 중첩될 수 있다.

RAID-6
전체적인 구성은 RAID-5와 비슷하지만 디스크에 2차 패리티 구성을 포함하여 매우 높은 고장 대비 능력을 발휘한다. 
2개의 패리티를 사용하여 2개의 디스크 오류에도 데이터를 읽을 수 있다.
2개의 패리티를 사용하여 최소 4개의 디스크로 구성해야 하여 RAID-5에 비해 공간 효율성은 떨어진다.

RAID-7
하드웨어 컨트롤러에 내장되어 있는 실시간 운영체제를 사용하여 구성하는 방식으로 속도가 빠른 버스를 이용한다.

RAID 0+1
디스크 2개를 RAID-0의 스트라이핑 기술로 구성하고 다시 RAID-1의 미러링으로 구성하는 방식으로 최소 4개의 디스크가 필요하다.

RAID-10
RAID 0+1 의 반대의 개념
디스크 2개를 먼저 미러링으로 구성하고 다시 스트라이핑 하는 방식

RAID-53
RAID-3 방식에 별도로 스트라이프 어레이(Array)를 구성하는 방식이다. 
RAID-3 보다 높은 성능을 제공하지만 구성 비용이 많이 든다.

Cap 2016-08-10 03-44-32-161default=2
초기 grub 화면에서 아무런 선택을 하지 않았을 경우에 어느 쪽으로 부팅을 할 것인지 정한다.
0은 첫번째 title 로 부팅, 1은 두번째, 2는 세번째 title 로 부팅한다.
따라서 2.6.8-308.el5 커널 버전으로 부팅이 진행된다.

timeout=5
초기 grub 화면에서 default를 자동으로 적용시키기 전에 바꿀 수 있는 시간을 지정할 수 있다. 초 단위.

Cap 2016-08-10 03-44-42-872/usr
시스템이 아닌 일반사용자들이 주로 사용하는 디렉토리. 즉, c++, chsh, cpp, crontab, du, find등과 같이 일반사용자들용 명령어들은 /usr/bin 에 위치한다.
시스템 운영에 필요한 명령, 응용 프로그램들이 위치하는 디렉터리이다. 터널 소스, C언어 헤더파일, C-컴파일러와 같은 개발 도구, X-window, 리눅스에서 서버 관리를 위해 사용하는 아파치나 mysql, php 등이 모두 이 디렉터리의 하위 디텍터리에 설치된다.

/var
시스템운용중에 생성되었다가 삭제되는 데이터를 일시적으로 저장하기 위한 디렉토리. 거의 모든 시스템로그파일은 /var/log 에 저장되고, DNS 의 zone 설정파일은 /var/named 에 저장되고, 메일파일은 /var/spool/mail 에 저장되며, 크론설정파일은 /var/spool/cron 디렉토리에 각각 저장됨.

Cap 2016-08-10 03-48-11-667X윈도의 특징
X윈도는 아데나 프로젝트의 일환으로 1984년 최초 버전을 발표하였다.
X윈도는 네트워크 프로토콜에 기반을 둔 그래픽 사용자 인테페이스 환경이다.
X윈도는 클라이언트/서버 구조로 되어있고 서로간의 통신을 위해 X Protocol을 사용한다.
현재 리눅스를 비롯하여 유닉스의 대부분이 X윈도 시스템을 사용하고 있다.

Cap 2016-08-10 03-54-47-714 Cap 2016-08-10 03-54-59-072XFree86
XFree86은 IBM 호환 시스템을 사용하는 유닉스 계열 운영체제를 위한 X 윈도 프로젝트이다.
초기에는 인텔 x86 기반 플랫폼으로 개발되었으나 차후에 Macintosh, Alpha, SPARC 용으로 확대 되면서 2004년 초까지 가장 선도적인 X윈도 시스템이었다.
2004년 2월에 발표된 4.4.0버전이 자유 소프트웨어 재단의 GPL 라이선스와 호환되지 않으면서 현재는 X.org로 변경된 상태이다.
2008년 12월 4.8.0 버전을 발표한 후에 개발이 중단된 상태이다.

Cap 2016-08-10 04-02-36-673Shell 이란?
Shell 은 커널과 사용자간의 다리역할을 하는 것으로 사용자로부터 명령을 받아 그것을 해석하고 프로그램을 실행하는 역할을 한다.
Shell 의 확인 – 명령 프롬프트 상에서 ‘echo $SHELL’ 이라고 실행하면 확인 가능
Shell 의 변경 – chsh 명령을 사용하여 변경
사용자의 로그인 Shell 정보 확인 – /etc/passwd 의 7번째 필드에 기록

Cap 2016-08-10 04-10-38-786

Cap 2016-08-10 04-11-19-112프로세스에 대한 다양한 정의
1. 실행중인 프로그램
2. PCB(Process Control Block)를 지닌 프로그램
3. 프로그램 카운터를 지닌 프로그램
4. 능동적 개체로 순차적으로 수행하는 프로그램

Cap 2016-08-10 04-16-51-821Cap 2016-04-11 13-39-39-276활동상태(기억장치를 할당 받은 상태) : 준비, 실행, 대기 

지연상태(기억장치를 잃은 상태) : 지연 준비, 지연 대기
Cap 2016-09-02 11-22-20-600

Cap 2016-08-10 04-19-47-106

비선점 스케줄링 정책
– 프로세스가 CPU를 할당받아 실행이 시작되면 작업 자체가 I/O 인터럽트를 걸거나 작업을 종료할 때까지 실행상태에 있게됨
– 모든 프로세스가 공정하게 순서에 따라 실행됨 > 응답시간 예측 가능
– 짧은 프로세스가 긴 프로세스를 기다리게 될 수 있음

선점 스케줄링 정책
– 진행 중인 프로세스에 인터럽트를 걸고 다른 프로세스에 CPU를 항당하는 스케줄링 전략
– 높은 우선순위의 프로세스를 긴급하게 처리하는 경우에 유용
– 대화식 시분할 시스템에서 빠른 응답시간을 유지하는데 유용
– 문맥 교환에 따른 오버헤드 발생


Cap 2016-08-10 04-22-37-370
OSI 7계층
1계층 – 물리계층 
실제 장치들을 연결하기 위해 필요한 케이블 및 연결장치 등과 같은 기계적인 항목과 전압, 신호 방식 등의 전기적인 항목에 대한 특성을 규정한다.
– 이 계층에서 동작하는 장치에는 허브나 리피터 등이 있다.

2계층 – 데이터링크 계층
– 신뢰성 있는 데이터 전송을 보장하기 위한 계층으로 오류 제어와 흐름 제어를 담당한다.
– 데이터를 전송하는 단위로 분할하는 기능 , 프레임 전달, 전송단위의 순서 제어 기능, 에러 제어 기능, 데이터 흐름 제어 기능 등을 제공한다.
네트워크의 오류 제어는 데이터를 재전송하는 방법으로 처리한다.
– 이 계층에서 동작하는 장치에는 브리지나 스위치 등이 있다.

3계층 – 네트워크 계층
– 네트워크 계층은 송신 호스트에서 전송한 데이터가 수신 호스트에 도착하기 위한 올바른 경로를 선택을 지원하는 역할을 한다.
송수신 호스트 사이의 패킷경로를 결정하는 라우팅, 트래픽이 집중되지 않도록 하는 혼잡 제어, 패킷의 분할과 병합, 인터네트워킹 등의 역할을 수행한다.
– 이계층에서 동작하는 장치에는 라우터가 있다. 

4계층 – 전송 계층
– 전송계층은 송신 프로세스와 수신 프로세스간의 연결기능을 제공하고 안전한 데이터 전송을 지원한다.
– 계층 4까지의 기능은 운영체제에서 시스템 콜 형태로 상위 계층에 제공한다.

5계층 – 세션 계층
-세션 계층은 전송 계층과 유사하게 송수신 호스트의 세션연결을 지원하지만 더욱 더 상위의 논리적 연결을 지원한다.
– 즉 사용자간의 대화를 제어하는 대화 제어자로서 사용자들을 동기화하고 유효한 설정인지를 확인한다.

6계층 – 표현 계층
– 표현 계층은 송수신 호스트 간에 서로 다르게 사용하는 코드와 문자 등을 번역하여 일관되게 전송 데이터를 서로 이해할 수 있도록 하는 기능을 제공한다.
데이터의 암호화와 해독을 수행하고 효율적인 전송을 위해 필요에 따라 압축과 압축해제를 수행한다.

7계층 – 응용 계층
– 응용 계층은 응용 프로그램과 연계하여 사용자에게 편리한 환경을 제공하는 역할을 수행한다. 
– 전자우편, 웹, 파일전송 등과 같은 응용 프로그램 환경에서 이루어진다.

Cap 2016-08-10 05-45-34-736UTP 케이블의 배열
8가닥중 실질적으로 쓰이는 선은 4개로 1, 2, 3, 6번인 ‘흰주, 주, 흰녹, 녹’ 이다.
T568B 1번과 3번 2번과 6번의 위치를 바꾸면 T568A 가 된다.

배열순서
T568B 흰주 – 주 – 흰녹 – 파 – 흰파 – 녹 – 흰갈 – 갈
T568A 흰녹 – 녹 – 흰주 – 파 – 흰파 – 주 – 흰갈 – 갈

Cap 2016-08-10 05-51-19-437통신망의 종류
LAN 
– 집, 사무실, 학교 등의 건물과 가까운 지역을 네트워크 매체를 이용하여 하나로 묶는 근거리 통신망을 말한다.
– 스타형, 버스형, 링형, 망형 으로 나뉜다.

MAN
– MAN(도시권 통신망) 은 LAN과 WAN의 중간 형태로 위성 도시 등을 연결한 형태를 말한다.
– MAN은 LAN보다 장거리이고 고속이며 음성과 데이터 모두 전송이 가능하다.

WAN
– WAN(원거리 통신망 또는 광여 통신망) 은 국가, 대륙 등과 같은 넓은 지역을 연결하는 네트워크이다.
– 거리상의 제약이 없지만, 다양한 경로를 경유해서 도달하므로 LAN보다 속도가 느리고 전송 에러율도 높다.
– WAN을 구성하는 방법에는 전용 회선과 교환 방식이 있다.
– 전용 회선 방식은 회선 제공하는 통신업자가 계약 체결한 송수신 사용자끼리만 전용 통신 선로로 연결하여 데이터를 교환하는 방식으로 안전성이 우수하나 높은 비용이 소요된다. 

Cap 2016-08-10 06-01-22-823ethtool – 네트워크 카드 정보를 확인하거나 설정

Cap 2016-08-10 06-01-33-200lsmod – 적재된 모듈을 출력

Cap 2016-08-10 09-31-52-088리눅스에서 사용자 권한은 root라는 아이디를 절대 권한자로 인정하는 것이 아니라 UID 와 GID를 기준으로 한다.
리눅스 시스템 내부에서는 사용자를 흔히 말하는 ID로 관리하는 것이 아나라 숫자값 형태의 UID로 관리한다.
사용자의 UID는 0번부터 정수 값으로 부여되는데, root는 0이 할당되고 0번 사용자를 슈퍼유저로 인식한다.
일반 사용자도 root처럼 UID와 GID를 0으로 바꾼다면 슈퍼유저로 전환된다. 

Cap 2016-08-10 09-47-45-174test2 사용자의 UID는 501 이고 GID는 501 이다.

Cap 2016-08-10 09-50-38-817INACTIVE : 패스워드 사용기한이 지난 뒤 실제로 계정의 로그인을 막는 유예기간을 설정하는 것이다. -1은 설정되지 않은 상태, 0은 유예기간 없음, 3이리고 설정하면 패스워드 유효기간이 지난후 3일이내에는 로그인이 가능하다. 

EXPIRE : 계정 유효기간

Cap 2016-08-10 10-04-12-164-g : 그룹을 지정할 때 사용하는데 지정할 그룹이 미리 생성되어 있어야 한다.
-G : 기본그룹이외에 추가로 그룹에 속하게 할 경우에 쓴다

Cap 2016-08-10 10-13-52-864users : 시스템에 로그인 되어 있는 사용자의 아이디를 출력해 주는 명령어
who : 시스템에 로그인 되어 있는 사용자를 출력해 주는 명령어
w : 시스템에 로그인 되어 있는 사용자와 사용자가 수행중인 작업을 출력해 주는 명령이다.
id : 시스템에 등록된 아이디에 대한 정보를 출력하느 명령으로 UID, GID, 속한 그룹 정보를 보여준다.

Cap 2016-08-10 10-36-52-703슈퍼블록(Super Block)은 파일 시스템에 의존하는 정보를 가지며 파일 시스템의 크기 등과 같은 파일 시스템의 전체 적인 정보를 가지고 있다.

아이노드(inode)는 파일의 이름을 제외한 해당 파일의 모든 정보를 가지고 있다. 파일 이름은 inode 번호와 함께 디렉토리 안에 저장된다

Cap 2016-08-10 10-41-20-816
? ?

Cap 2016-08-10 10-59-50-110특수 퍼미션
SetUID : 파일을 실행하는 동안에는 소유자의 권한을 획득하는 허가권.
SetGID : 파일을 실행하는 동안에는 소유그룹의 권한을 획득하는 허가권.
Stick Bit : 아무나 읽고 쓰기가 가능하지만 생성한 소유자만이 파일을 지울 수 있는 허가권
SetUID(4), SetGID(2), sticky bit(1) 를 부여하기 위해서는 기본 퍼미션 755 등등의 앞에 붙여주면 된다.

Cap 2016-08-10 12-55-48-859
fdisk(디스크 추가) – mkfs(파일시스템 생성) – mkdir(디렉토리 생성) – mount(마운트)

Cap 2016-08-10 13-07-19-766fsck 종료코드
0 : 에러 없음
1 : 화일 시스템 에러 고쳐짐
2 : 리부팅이 필요함
4 : 화일 시스템 에러를 고치지 않고 그대로 둠
8 : 실행 에러
16 : 사용법 또는 문법 에러
128 : 공유 라이브러리 에러

Cap 2016-08-10 13-30-57-785dd(data dumper) : 파티션이나 디스크 단위로 백업할 때 사용하는 유틸리티로 사용하기는 쉬우나 많은 시간이 소요된다.

Cap 2016-08-10 13-38-06-293used : 현재 사용량
soft : 현재 설정된 soft limit
hard : 현재 설정된 hard limit
grace : soft limit에 지정된 용량 초과시 남은 유예 기간 표시

Cap 2016-08-10 13-50-39-616스왑(Swap)
하드디스크의 일부를 마치 메모리처럼 사용하게 해주는 기술인 스왑(Swap)은 일반적으로 리눅스 설치 시에 설정한다. 그러나 스왑 영역이 부족한 경우 리눅스 설치 후에도 디스크의 남은 공간이나 파티션을 이용해서 추가 설정할 수 있다.

Cap 2016-08-10 13-53-59-037mkswap : 스왑 파티션이나 스왑 파일을 생성하는 명령
swapon : 스왑 파티션이나 스왑 파일을 활성화시키는 명령으로 스왑의 상태 확인도 가능하다.
free : 현재 사용 중인 메모리의 상태를 출력해 주는 명령이다.

df : 현재 마운트된 디스크의 크기, 사용량, 남아있는 용량 등에 대한 정보를 출력한다.

Cap 2016-08-10 13-53-17-308
리눅스의 실행 레벨
실행 레벨이란 init 데몬에 의해 수행되어질 내용이나 시스템 초기화 등을 정의해둔 여러가지 모드를 말한다.
리눅스는 총 8개의 레벨로 정의가 되어있다.
0 : 시스템의 종료할때 호출되는 레벨이다.(기본값으로 설정해서는 안됨)
1 : 단일 사용자모드(Single User Mode)로 로그인 과정 없이 root 사용자로 리눅스 시스템을 부팅하여 일종의 관리자 모드 같은 역할을 한다.
2 : 네트워크를 사용하지 않는 다중 사용자 모드
3 : 네트워크를 지원하는 다중 사용자 모드(Multiuser Mode) 
4 : 사용되지 않는 레벨이지만, 사용자가 정의하여 사용할 수 있다.
5 : X윈도를 사용하는 다중 사용자 모드로 최근 배포판에서 기본적으로 설정되는 레벨이다.
6 : 시스템을 재부팅할 때 호출되는 레벨이다.(기본값으로 설정해서는 안됨)

Cap 2016-08-10 14-04-54-588RSS : 실제 메모리 사용량

Cap 2016-08-10 14-08-11-961fork : fork는 자식프로세스를 만들기 위해서 사용되는 프로세스 생성기이다. fork 에 의해 생성된 자식 프로세스는 자신만의 PID 를가지게 되며, PPID는 부모프로세스의 PID를 가지게 된다.

cron : cron을 이용하여 주기적으로 실행하는 작업은 시스템 운영에 필요한 작업과 사용자의 필요에 의한 작업으로 나눌 수 있다.

nice : 프로세스의 우선순위를 변경하는 명령으로 NI값을 설정할 때 사용한다.

nohup : 사용자가 로그아웃하거나 작업중인 터미널 창이 닫혀도 실행중인 프로세스를 백그라운드 프로세스로 작업될 수 있도록 해 주는 명령이다.

Cap 2016-08-10 14-38-26-219# rpm -qf 파일 : 파일이 속한 패키지 찾기

Cap 2016-08-10 14-42-47-181

Cap 2016-08-10 14-49-52-121# tar -jcvf home.tar.bz2 /home
해설) /home 디텍토리 내용을 묶어서 bzip2로 압축

# tar -jxvf home.tar.bz2 /home
해설) /home.tar.bz2 파일의 묶기 및 압축 해제

Cap 2016-08-10 15-07-47-991cat /proc/cpuinfo 
– cpu 모델 정보 확인

Cap 2016-08-10 18-03-49-634

/etc/aliases
일종의 메일계정을 다른 메일주소나 다른 계정으로 매칭하는 기능을 한다.

lspci
시스템의 모든 PCI BUS와 장치에 대한 목록과 각개 하드웨어 설정 정보를 확인할 수 있는 명령어

/etc/sysconfig/hwconf
kudzu(하드웨어 자동인식 데몬)가 인식한 하드웨어를 설정하여 데이터베이스화 해서 관리하는 파일이다. 

dmidecode 명령은 서버 하드웨어, 바이오스 정보를 system DMI 테이블에서 읽어온다.

Cap 2016-08-10 18-13-18-279
플러그 앤 플레이
꽂으면 실행된다는 뜻으로, 컴퓨터 실행 중에 주변 장치를 부착해도 별다른 설정 없이 작동함을 뜻한다. 

Cap 2016-08-10 18-30-10-711lsmod : 적재된 모듈 출력

insmod : 모듈 적재, 커널 디렉토리를 뒤져서 해당 모듈을 적재한다.

rmmod : 모듈 삭제

modprobe : 모듈적재 depmod에 의해 갱신된 modules.dep에서 찾아 적재한다. insmod와 달리 해당 커널 디렉토리로 갈 필요없이 아무위치에서나 모듈을 적재할 수 있다. 또한 의존성이 필요한 모듈이나 먼저 실행되어야 할 모듈이 있다면 그 모듈부터적재하고 해당모듈을 적재한다.

Cap 2016-08-10 18-39-51-106

Cap 2016-08-10 18-51-06-400make config : 텍스트 기반의 설정도구로 터미널 환경에서 y, m, n으로 설정한다.
make menuconfig : 텍스트 기반의 컬러 메뉴를 제공하고, 커서를 이용하여 이동이 가능하다. 가장 보편적으로 사용
make xconfig : X윈도 환경의 Qt 기반의 설정도구이다.

Cap 2016-08-11 02-09-18-324

fat32 는 윈도우 계열

Cap 2016-08-11 02-54-34-304/proc/partitions : 장치 번호와 이것들의 사이즈 그리고 /dev 이름들에 대한 목록.

/proc/mounts : self/mounts에 대한 심볼릭 링크로서 현재 마운트된 장치들과 그들의 마운트 포인트를 보여준다.

df : 현재 사용중인 파일시스템의 전체용량, 사용한 용량, 사용가능한 용량, 사용율, 마운트정보등을 보여준다.
즉, 이 명령어는 현재 사용중인 파일시스템들의 디스크사용량을 출력한다.

Cap 2016-08-11 02-59-59-207

Cap 2016-08-11 03-01-27-697printf : 문자열 출력 리눅스 명령어

lpadmin : 프린터 설정
lp : System V 계열에서 사용하는 인쇄 명령
lpq : 프린터 큐에 있는 작업의 목록을 출력하는 명령

Cap 2016-08-11 03-07-29-262logrotate 
로그파일은 계속적으로 덧붙여지면서 쌓이는 형태라 파일의 크기도 계속 커지게 된다. 이를 방지하기 위해서 로그파일을 여러개로 분할해 주는 프로그램이 logrotate 이다.

Cap 2016-08-11 03-16-08-527/var/log/secure : 모든 접속과 관련하여 언제 어디서 어떤 서비스를 사용했는지 기록한다.

Cap 2016-08-11 03-18-44-545messages : 시스템 로그. 리눅스 커널로그 및 주된로그

Cap 2016-08-11 03-32-13-059/etc/nologin : /etc/nologin 파일이 존재하면 root 만 로그인이 가능하고 일반 사용자는 로그인이 거부된다. reboot 명령어로 재부팅 하면 /etc/nologin  파일이 사라진다.

Cap 2016-08-11 03-38-24-418PAM은 사용자를 인증하고 그 사용자의 서비스에 대한 접근을 제어하는 모듈화된 방법을 말한다.
응용 프로그램들에게 사용자 인증방법을 선택할 수 있는 공유 라이브러리의 묶음을 제공한다.

Cap 2016-08-11 03-48-29-785

Cap 2016-08-11 03-49-05-173

day-zero backup
시스템을 설치한 후 사용자들이 시스템을 사용해보기 전에 시스템의 모든 파일들과 프로그램들을 백업하는 것.
이 방법으로 백업하면 시스템이 손상되어 구동할 수 없을 때 시스템을 다시 설치하고 Setting하지 않아도 처음에 시스템을 설치한 것과 같이 된다.
컴퓨터를 구매할 때 주는 복원 CD등이 이 백업에 속한다.

Cap 2016-08-11 04-04-26-631dd(data dumper)
파니션이나 디스크 단위로 백업할 때 사용하는 유틸리티로 사용하기는 쉬우나 많은 시간이 소요된다.
dd 명령 하나로 백업과 복구를 수행

Cap 2016-08-11 04-06-14-141dump 및 restore
파일들이 아닌 파일 시스템 전체를 백업할 때 사용하는 유틸리티로 보통 파티션 단위로 백업할때 많이 사용한다.
백업할 때 /etc/fstab/ 파일을 참조하며 데이터 복원을 restore 명령을 사용한다.

Cap 2016-08-11 04-08-51-319restore 
-i : 대화식으로 복구할 파일을 샌택한 후에 복원할때 사용한다.
-f : 백업할 매체나 파일명을 적는다.
-r : 전체 복원시에 사용한다.

Cap 2016-08-11 04-14-03-459초기의 웹 서버는 이미지가 포함된 정적인 형태의 HTML 문서만을 제공하였다.

Cap 2016-08-11 04-17-28-044
Apache HTTP 서버는 소스가 공개되어 있는 무료 소프트웨어로 Solaris, FreeBSD, Linux와 같은 유닉스 계열뿐만 아니라, Novell Netware, OSX, Microsoft Windows 등도 지원한다.

Cap 2016-08-11 04-20-46-191
DirectoryIndex
여러 웹 문서 중에서 처음으로 인식하는 인덱스 문서를 지정하는 부분이다.
index.html이 설정되어 있고, 필요하면 추가로 index.htm, index.php 등을 적어주면 된다.

DoucumentRoot
웹 문서인 HTML문서가 위치하는 경로를 나타낸다.

Cap 2016-08-11 04-28-56-928
httpd : 아파치 웹 데몬을 실행하는 명령이다.
apachectl (데몬 실행 제어 스크립트) : 아파치 데몬을 시작, 중지, 재시작 등을 할 수 있다.

Cap 2016-08-11 04-34-48-018.htaccess (분산 설정파일) 을 사용하면 디렉토리별로 설정을 변경할 수 있다. 

Cap 2016-08-11 04-40-57-208Listen 지시어는 서버가 특정 포트나 주소와 포트 조합에서만 요청을 받게 한다. Listen 지시어에 포트 번호만 지정하면, 서버는 모든 인터페이스에서 지정한 포트를 기다린다. 여러 Listen 지시어로 기다릴 여러 주소와 포트를 지정할 수도 있다. 서버는 열거한 주소와 포트로 요청이 들어오면 응답한다.

Cap 2016-08-11 04-47-17-995cmake
cmake는 소스 컴파일 시 사용되는 Make의 대체프로그램으로 멀티플랫폼을 지원하기 위한 목적으로 등장한 오픈소스 프로젝트이다.
cmake를 사용하는 대표적인 프로그램에는 mysql이 있는데, configure와 meke 작업을 cmake로 통합해서 설치 가능하다.

Cap 2016-08-11 04-50-32-203

php.ini 파일 Language Options 항목에서 short_open_tag = On 으로 설정 수정

Cap 2016-08-11 05-01-30-719SSL(Secure Socket Layer) – 넷스케이프사에서 전자상거래 등의 보안을 위해 개발하였다. 이후 TLS(Transport Layer Security)라는 이름으로 표준화되었다. 443 포트를 사용

Cap 2016-08-11 05-04-09-570삼바(SAMBA) 서버관리
삼바는 SMB를 이용하여 리눅스를 비롯한 유닉스 계열 운영체제와 윈도우 운영체제간의 자료 및 하드웨어를 공유할 수 있도록 해준다.
현재 SMB 프로토콜은 유닉스와 윈도 환경을 동시에 지원하는 CIFS 로 확장 되었다.
TCP/IP를 사용하며 NetBIOS 프로토콜을 지원, LanManager 기능도 제공한다.

Cap 2016-08-11 05-12-40-342smbclient : 리눅스 및 유닉스에서 사용하는 삼바 클라이언트 명령으로 윈도 서버로 접근할 때 사용한다.
smbstatus : 삼바 서버에 사용하는 명령어로 클라이언트와 연결된 상태를 출력한다.
testparm : 삼바의 환경설정 파일인 smb.conf의 설정여부를 확인한다.

Cap 2016-08-11 05-17-24-097hosts allow =127.     192.168.12.     192.168.13.
삼바 서버에 접속을 허용할 호스트를 지정하는데 사용한다.
삼바 서버에 접속이 불가능하게 하려면 hosts deny로 설정한다.

Cap 2016-08-11 05-21-19-789
root_squash : client가 root 라도 sever에 nobody로 mapping 함.

no_root_squash : client가 root면 server에도 root로 접근하게 함. 신뢰할 수 있는 사람에게만 허용할 것

Cap 2016-08-11 05-26-09-321
showmount
NFS 서버의 마운트 관련 정보를 출력하는 명령이다. NFS 클라이언트에서 NFS서버의 익스포트된 정보를 확인할 때도 사용한다.

exportfs
NFS 서버에 익스포트된 디렉터리 정보를 관리 해주는 명령이다.

nfsstat
NFS 관련 상태 정보를 출력하는 명령으로 NFS 서버와 클라이언트에서 모두 사용할 수 있다.

Cap 2016-08-11 05-31-56-798RPC를 사용하는 프로그램(NFS)이 시작되면 portmap은 서비스를 제공할 port를 portmap에 등록시킨다.

Cap 2016-08-11 05-58-00-615리눅스에서 사용하는 대표적인 FTP 서버 프로그램에는 Wu-ftpd, Proftpd, vsftpd 등이 있다.

gftp – X 윈도우용 FTP클라이언트 프로그램

Cap 2016-08-11 06-00-36-763ProFTP
RootLogin : FTP 로 root 가 로그인 할 수 있는지 여부를 설정하는 옵션입니다.

Cap 2016-08-11 06-06-08-608STOR : 클라이언트에서 서버로 파일을 전송할 경우

Cap 2016-08-11 06-15-26-590메일 관련 프포토콜 중에 ( SMTP ) 는 2개의 전자 우편 시스템간에 어떻게 대화하는지를 지정하고 전자 우편을 전송하기 위하여 교환하는 제어 메시지 형식을 규정한다. ( POP3 ) 는 서버에 도착한 메일을 클라이언트가 자신의 컴퓨터로 가져와서 관리할 때 사용하는 프로토콜이다.

Cap 2016-08-11 06-24-45-286메일 관련 프로그램의 분류
MTA(Mail Transfer Agent)
이메일을 SMTP 프로토콜을 이용해 다른 메일 서버로 전달하는 프로그램을 말하는데 보통 메일 서버 프로그램을 지칭한다. 대표적인 프로그램에는 sendmail, gmail, postfix, Ms Exchange Server 등이 있다.

MUA(Mail User Agent)
사용자가 메일을 읽고 보낼때 사용하는 프로그램을 의미한다. 대표적인 프로그램으로 kmail, evolution, mutt, MS의 Outlook 등이 해당된다.

MDA(Mail Delivery Agent)
MDA는 일종의 대리인 역할을 수행하는 프로그램으로 메일박스에 도착한 메일을 대행해서 가져오거나 전달하는 역할을 수행한다. 대표적인 프로그램으로는 procmail이 있는데, 스팸메일 필터링이나 메일 정렬 등의 역할을 한다.

Cap 2016-08-11 06-30-26-758
[root@ihd ~]# tail -1 ( /etc/aliases )
webmaster: posein,yuloje,jalin

Cap 2016-08-11 06-30-36-759/etc/mail/local-host-names
메일 서버에 사용하는 도메인을 설정하는 파일로 한줄에 도메인 하나씩 기입하면 된다.

/etc/mail/access
메일 서버로 접근하는 호스트나 도메인의 접근을 제어하는 파일

/etc/aliases
특정 계정으로 들어오는 메일을 다른 계정으로 전송되도록 설정하는 파일이다.

/etc/mail/virtusertable
하나의 메일 서버에 여러 도메인을 사용하는 환경에서 동일한 메일 계정을 요구할 때 각각의 도메인으로 도착하는 메일을 포워딩할 때 사용하는 파일이다.

~/.forward
각 사용자 개인이 자신에게 들어오는 메일을 다른 메일 주소로 포워딩할 때 사용하는 파일이다.

Cap 2016-08-11 06-35-20-143[root@ihd ~]# ( makemap hash ) /etc/mail/access < /etc/mail/access
access 파일을 수정할 때마다 해주어야함

Cap 2016-08-11 06-35-55-046/etc/mail/virtusertable
하나의 메일 서버에 여러 도메인을 사용하는 환경에서 동일한 메일 계정을 요구할 때 각각의 도메인으로 도착하는 메일을 포워딩할 때 사용하는 파일이다.

Cap 2016-08-11 06-38-44-114Cw : 메일을 수신할 호스트 이름을 명기하는 항목으로 보통 도메인명을 기입한다.
Fw : 여러 도메인을 사용하는 경우 별도의 파일을 지정하는 항목이다.
Dj : 특정 도메인명으로 지정하여 강제적으로 적용할 때 사용하는 항목이다.

Cap 2016-08-11 06-52-58-757mailq : 보내는 메일이 대기하는 디렉터리의 큐(Queue) 상태를 출력 해주는 명령

Cap 2016-08-11 06-55-57-250DNS(Domain Name System)
zone 파일의 항목 설명
type은 해당 레코드의 타입을 지정하는 영역으로 주요 타입은 다음과 같다.
A – IPv4의 주소를 기입할 때 사용
AAAA – IPv6의 주소를 기입할 때 사용
NS – 도메인의 네임 서버를 지정할 때 사용
MX – 메일 서버를 지정할 때 사용한다.
CNAME – Canonical Name 레코드의 일종으로 alias를 지정할 때 사용
PTR – 리버스 존에서만 사용하는 레코드로 IP주소를 도메인으로 변환하기 위해 지정한다. 

Cap 2016-08-11 07-02-45-784cps : 초당 접속가능 수에 대한 제한 설정

Cap 2016-08-11 07-21-11-261200.200.16.0/24
24비트 : 11111111.11111111.11111111.00000000
200.200.16.0 ~ 200.200.16.255 : 256 개
2^8(0이 8개 8bit) = 256

200.200.16.0/23
24비트 : 11111111.11111111.11111100.00000000
200.200.16.0 ~ 200.200.17.255 : 1024 개
2^9(0이 9개 9bit) = 512

200.200.16.0/22
24비트 : 11111111.11111111.11111100.00000000
200.200.16.0 ~ 200.200.19.255 : 1024 개
2^10(0이 10개 10bit) = 1024

Cap 2016-08-11 07-27-33-630A : IPv4의 주소를 기입할 때 사용
CNAME : Canonical Name 레코드의 일종으로 alias를 지정할 때 사용

Cap 2016-08-11 07-31-51-221named-checkconf
DNS서버의 환경 설정 파일인 /etc/named.conf  파일의 문법적 오류를 찾아주는 명령이다.

Cap 2016-08-11 07-34-08-330프록시 서버의 접근 제어
squid.conf  파일에서 acl항목을 이용해서 접근 제어를 할 수 있다. acl을 이용하여 특정 IP주소, 네트워크 대역, 도메인 등을 alias 형태로 지정하고, http_access allow 나 http_access deny 를 이용하여 접근을 제어한다.

Cap 2016-08-11 07-39-27-253NIS는 RPC(Remote Procedure Call) 을 사용하기 때문에 관련 호출을 처리해 주는 데몬을 반드시 구동시켜야 한다.
RPC 관련 데몬은 RHEL 5 버전까지는 portmap 데몬이 그 역할을 수행했지만, RHEL 6 버전부터는 rpcbind 데몬이 그역할을 대신한다. 

Cap 2016-08-11 07-44-38-220rpcinfo : rpc 관련 정보를 출력해 주는 명령이다.

Cap 2016-08-11 07-51-32-758DHCP(Dynamic Host Configuration Protocol) : 동적 호스트 구성 프로토콜. 호스트 IP 구성 관리를 단순화하는 IP 표준이다.

host posein_pc {
    hardware ethernet 08:00:07:26:c0:a5;
    fixed-address 192.168.1.22;
}

Cap 2016-08-11 07-55-02-901

Cap 2016-08-11 07-57-21-783

Cap 2016-08-11 07-58-49-999iptables : 패킷 필터링 도구로서 방화벽 구성이나 NAT에 사용된다.

Snort : 탐지 룰을 기반으로 네트워크 트래픽을 감시하고 분석하여 침입여부를 탐지해 준다.

SSL(Secure Socket Layer) 프로토콜은 처음에 Netscape사에서 웹서버와 브라우저 사이의 보안을 위해 만들었다. SSL은 Certificate Authority(CA)라 불리는 서드 파티로부터 서버와 클라이언트의 인증을 하는데 사용된다.

PGP (Pretty Good Privacy)는 컴퓨터 파일을 암호화하고 복호화하는 프로그램이다. 1991년 필립 짐머만이 개발하였으며, 현재 전 세계적으로 이메일 보안의 표준으로 자리잡았다.

RSA는 공개키 암호시스템의 하나로, 암호화뿐만 아니라 전자서명이 가능한 최초의 알고리즘

DSA(Digital Signature Algorithm) : 비대칭형 암호화 방식. 이산대수 문제에 대한 공용키 암호를 이용하는, ElGamal 알고리즘을 이용하여 NIST(미국립표준기술연구소)에서 개발한 전자서명방식이다. 후에 DSS(Digital Signature Standard)로 명명

Cap 2016-08-11 08-13-12-754VPN
가상 사설망(Virtual private network)은 공중 네트워크를 통해 한 회사나 몇몇 단체가 내용을 바깥 사람에게 드러내지 않고 통신할 목적으로 쓰이는 사설 통신망이다.

Cap 2016-08-11 08-16-27-455– F
사슬로부터 규칙을 제거한다.

– P
사슬의 기본 정책을 설정한다.

– A
사슬로부터 새로운 규칙을 추가한다.