Arch Linux

Arch Linux는 독립적으로 개발되는 범용 Linux 배포판이다. 최소한의 기본 시스템을 제공하고 사용자가 필요한 구성 요소를 직접 선택하여 자신의 환경을 구성하는 방식을 중심으로 설계되어 있다. 공식 프로젝트는 Arch Linux의 개발 방향을 단순성, 최소주의와 코드의 간결함에...

분류Linux 배포판
계열독립
개발 시작2001년
최초 공개2002년 3월 11일
창시자Judd Vinet
개발Arch Linux 프로젝트 및 커뮤니티
커널Linux
릴리스 방식롤링 릴리스
패키지 관리자pacman
패키지 형식pkg.tar.zst
주요 아키텍처x86-64
라이선스자유 및 오픈 소스 소프트웨어
공식 웹사이트archlinux.org

Arch Linux는 독립적으로 개발되는 범용 Linux 배포판이다. 최소한의 기본 시스템을 제공하고 사용자가 필요한 구성 요소를 직접 선택하여 자신의 환경을 구성하는 방식을 중심으로 설계되어 있다. 공식 프로젝트는 Arch Linux의 개발 방향을 단순성, 최소주의와 코드의 간결함에 두고 있으며, 배포판 자체에서 많은 기능을 미리 구성하기보다는 원본 소프트웨어를 가능한 한 적은 변경으로 제공하는 것을 지향한다.[1]

Arch Linux는 특정 버전을 장기간 유지하는 전통적인 릴리스 방식 대신 롤링 릴리스 방식을 사용한다. 시스템을 정기적으로 새로운 버전으로 재설치하거나 대규모 배포판 업그레이드를 수행하는 구조가 아니라, 패키지를 지속적으로 업데이트하면서 현재 상태를 유지한다. 공식 패키지는 주로 x86-64 아키텍처를 대상으로 제공되며 최신 안정 버전의 소프트웨어를 비교적 빠르게 배포하는 것을 목표로 한다.[2]

패키지 관리는 Arch Linux를 위해 개발된 pacman을 중심으로 이루어진다. pacman은 바이너리 패키지 설치, 제거, 의존성 처리와 시스템 전체 업데이트를 담당하며, PKGBUILD, makepkg 등의 도구와 함께 소스에서 Arch 패키지를 생성하는 체계도 제공한다.[3] 공식 저장소 이외에는 사용자가 작성한 PKGBUILD를 공유하는 AUR이 널리 사용된다.

Arch Linux의 개발은 캐나다의 프로그래머 Judd Vinet이 2001년 초 시작했다. Slackware, BSD, PLD Linux와 CRUX 등의 단순한 설계에서 영향을 받았으며, 직접 개발한 패키지 관리자인 pacman과 함께 배포판을 구축했다. 최초의 정식 릴리스인 Arch Linux 0.1은 2002년 3월 11일 공개되었다.[4]

Arch Linux는 설치 이후 완성된 데스크톱이나 특정 사용 환경을 제공하는 대신 사용자가 운영체제의 구성 요소를 직접 결정할 수 있도록 하는 성격이 강하다. 이러한 구조 때문에 데스크톱, 개발 환경, 서버, 가상 머신과 그 밖의 여러 용도로 같은 기본 배포판을 서로 다른 형태로 구성할 수 있다. 공식적으로 시스템 전반을 설정하기 위한 통합 GUI 구성 도구를 제공하지 않으며, 많은 시스템 설정은 셸과 텍스트 기반 설정 파일을 통해 이루어진다.[5]

역사

초기 개발

Arch Linux 0.1

Judd Vinet 시기

Aaron Griffin 시기

현대 Arch Linux

주요 변화

설계 철학

단순성

최소주의

사용자 중심

실용주의

다양성과 범용성

업스트림 중심 정책

릴리스 방식

롤링 릴리스

패키지 업데이트

시스템 전체 업그레이드

부분 업그레이드

수동 개입이 필요한 업데이트

설치

설치 이미지

라이브 환경

디스크와 파일 시스템 구성

네트워크 설정

기본 시스템 설치

부트로더

archinstall

설치 이후 구성

시스템 구성

systemd

사용자와 권한

네트워크

로케일과 시간

파일 시스템

서비스 관리

로그 관리

패키지 관리

pacman

패키지 데이터베이스

패키지 설치와 제거

시스템 업데이트

의존성 관리

패키지 캐시

pacman 설정

패키지와 빌드 시스템

Arch 패키지

PKGBUILD

makepkg

Arch Build System

패키지 서명

사용자 정의 패키지

공식 저장소

core

extra

multilib

테스트 저장소

미러

Arch User Repository

AUR의 구조

PKGBUILD 공유

AUR 패키지 설치

AUR Helper

보안과 신뢰 모델

커널

linux

linux-lts

linux-zen

사용자 정의 커널

그래픽과 데스크톱 환경

X Window System

Wayland

데스크톱 환경

윈도 관리자

디스플레이 관리자

그래픽 드라이버

오디오

하드웨어 지원

x86-64

CPU 마이크로코드

그래픽 장치

네트워크 장치

노트북

펌웨어

개발 환경

컴파일러와 빌드 도구

프로그래밍 언어

컨테이너

가상화

개발용 워크스테이션

서버에서의 활용

웹 서버

데이터베이스

컨테이너 호스트

가상화 호스트

서버 운영과 롤링 릴리스

보안

보안 업데이트

패키지 서명

권한 관리

Mandatory Access Control

Arch Linux Security Tracker

문서와 커뮤니티

ArchWiki

공식 포럼

메일링 리스트

IRC와 기타 커뮤니티

버그 보고와 개발 참여

파생 배포판

Manjaro

EndeavourOS

CachyOS

기타 파생 배포판

특징

장점과 한계

영향

관련 문서

  1. Arch Linux - About
  2. Arch Linux
  3. ArchWiki - pacman
  4. ArchWiki - Arch Linux
  5. Arch Linux - About