페도라
페도라(Fedora)는 대표적인 무료 오픈소스 기반의 리눅스(Linux) 운영체제(OS) 중 하나이다. 미국의 레드햇 리눅스와 북한의 붉은별은 페도라를 기반으로 만든 제품이다.
목차
개요
레드햇 리눅스가 사라지고 난 후 발표된 리눅스의 배포판이다. 레드햇에서 후원하는 커뮤니티 배포판으로, 오랫동안 RHEL(Red Hat Enterprise Linux)에 들어갈 기능들을 미리 테스트해보는 배포판으로서의 성격이 강했다. 그만큼 레드햇에서 밀고 있는 최신 기술들이 페도라에 적용되어 나온다. 아치 리눅스와 함께 업데이트가 빠른, Bleeding Edge 배포판으로 알려져 있다. 그래서 한때 매우 불안정한 배포판이기도 했다. 2014년 6월에 나온 RHEL 7.0을 페도라 19에서 가져올 정도, 페도라 21에 와서는 클라우드(Cloud), 워크스테이션(Workstation) 등 이리저리 나눠지게 되었다. 레드햇 등록 상표의 모자에서 따온 이름이다.[1]
역사
레드햇사의 리눅스는 과거 레드햇 리눅스 배포판을 만들어 무료 버전으로 배포하였다. 그러다 레드햇9.0(Red Hat 9.0) 이후 무료 배포를 중단하고 페도라 리눅스로 이름을 변경했다. 이후 유료 버전인 레드햇 엔터프라이즈 쪽으로 역점을 두기 시작했고, 페도라 리눅스는 서포트하는 수준으로 사업을 전개했다. 현재 레드햇사는 페도라 리눅스 개발에 참여하고 있는데 먼저 시험 용도로 페도라 리눅스에 여러 개발 사항들을 적용해보고, 단계를 거쳐 제품이 안정세에 접어들면 레드햇 엔터프라이즈 제품으로 출시하는 방향으로 나아가고 있다. 약 6개월 단위로 새로운 버전을 제공하고 있으며 최초 버전 출시일은 2003년 11월 5일, 마지막 버전 출시일은 2019년 4월 30일이다.[2]
특징
페도라는 오픈 소스를 기반으로 한 모놀리식(monolithic) 커널 형태의 운영체제이다. 페도라는 데스크톱, 워크스테이션, 서버, 클라우드 등에 활용되고, i686, x86-64, ARM-hfp, ARM AArch64, ppc64, PPC64le, IBM Z, MIPS-64el, MIPS-el, RISC-V에서 지원된다. 페도라는 대략 6개월을 주기로 새로운 버전이 출시되며 DVD, CD를 통해 설치하거나, 온라인에서 다운로드받을 수도 있다. 페도라의 설치를 위한 최소 사양은 CPU 1GHz 이상, 하드디스크 용량 10GB 이상, 메모리 1GB 이상인데, 추가적인 사항이 요구되는 경우로는 서버 측 사용 용도의 네트워크 트래픽 과다, 메모리 크기 부족, 동시 접속자 수의 증가 등이 있다. 따라서 서버를 운영해야 한다면 미리 동시 접속자 수, 메모리 크기 등을 고려하는 것이 좋다.
페도라는 운영체제를 설치할 때 그래픽 환경에서의 설치를 지원해주어 편리하다. 직접 설치할 때 매우 쉽다는 것을 알 수 있는데 이것을 아나콘다(Anaconda) 설치환경이라고 한다. 페도라는 패키지의 설치, 삭제, 업데이트 등 RPM 패키지 관리자를 사용하기 때문에 매우 쉽게 패키지 관리를 할 수 있다. 리눅스는 X윈도 환경으로 GNOME과 KDE를 제공해 사용자가 쉽게 리눅스를 사용할 수 있도록 간편한 사용자 인터페이스 환경을 제공한다. 주요 기능으로는 GNOME 3.26, 리브레 오피스, 투두(Todo) 애플리케이션, 파일 브라우저 노틸러스(Nautilus), 리눅스 공급 업체 펌웨어 서비스 및 구글 드라이브 통합 등이 있다. 또한 오픈소스 툴박스에는 다양한 오픈소스 도구가 있어 일상적으로 사용이 가능하다.
페도라는 실험장 성격의 개발 영향을 받아 신기술이 가장 먼저 탑재되어 최신 기술을 사용한다는 장점이 있다. 또한 레드햇이 개발한 패키지 배포와 관리시스템을 기반으로 하여 기업이나 개인 등 여러 가지 환경에서 사용이 가능하다. 반면에 페도라의 특성상 서버 업데이트와 교체 주기가 상대적으로 짧기 때문에 에러가 자주 발생한다. 이는 실험적 업데이트를 강행함에 따른 결과로써 기본적으로 잔 에러가 많다. 또한 페도라는 새롭게 설치한 직후 타사의 RPM Fusion 저장소를 추가하는 것이 일반적인데, 이로 인해 매번 예정된 출시 시기를 놓친다는 문제점이 있는 것으로 알려져 있다.[3]
배포
페도라는 페도라 스핀(Fedora Spins)이라 불리는 다양한 방법을 통해 배포될 수 있다. 이 다양한 방법들은 소프트웨어 패키지의 특정한 조합과 최종 사용자가 사용하기 원하는 소프트웨어들을 먼저 고려한다. 페도라 스핀은 여러 개발 공동체에 의해 개발되었다. 페도라 배포판에 포함된 상용리눅스 배포 판을 위한 추가 패키지들은 페도라에 기반한 레드햇(red hat) 엔터프라이즈 리눅스(RHEL)와 이와 호환되는 CentOS 의 안정성을 높이는데 기여를 하기 위한 자발적인 참여의 일환이다.[4]
소프트웨어 저장소
페도라 7 이전에는 두 가지의 중요한 저장소가 있었다. 코어(Core)와 엑스트라(Extras)가 그것이다. 페도라 코어는 레드햇사로부터 개발된 운영 체제를 위해 필요한 모든 패키지를 담고 있으면 DVD(디비디)나 시디(CD) 형태로 제공되었다. 페도라 엑스트라는 디비디나 시디 형태로 제공되지 않는 개발공동체에서 개발된 패키지들로 구성되어 있었다. 페도라 7부터는 코어와 엑스트라가 통합되었으며 페도라 코어와 페도라 엑스트라라는 명칭을 페도라로 일원화하였다. 이러한 통합으로 레드햇사에서 개발한 패키지만을 사용할 수 있게 되었다. 페도라 7이 배포되기 전에 페도라 레거시(Legacy)라 불리는 세 번째 저장소가 있었다. 이 저장소는 자발적으로 운영되었으며 레드햇사에서 지원하지 않는 페도라의 지원 기간을 연장하기 위해서 고안되었다. 페도라 레거시는 2006년 12월 폐쇄되었다.[4]
보안
페도라의 중요한 보안 기능은 리눅스의 여러 보안 기능을 종합한 SELinux 다. 페도라는 버전 2부터 내장하고 있었다.[4]
장점과 단점
장점으로는 리눅스를 전문적으로 다루는 사람들에게는 이렇게 좋은 운영체제가 없다. 최신의 기술을 체험할 수 있다. 레드햇에서 개발되는 기술이 제일 먼저 탑재된다. 개발을 위한 도구들이 기본적으로 제공이 된다. 단점으로는 선택적인 업데이트에 따라서 에러가 발생하기도 한다. 기본적으로 잔 에러가 많다.[5]
설치하기 위한 최소 사양
CPU 는 1GHz 이상, 하드디스크 용량은 10GB 이상, 메모리 1GB 이상, 그래픽 카드는 대부분 지원해준다. 추가적인 사항이 요구되는 경우가 있는데, 즉 서버 측 사용 용도가 네트워크 트래픽(traffic)이 많다든지, 메모리 크기가 커야 한다던지, 동시 접속자 수가 많다든지, 운영 프로그램 종류, 하드디스크 용량에 따라 사양이 변경된다. 만약 데이터베이스 서버를 운영한다면, 미리 동시 접속자와 하드디스크 용량, 메모리 크기 등을 고려하여 서버 사양을 결정해야 한다.[2]
구조
- 응용 프로그램 : 각종 서버 프로그램, X 윈도(GNOME, KDE)를 가리킨다. 응용 프로그램은 쉘에서 명령어를 실행하며 X윈도우 메뉴에서 명령어를 선택할 수 있다. 가장 대중적으로 사용되는 윈도 컴퓨터에 비유해보자면 윈도 운영체제와 계산기, 메모장, 스타크, 메모, 워드 등의 유틸리티, 게임, 엑셀 등의 응용 프로그램 등이 있다.
- 쉘(Shell) : 명령어 해석기라고 불리기도 하며 그 종류에는 bash, KSA, CSH 등이 있다. 직접 실행하여 여러 가지 일을 처리할 수도 있고, 응용 프로그램을 실행시킬 수도 있다. 가장 대중적으로 사용되는 윈도 컴퓨터에 비유한다면 cmd(명령어 프롬프트)가 있다.
- 커널(Kernel) : 하드웨어 장치의 지원 여부, 하드웨어 정보, 하드웨어 제어 코드로 구성되어 있다. 커널은 리눅스 운영체제의 구조 요소 중 가장 핵심이라고 할 수 있는데, 하드웨어를 제어하고 쉘과 통신하는 객체이기 때문이다. 이는 가장 대중적으로 사용되는 윈도 컴퓨터의 일반적인 커널과 같다.
커널
컴퓨터의 커널은 운영체제의 핵심이다. 운영체제의 다른 모든 부분에 여러 기본적인 서비스를 제공한다. 시스템 자원은 제한되어있지만, 프로그램은 많기 때문에 커널은 프로그램의 수행상태인 프로세스(process) 간의 보안 접근을 책임지는 소프트웨어다. 커널이 이러한 프로세스마다 얼만큼의 자원을 사용해야 하는지 결정해야 하는데 이것을 스케줄링(Scheduling)이라고 한다. 커널은 운영체제에서 핵심적인 기능을 담당하지만, 수행에 필수적인 것만은 아니다. 프로그램은 하드웨어(hardware) 추상화나 운영체제 지원 없이 컴퓨터만으로 읽어 들여져 수행될 수 있기 때문이다. 이러한 방법은 초기 컴퓨터의 운영 방법이었고 다른 프로그램을 실행하고 싶을 때는 컴퓨터는 다시 켜고 다시 읽어 들여야 했다. 그 결과 로더(loader)와 디버거(Debugger) 같은 작은 프로그램들이 프로그램을 수행시키는 작업을 해야 했고 이것이 초기 운영체제 커널의 기초가 되었다. 커널은 크게 4가지가 있다.[6]
모놀리식커널
모놀리식 커널(Monolithic Kernel)은 하드웨어 위에 고수준의 가상 층을 가지고 있다. 고수준의 가상 층은 기본 연산 집합과 관리자 모드에서 작동하는 프로세스관리, 동시성, 메모리 관리 등의 운영체제 서비스 구현을 위한 시스템 콜(System Call)로 되어 있다. 이러한 연산을 제공하는 모듈(module)은 같은 주소 공간에서 실행되기 때문에 코드의 집적도는 매우 조밀하고 수정하기 어렵고 한 모듈의 버그는 전체 시스템을 멈추게 할 수도 있다. 하지만 구현이 신뢰할 정도로 완성되면 컴포넌트(component)의 내부 집적이 내부의 시스템 이용을 효과적으로 하여 높은 효율을 보인다. 모놀리식 커널을 사용한 운영체제는 리눅스, 솔라리스, AIX 커널 등이 있다.[6]
마이크로 커널
마이크로 커널(Micro Kernel)은 모놀리식 커널과 달리 하드웨어 위에 매우 간결한 추상화만을 제공한다. 기본 연산 집합과 운영체제 서비스를 구현한 스레드 관리, 주소 공간, 프로세스 간 통신의 작은 시스템 콜로 구성된다. 일반적으로 커널이 제공하는 네트워킹 같은 다른 서비스들은 사용자 공간 프로그램인 서버로 구현한다. 운영체제는 서버를 다른 일반적인 프로그램처럼 간단히 시작하고 끌 수 있다. 이론적으로 마이크로커널에서 시스템은 더 안정적이다. 서버가 중단될 때 커널의 충돌이 아니기 때문에 단 하나의 프로그램만 내려버리면 된다. 마이크로 커널은 전통적인 디자인의 수행을 잘하지 못할 수도 있다. 서버와의 자료교환을 위해 커널을 출입하는 문맥 전환 때문이다. 주의 깊은 조율이 오버헤드(Overhead)를 극적으로 줄여줄 것으로 믿어져 왔으나 90년대 중반부터 대부분의 연구자는 시도를 포기했다. 최근에 새 마이크로 커널은 성능을 최우선으로 설계하며 이 문제를 넓은 부분에서 다뤘다. 하지만 현재 운영체제 시장은 자기 몸 사리며 마이크로 커널 설계에 소극적이다. 마이크로 커널에 기반한 운영체제는 AmigaOS, ChorusOS, EROS, Mach 등이있다.[6]
하이브리드 커널
하이브리드 커널(Hybrid Kernel)은 본질적으로 마이크로 커널을 따르나, 사용자 레벨에서 수행될 때 느린 코드들을 커널 레벨에서 수행하도록 수정한 것을 말한다. 이는 다양한 운영체제 개발자들이 마이크로커널 기반의 설계를 받아들이던 시점에 순수한 마이크로커널의 성능상 한계를 극복해보고자 생각해낸 내용이다. 하이브리드 커널로는 ReactOS, BeOS 커널, Netware 커널 등이 있다. 하이브리드 커널은 모놀리식 커널과 마이크로 커널 설계 양쪽의 구조적 개념과 작동 방법에 대한 것으로 어떤 것은 사용자 공간에 들어가는 반면 어떤 코드는 성능의 이유로 커널 공간에 포함해야 하는지에 대한 선택의 문제다. 엑소 커널(Exo Kernel)은 운영체제 설계에 대한 급진적인 신개념으로 수직 구조의 운영체제다. 엑소 커널의 구상은 개발자에게 강제적인 추상화를 줄여 하드웨어 추상화에 대한 선택의 폭을 넓혀준다. 엑소 커널은 여러 개의가상화를 실행하는데 각 가상화는 하드웨어 추상화 계층을 통하지 않고 하드웨어 구역에 직접 접근한다. 응용소프트웨어 와 추상화는 특정 메모리 주소와 디스크 블록 등을 요구하는데 커널은 단지 자원이 비어있는지만 확인하고 응용소프트웨어에 접근을 허용한다. 이러한 저수준의 하드웨어 접근은 프로그래머가 개별적인 추상화를 만드는 것을 허용하여 불필요한 부분을 제거할 수 있게 하고 일반적으로 프로그램의 성능을 향상한다. 엑소 커널은 추상화를 제공하는 라이브러리 운영체제(libOSes)를 이용한다.[6]
리눅스
페도라를 포함하고 있는리눅스는 리누스 토르발스 가 커뮤니티 주체로 개발한 컴퓨터운영체제다. 혹은 커널 을 뜻하기도 한다. 리눅스는 자유 소프트웨어 와 오픈 소스 개발의 가장 유명한 표본으로 들 수 있다. 리눅스는 다중 사용자, 다중작업, 다중 스레드을 지원하는 네트워크 운영체제(NOS)이다. 리눅스라는 용어는 리눅스 커널만을 뜻하지만, 리눅스 커널과 지엔유(GNU) 프로젝트의 라이브러리와 도구들이 포함된, 전체 운영 체제를 나타내는 말로 흔히 쓰인다. 리눅스 배포판은 핵심 시스템 외에 대다수 소프트웨어를 포함한다. 현재 200여 종류가 넘는 배포판이 존재한다.[7]
리눅스 전망
리눅스를 꼭 알아야 하는 it 상위 직업들을 보면, 개발자 자바, c 언어, c++, 개발운영팀, 파이썬, 소프트웨어를 비롯한 시스템 네트워크 등의 엔지니어, 시스템 관리자, 리눅스 관리자, 리눅스 시스템 관리자, 리눅스 엔지니어 등이 있다. 리눅스를 직접적으로 다루는 업무 이외에도 거의 모든 직업군이 리눅스 서버를 알아야 한다. 리눅스의 미래는 앞으로도 밝을 전망이다. 세계 곳곳에서는 리눅스뿐만 아니라 IT과 관련된 전문가들을 필요로 하고 있다. 또 보안이 또 다른 중요한 문제로 대두되면서 보안 전문가들이 주목받고 있다.[8]
페도라 설치
먼저 가상머신을 설치하고 설치를 했으면 다음으로 페도라 리눅스를 다운받아야 한다. 페도라는 크게 3가지 워크스테이션(Workstation), 서버(Server), 클라우드(Cloud)로 나누어진다. 기본적으로 페도라 64비트를 다운받게 되어 있다. 페도라 설치 파일 다운로드가 완료되면, 브이엠웨어(Vmware)에서 가상머신을 생성하여 페도라 리눅스를 설치한다. 브이엠웨어를 실행하여 Create a New Virtual Machine을 선택한다. 운영체제는 리눅스, 버전은 페도라로 선택한다.가상머신의 이름과 설치할 위치를 지정한다. 페도라가 설치될 가상머신의 디스크 최고 용량을 20GB로 설정하고 가상 디스크를 하나의 파일로 관리할 것으로 선택한다. 메모리의 용량은 기본으로 1G로 되어 있는데 언제든 변경 가능하다. 시디(CD)/디비디(DVD) 장비의 Use ISO image file로 다운받은 페도라 이미지 파일을 선택한다. 이것은 프로그램을 설치할 때 컴퓨터에 시디를 넣는 것과 동일한 작업이다. 가상머신 설정에 문제가 없는지 다시 확인 후, 이상이 없으면 끝내기버튼을 눌러 가상머신을 생성한다. 그렇게하면 브이엠웨어에 가상머신 2개(페도라, 우분투)가 생성되는데, 여기서 페도라를 선택한 후 플레이를 누르면 가상머신이 작동된다. 페도라 리눅스를 설치하기 전에 테스트를 해볼 수 있다. 페도라도 윈도우처럼 그래픽 사용자 인터페이스(GUI)환경으로 설치를 진행할 수 있다. 설치과정에서 사용할 언어를 한국어로 선택하고 로컬 표준 디스크가 제대로 선택되었는지 확인하고 자동파티션이 선택되어 있는지 확인하고 설치를 진행한다. 설치과정에서 루트암호와 사용자 생성작업을 한 후 재부팅을 하면 설치가 완료된다.[9]
페도라와 우분투 차이
우분투(Ubuntu)는 가장 널리 사용되는 리눅스 배포판이지만 페도라는 네 번째로 많이 사용된다. 페도라는 레드햇 리눅스(Red Hat Linux)를 기반으로하며 우분투는 데비안(Debian)을 기반으로 한다. 따라서 이 두 배포판의 소프트웨어 바이너리는 호환되지 않는다. 두 배포판 모두 6개월마다 새 버전을 릴리스(release)하지만 장기 지원 모델에는 차이가 있다. 우분투는 버전(version)이 릴리스 된 후 18개월 동안 지원을 제공하며 2년마다 지원되는 LTS(또는 장기 지원) 버전도 릴리스한다. 반면, 페도라는 단 13개월로 지원 기간이 짧다. 이는 페도라 개발자가 일부 이전 버전과의 호환성 제약으로부터 자유로울뿐만 아니라 페도라가 제품 개발 또는 웹서버에 적합하지 않기 때문에 최첨단 소프트웨어를 홍보한다. 데스크톱환경 및 배포 크기와 같은 우분투와 페도라의 다른 차이점이 있다.[10]
활용
2015년 12월, 북한에서 사용하는 붉은 별이 공개 프로그램인 리눅스 페도라 버전을 기반으로 제작된 것이 밝혀졌다. 독일의 IT 보안기업 ERNW는 한 국제회의에서 북한이 데스크톱·태블릿 등에 사용하고 있는 OS 붉은 별을 분석한 결과를 발표했다. 붉은 별의 특징으로는 이용자의 사생활을 추적하며 외부와 단절되어 있어 철저한 보안이 이루어지고 있으며, 북한이 컴퓨터 운영체제, OS를 자체적으로 개발해 정보 기술에서도 내부 통제를 강화하고 있다고 발표하였다. 영국의 가디언 등 주요 외신과 IT업계에 따르면 ERNW가 분석한 붉은 별은 3.0버전이며, 전반적 디자인이 애플의 OS X과 유사하지만, 공개 프로그램인 리눅스 페도라 버전을 기반으로 제작하였다고 한다.[11] 활용 분야로는 우리가 생활하면서 접할 수 있는 모든 IT 서비스 전반에 걸치고 있다고 봐야 한다. 서버 운용 측에서 보면 웹 서버, 데이터베이스 서버, DNS 서버로 활용되며 전 세계 스마트폰에서 가장 압도적인 점유율을 보이는 안드로이드도 임베디드 시스템의 일부다. 또한 오픈 소스로 활용되어 빅데이터 분석, 과학기술 분석에 주로 사용되고 있다. 기업에서는 금융과 같이 보안에 민감한 부분에서 리눅스를 활용하고, 클라우드 시스템 같은 스토리지 시스템에서도 리눅스를 사용한다. 사용자들은 잘 모르겠지만 가전제품, 산업기기 장비에 리눅스가 들어가 있다.[2]
각주
- ↑ 페도라(운영체제) 리브레위키 - https://librewiki.net/wiki/%ED%8E%98%EB%8F%84%EB%9D%BC_(%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C)
- ↑ 2.0 2.1 2.2 2.3 브이핏, 〈페도라 리눅스〉, 《네이버 블로그》, 2016-03-03
- ↑ Nicholas Congleton , 〈What Is Fedora Linux? 〉, 《라이프 와이어》, 2018-10-17
- ↑ 4.0 4.1 4.2 페도라 위키백과 - https://ko.wikipedia.org/wiki/%ED%8E%98%EB%8F%84%EB%9D%BC_(%EC%9A%B4%EC%98%81_%EC%B2%B4%EC%A0%9C)
- ↑ 습관처럼, 〈리눅스 배포판 종류와 특징〉, 《티스토리》, 2020-02-26
- ↑ 6.0 6.1 6.2 6.3 12bme, 〈커널이란?〉, 《티스토리》, 2017-10-28
- ↑ 리눅스 위키백과 - https://ko.wikipedia.org/wiki/%EB%A6%AC%EB%88%85%EC%8A%A4
- ↑ 최광효, 〈리눅스 전망과 미래〉, 《티스토리》, 2016-09-04
- ↑ 빌노트 , 〈[ https://withcoding.com/22 리눅스(Linux) 페도라 서버(Fedora Server) 다운로드, 설치방법 ]〉, 《위드코딩》, 2014-12-22
- ↑ 〈[ https://ko.betweenmates.com/fedora-vs-ubuntu 페도라vs우분투 차이점과 비교 ]〉, 《비트윈메이트》
- ↑ 손해용 기자, 〈북한 컴퓨터 운영체제 '붉은별'...사생활 엿봐 IT판 '5호 담당제'〉, 《제이티비시》, 2016-01-22
참고자료
- 페도라(운영체제) 리브레위키 - https://librewiki.net/wiki/%ED%8E%98%EB%8F%84%EB%9D%BC_(%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C)
- 브이핏, 〈페도라 리눅스〉, 《네이버 블로그》, 2016-03-03
- Nicholas Congleton, 〈What Is Fedora Linux?〉, 《라이프 와이어》, 2018-10-17
- 페도라 위키백과 - https://ko.wikipedia.org/wiki/%ED%8E%98%EB%8F%84%EB%9D%BC_(%EC%9A%B4%EC%98%81_%EC%B2%B4%EC%A0%9C)
- 습관처럼, 〈리눅스 배포판 종류와 특징〉, 《티스토리》, 2020-02-26
- 부평우리, 〈리눅스 기초와 GNU 프로젝트〉, 《네이버 블로그》, 2017-11-22
- 12bme, 〈커널이란?〉, 《티스토리》, 2017-10-28
- 손해용 기자, 〈북한 컴퓨터 운영체제 '붉은별'...사생활 엿봐 IT판 '5호 담당제'〉, 《제이티비시》, 2016-01-22
- 빌노트 , 〈[ https://withcoding.com/22 리눅스(Linux) 페도라 서버(Fedora Server) 다운로드, 설치방법 ]〉, 《위드코딩》, 2014-12-22
- 최광효, 〈리눅스 전망과 미래〉, 《티스토리》, 2016-09-04
같이 보기