- 운영체제(OS)의 한 종류 : 유닉스(UNIX) 계열의 오픈소스 운영체제
- 커널(kernel)을 기반으로 다양한 배포판(distribution)으로 제공
(주로 서버, 클라우드 인프라, 슈퍼컴퓨터, IoT 기기 등에 많이 사용)
주요 특징
UNIX와 비슷한 철학을 가진 오픈소스 운영체제로서, UNIX와 호환되는 시스템이라서 UNIX의 특징들을 가짐
1. 오픈소스와 자유 소프트웨어
- 소스 코드가 공개되어 있어 누구나 수정, 배포할 수 있으며, 커스터마이징이 가능
2. 다양한 배포판
- 리눅스 커널을 기반으로 여러 배포판이 개발되어 다양한 사용 환경에 설정 가능
- 서버에 최적화된 우분투 서버(Ubuntu Server), CentOS, RHEL, 클라우드와 컨테이너 환경에서 쓰이는 쿠버네티스(Kubernetes) 기반의 코어OS(CoreOS), 데스크탑 사용자에게 친숙한 우분투(Ubuntu), 민트(Linux Mint) 등 다양한 용도로 선택이 가능
3. 커맨드라인 인터페이스(CLI)
- 리눅스는, 커맨드라인에서 대부분의 작업을 처리 가능한, 강력한 명령어 시스템을 제공
- 명령어 시스템을 이용하여 서버 관리나 개발 환경 설정에 있어서 자동화와 고급 설정이 용이
4. 다중 사용자 및 다중 작업 지원
- 다수의 사용자가 동시에 접속해 작업 가능
- 여러 작업을 동시에 처리할 수 있는 멀티태스킹(다중 작업)기능이 탁월
왜 서버, 클라우드 인프라쪽에서 많이 사용될까?
1. 안정성
- 장시간의 무중단 운영이 필요한 서버 환경에서 매우 안정적인 성능을 발휘
- 메모리 관리가 뛰어나고, 시스템이 안정적이어서 다운타임이 거의 없어, 안정적인 서비스 제공이 가능
- 서버가 오랜 시간 동안 구동되더라도 성능 저하가 거의 없음
2. 유연성과 확장성
- 오픈소스 → 자유롭게 커스터마이징 가능
- 서버의 용도에 맞게 커널을 수정하거나, 불필요한 기능을 제거하여 가볍게 최적화 가능