유닉스 (Unix)
개발 및 역사
- 1969년: 미국 AT&T 벨 연구소에서 켄 톰슨(Ken Thompson), 데니스 리치(Dennis Ritchie) 등이 개발 시작.
- 초기 언어는 어셈블리어.
- 간결한 설계와 효율성을 강조한 운영체제.
- 1971년: C언어를 사용하여 유닉스를 재구축.
- 고급 언어로 개발된 최초의 운영체제.
- 이식성(Portability)이 뛰어나 다양한 하드웨어에서 사용 가능.
- 분화 과정:
- 상용 유닉스: AT&T의 유닉스 상용화 노력.
- BSD: 캘리포니아 버클리 대학에서 발전한 오픈소스 유닉스 계열.
기본 개념
- 모듈화: 운영체제의 핵심 기능(커널)과 유틸리티 도구를 분리하여 설계.
- 다중 사용자 및 다중 작업 지원: 한 시스템에서 여러 사용자가 동시에 작업 가능.
GNU 프로젝트
출범 배경
- 1983년: 리처드 스톨만(Richard Stallman)이 소프트웨어의 자유로운 사용과 배포를 보장하기 위해 GNU 프로젝트 시작.
- GNU: "GNU is Not Unix"의 약자로 유닉스와 비슷하지만 자유 소프트웨어로 개발.
- 상업 소프트웨어의 독점성을 배격하고 자유 소프트웨어를 지향.
주요 이정표
- 1985년: GNU 선언문(GNU Manifesto) 발표.
- "모든 사람은 소프트웨어를 학습, 수정, 재배포할 자유가 있어야 한다"는 철학을 천명.
- 자유 소프트웨어 재단(Free Software Foundation, FSF) 설립.
- 1989년: GPL(GNU General Public License) 제정.
- 소프트웨어의 사용, 수정, 배포의 자유를 법적으로 보장.
- GPLv1, GPLv2, GPLv3로 발전.
핵심 목표
- 유닉스와 호환되며 모든 사람이 자유롭게 사용할 수 있는 운영체제와 도구 개발.
- 리눅스 커널과 결합하여 완전한 시스템인 GNU/리눅스를 형성.
리눅스의 발전과정
탄생
- 1991년: 리누스 토발즈(Linus Torvalds)가 헬싱키 대학에서 리눅스 커널 개발 시작.
- 미닉스(MINIX)라는 교육용 운영체제를 참조.
- 최초 버전인 리눅스 커널 0.01 공개.
- 토발즈의 첫 메시지:
- Hello everybody out there using minix, I’m doing a (free) operating system...
초기 발전
- GNU 프로젝트와 협력:
- 리눅스 커널은 하드웨어와 직접 상호작용을 담당.
- GNU의 응용 프로그램과 결합하여 "GNU/리눅스"라는 완전한 운영체제가 됨.
- 커널 버전 업그레이드:
- 1994년: 리눅스 커널 1.0 발표.
확산과 성숙
- 1990년대 후반: 리눅스 배포판 등장.
- 주요 배포판: 데비안, 레드햇, 슬랙웨어 등.
- 배포판은 리눅스 커널과 응용 소프트웨어를 함께 패키징.
- 2000년대 이후:
- 서버용 운영체제로 리눅스가 폭넓게 채택.
- 클라우드 컴퓨팅, 안드로이드 등의 시스템 기반으로 자리잡음.
현대 리눅스
- 리눅스 재단: 2007년 설립.
- 커널 개발과 생태계 확장을 지원.
- 삼성, IBM, 인텔, 구글 등의 대기업이 후원.
- 커널 기여자: 수천 명의 개발자와 수백 개의 기업이 참여하여 오픈소스 커뮤니티 중심의 개발 지속.
리눅스 배포판의 종류
1. 데비안 계열
- 특징:
- 안정성과 자유 소프트웨어를 중시.
- APT(Advanced Package Tool)를 이용한 패키지 관리.
- 소규모에서 대규모 서버 환경에 적합.
- 대표 배포판:
- 데비안(Debian): 가장 오래된 리눅스 배포판 중 하나로 커뮤니티 중심의 개발.
- 우분투(Ubuntu):
- 데비안 기반의 가장 인기 있는 배포판.
- 데스크톱, 서버, 클라우드 환경에서 널리 사용.
- 정기적인 릴리스와 사용자 친화적인 GUI 제공.
- 리눅스 민트(Linux Mint):
- 우분투 기반의 데스크톱 중심 배포판.
- 초보자에게 친화적인 환경과 다양한 멀티미디어 지원.
2. 레드햇 계열
- 특징:
- 상용 소프트웨어와 기업 지원을 기반으로 한 안정성과 성능.
- RPM(Red Hat Package Manager)을 이용한 패키지 관리.
- 서버 및 엔터프라이즈 환경에 적합.
- 대표 배포판:
- 레드햇 엔터프라이즈 리눅스(RHEL):
- 상용 리눅스 배포판으로 기업용 솔루션에 특화.
- 고급 지원 서비스 제공.
- 페도라(Fedora):
- RHEL의 커뮤니티 버전.
- 최신 기술을 빠르게 도입하며 데스크톱 환경에도 적합.
- CentOS (현재는 Rocky Linux, AlmaLinux로 대체):
- RHEL의 무료 대안으로, 안정성과 RHEL 호환성 제공.
- 레드햇 엔터프라이즈 리눅스(RHEL):
3. 슬랙웨어 계열
- 특징:
- 단순함과 최소한의 수정으로 기본 리눅스 경험 제공.
- 패키지 관리 도구가 단순하며 고급 사용자를 위한 환경.
- 대표 배포판:
- 슬랙웨어(Slackware):
- 가장 오래된 리눅스 배포판 중 하나로, 고급 사용자와 서버 환경에 적합.
- Puppy Linux:
- 슬랙웨어 기반의 경량화된 배포판.
- 오래된 하드웨어나 제한된 자원에서 실행 가능.
- 슬랙웨어(Slackware):
4. 아치 계열
- 특징:
- 롤링 릴리스 방식으로 최신 소프트웨어 제공.
- 단순함과 사용자 맞춤 설정 강조.
- 고급 사용자에게 적합.
- 대표 배포판:
- 아치 리눅스(Arch Linux):
- 설치 과정과 환경 설정이 사용자가 직접 수행.
- 만자로(Manjaro):
- 아치 리눅스 기반으로 초보자 친화적.
- 아치 리눅스(Arch Linux):
5. 기타 계열
- OpenSUSE (SUSE 계열):
- 독일 SUSE가 개발한 배포판.
- 안정성과 기업 지원을 제공하며 데스크톱과 서버 환경 모두에 적합.
- 가벼운 배포판:
- Tiny Core Linux: 최소한의 자원 사용.
- Lubuntu: 우분투 기반으로 경량화된 배포판.
- 보안 특화 배포판:
- Kali Linux: 보안 전문가와 해커를 위한 도구가 포함.
- Tails: 프라이버시와 익명성을 강조.
'Linux' 카테고리의 다른 글
리눅스의 계층 구조(커널, 셸 등) (0) | 2025.01.19 |
---|---|
시스템 관리자(System Administrator, SysAdmin) (0) | 2025.01.19 |
모놀리식 아키텍처와 MSA(MicroServices Architecture) (0) | 2025.01.19 |
Mac(Mx)에서 VMWare Ubuntu Desktop 설치하기 (0) | 2025.01.18 |
리눅스(Ubuntu Linux) 기초 명령어 (0) | 2025.01.18 |