Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 카카오
- 백준 javascript
- 코테
- 고잉버스
- 리눅스마스터 3과목
- 리눅스마스터 1급 정리
- 연습문제
- 문자열
- map
- GoingBus
- toCharArray
- 백준 java
- 자바스크립트 코딩의 기술
- 자바
- 코딩테스트
- Java
- 개발자 회고록
- Linux
- Memoir
- 월간코드챌린지
- 반복문
- 프로그래머스
- 명령어
- JavaScript
- 스프링 컨테이너
- 리눅스마스터1급
- 리눅스
- 스프링 빈
- java 백준 1차원 배열
- Kotlin
Archives
- Today
- Total
hoon's bLog
리눅스 실무의 이해 | 리눅스의 개요 2 본문
반응형
1. 리눅스의 철학
1). 리눅스의 철학
- 처음 개발자인 리누스 토발즈의 주도하에 개발이 진행됨.
2). GNU
- GNU's Not Unix
- 리처드 스톨먼을 주축으로 자유로운 스프트웨어를 희망하던 공동체들이 가장 먼저 유닉스를 모태로 개발을 시작.
- gcc, emacs, GNOME, GNU tar, bash, GRUB 등과 같은 다양한 분야의 응용 프로그램 만듬
- FSF(Free Software Foundation) : 자유소프트웨어의 생산, 보급, 발전시키기 위해 리처드 스톨만이 세운 비영리 조직
3). 자유 소프트웨어
- 프로그램을 실행시킬 수 있는 자유
- 프로그램이 어떻게 동작하는 지 학습하고, 필요에 따라서 프로그램을 개작할 수 있는 자유
- 무료 또는 유로로 프로그램을 재배포할 수 있는 자유
- 프로그램을 개선시킬 수 있는 자유와 개선된 이점을 공동체 전체가 누릴 수 있도록 발표할 수 있는 자유
2. 주요 라이선스
1). 카피레프트(Copyleft)와 GNU GPL(General Public License)
- Copyright 반대를 뜻함
- 소프트웨어를 개인의 소유로 사유화시키는 대신 자유로운 상태로 유지시키는 수단으로 삼는 것
- 개작과 배포에 대한 권리 또한 모든 사람에게 허용
- GNU GPL은 GNU 소프트웨어에서 가피레프트를 실제로 구현한 라이선스
2). GPL(General Public License)
- 프로그램을 어떠한 목적으로든지 사용 가증 다만 법으로 제한하는 행위는 할 수 없다.
- 프로그램의 소스 코드와 함께 발매하거나 소스 코드를 무료로 배포해야 함
- 소스 코드를 용도에 따라 변경 가능
- 변경된 소스 코드를 반드 시 공개 배포
- 변경된 프로그갬 역시 반드시 똑같은 라이선스인 GPL 적용
3). LGPL(Library/Lesser General Public License)
- 소프트웨어 라이브러리에 주로 쓰임
- GPL과 다른점은 LGPL이 적용된 라이브러리는 자유 소프트웨어뿐만 아니라 독점 소프트웨어에서도 사용 가능하다는 점.
- LGPL에서 GPL 변경 가능. 반대는 안됨.
4). BSD(Berkeley SOftware Distribution) 라이선스
- 버클리의 캘리포니아 대학에서 배포하는 공개소프트웨어 라이선스
- 누구나 개작가능, 수정한 것을 제한 없이 배포 가능
- 2차적 파생물에 대한 원시 소스 코드의 비공개를 허용. 즉, 소스 코드를 공개하지 않는 상용 소프트웨어에서 사용 가능
5). 아파치 라이선스
- 아파치 소프트웨어 재단
- 부분 혹은 전체를 개인적 또는 상업적 목적으로 이용할 수 있음
- 재배포 시에도 소스 코드 또는 수정한 소스 코드를 포함하여 반드시 공개할 필요 없음
- 재배포할 경우 아파치 라이선스 2.0을 포함, 아파치 소프트웨어 재단에서 개발된 소프트웨어임을 명확히 밝혀야 함.
- Apache HTTP Server, Hadoop, Hbase, Tomcat
6). MPL(Mozilla Public License) 라이선스
- 모질라 재단에서 규정한 라이선스
- 수정 시 소스 코드 공개 필수, 다른 코드 결합해서 만든 프로그램의 경우에는 MPL 코드를 제외한 다른 소스 코드는 공개하지 않아도 됨.
- Firefox, 스위트, 선더버드
7). MIT(Massachusetts Instfitute of Technology) 라이선스
- BSD 라이선스를 기초로 작성
- 해당 소프트웨어를 누구나 개작할 수 있고, 수정본의 재배포 시에 소스 코드 비공개가 가능.
- X Window System, JQuery, Node.js, Ruby on Rails
3. 리눅스의 역사
1). 리눅스의 계보
- 최초의 리눅스 배포판, 피터 맥도널드에 의해 만들어진 소프트랜딩 리눅스(SLS) 시스템
- 버그를 잡아서 패트릭 볼커딩이 슬랙웨어
- 이안 머독에 의해 데비안 프로젝트 등장
2). 리눅스 배포판의 분류(패키지 관리 기법에 따라 밑의 3개로 나뉨)
슬랙웨어
- 최상단에서 최대한 수정되어 배포되는 형식
- 프로그램 사용하기는 편리하나 패키지를 새롭게 적용하거나 수정하기는 힘듬
- SuSE, Porteus, Vector Linux, Salix OS 등
데비안
- dpkg, apt라는 독자적인 패키지 관리 도구를 사용
- Knoppix, Corel, Lindows, Ubuntu, Linux Mint, Elementary OS 등
- 해킹과 관련된 도구와 설명서 등을 내장한 백트랙과 칼리도 이 계열
레드헷
- RPM, YUMdlfksms vozlwl rhksfl ehrnfmf wprhd.
- RHEL, CentOS, Fedora, Oracle Linux, Scientific Linux, Asianux, Mandriva Linux, Mandrake 등
새로운 계파의 리더
- 수세와 우분투가 리더 역할
- 수세는 YaST, ZYpp이라는 독자적인 패키지 관리 도구를 사용.
- 우분투는 dpkg, apt 사용
- GNOME 기반의 그래픽 셸인 유니티를 제공
3). 주요 리눅스 배포판의 특징
슬랙웨어
- 패트릭 볼커딩에 의해 만들어진 리눅스 배포판
- 사용자가 패키지를 새롭게 적용하거나 수정하기 힘듬
- 그래픽 기반의 설치 절차가 없고, 소프트웨어 패키지의 의존성도 자동으로 해결해주지 않음
데비안
- GNU GPL 라이선스 기반하에 있음.
- 이안 머독이 설립
- 패키지 설치 및 업그레이드 등 패키지 관리가 매우 편리
- dpkg, apt 패키지 관리 도구를 사용
레드헷
- 마크 유잉이 만들고 밥 영이 인수
- 쉬운 설치와 독자적인 패키지 관리
- RPM, YUM 패키지 관리 도구
- RHEL이라느 유로 배포판과 fedora라는 오픈 소스 프로젝트
- 클라우드 컴퓨팅 및 빅데이터의 인프라 전역으로 사업 영역을 넓힘
수세
- 소프트웨어 및 시스템 개발이라는 뜻의 독일어
- 대부분은 Jurix 배포판을 기반으로 만듬
- YaST라는 유틸리티를 제공
우분투
- 영국 회사인 캐노니컬의 CEO 마크 셔틀워스가 시작
- 네가 있으니 내가 있다라는 의미. 다른 사람을 위한 인간애로 해석
- GNOME 데스크토 ㅂ환경 기반의 그래픽 셸인 유니티를 사용
4). 리눅스 활용 분야
리눅스 클러스터링
- 사전적인 의미는 무리, 송이 또는 한 덩어리라는 뜻
- 데이터 통신 분야에서는 단말 제어 장치와 그에 접속된 복수 단말의 총칭
- 서버 분야에서의 클러스터는 여러 대의 컴퓨터를 연결하여 하나의 컴퓨터를 사용하는 것처럼 구성된 시스템을 말함
고계산용 클러스터(HPC)
- 고성능의 계산 능력을 제공하기 위한 목적. 주로 과학계산용. 슈퍼컴퓨터
- 베어울프 클러스터
부하분산 클러스터(LVS; Linux Virtual Server Cluster)
- 대규모의 서비스를 제공하기 위한 목적
- 웹서비스에서 활용
- 로드 밸런서를 두고 운영
고가용성 클러스터(High Availability Cluster)
- 지속적인 서비스 제공을 목적으로 하는 클러스터
- 하나의 Primary Node가 부하분산의 처리를 수행하고 다른 하나의 Backup Node가 Primary Node의 상태를 체크하고 있다가 이상이 발생하면 서비스를 이어 받도록 구성하는 방법
5). 임베디드 시스템
- 마이크로컨트롤러, 마이크로프로세서, DSP(Digital Signal Processor) 등을 내장하여 특정한 기능을 반복적으로 수행하기 위해 하드웨어와 소프트웨어를 결합하여 만든 전자 제어 시스템
- 규모가 작고 단순한 시스템에 사용되어 보통 운영체제를 포함하지 않음
- 임베디드 리눅스란 임베디드 컴퓨터 시스템에서 리눅스를 이용하는 것
6). 클라우드 컴퓨팅
클라우드 컴퓨팅의 정의
- 사용자가 필요한 작업을 제시하면, 여기에 필요한 컴퓨팅 자원이 할당되어 작업하고 결과를 얻도록 해주는 것.
- 기존의 그리드 컴퓨팅, 분산 컴퓨팅, 유틸리티 컴퓨팅, 웹 서비스, 서버 및 스토리지 가상화 기술과 소프트웨어 등 기존의 기반 기술들을 융합하여 하나의 커다란 구름과 같은 컴퓨팅 환경을 만드는 기술.
클라우드 컴퓨팅에서 제공하는 서비스
- IaaS : 업무 처리에 필요한 서버, 데스크톱 컴퓨터, 스토리지 같은 IT 하드웨어 자원을 클라우드 서비스로 빌려 쓰는 형태
- PaaS : 업무에 필요한 소프트웨어를 개발할 수 있는 환경을 클라우드에서 제공
- SaaS : 기업에서 사용하는 소프트웨어를 통째로 클라우드 서비스 사업자에게 빌려 쓰는 개념
7). 빅데이터
빅 데이터의 정의
기존의 데이터베이스 관리도구로 데이터를 수집, 저장, 관리, 분석할 수 있는 역량을 넘어서 대량의 정형 또는 비정형 데이터 집합 및 이러한 데이터로부터 가치를 추출하고 결과를 분석하는 기술
빅 데이터의 관련 기술
- 인프라는 하둡
- NoSQL 기술 활용
- R
8). 사물 인터넷(IoT: Internet of Things)
사물 인터넷의 정의 : 생활 속 사물들을 유무선 네트워크로 연결해 정보를 공유하는 환경, 사물 인터넷 플랫폼
- 사물 간에 인터넷을 할 수 있는 물적 기반인 통신 네트워크가 원활하게 작동하도록 하는 운영체제
- 디바이스 운영체제 : 디바이스가 제공한느 하드웨어 자원과 하드웨어 자원 기능을 이용하는 디바이스 응용 간의 운용 플랫폼
- 아두이노, 라즈베리파이와 같은 오픈소스 하드웨어 플랫폼
- 사물들 간 연결을 지원하고, 사물을 검색하고, 접근하여 응용 서비스가 필요로 하는 서비스를 제공하는 사물 연결 플랫폼(MQTT, ETSI M2M, oneM2M, AllJoyn)
- 대규모 분산 데이터 저장/검색/분석 플랫폼
- 다양한 매시업을 지원하는 플랫폼
- 서비스 배포를 지원함으로써 사물인터넷 응용 서비스 개발자와 응용 서비스 사용자 간에 존재하는 앱스토어와 같은 응용 서비스 생태계 플랫폼
728x90
반응형
'IT > Linux Master 1급' 카테고리의 다른 글
리눅스 실무의 이해 | 리눅스 시스템의 이해 3 (0) | 2021.08.13 |
---|---|
리눅스 실무의 이해 | 리눅스 시스템의 이해 2 (0) | 2021.08.10 |
리눅스 실무의 이해 | 리눅스 시스템의 이해 1 (0) | 2021.08.10 |
리눅스 실무의 이해 | 리눅스의 개요 1 (0) | 2021.08.05 |
리눅스마스터 1급 1차 목차 (0) | 2021.08.02 |