# Pacman (한국어)

## 개요

pacman 꾸러미 관리자(패키지 매니저)는 아치 리눅스만의 개성있는 주 기능 중 하나입니다. 이진 꾸러미(바이너리 패키지) 형식과 사용하기 쉬운 빌드 시스템으로 이루어져 있습니다. pacman은 아치 공식 저장소나 사용자가 직접 만든 꾸러미 등을 쉽게 관리하도록 해줍니다.

pacman은 꾸러미 목록과 마스터 서버를 동기화해 가장 최신의 시스템을 유지합니다. 게다가 이 서버 및 클라이언트 모델은 간단한 명령으로 사용자에게 꾸러미와 필요한 의존성 꾸러미까지 같이 내려받고 설치도 해줍니다!

pacman은 C로 짜여졌으며 .pkg.tar.xz 형식의 패키지를 씁니다.

Tip: 아치 공식 pacman 꾸러미에는 makepkg, pactree, vercmp, checkupdates[broken link: invalid section] 같이 자주 쓰는 도구들도 포함되어 있어요. `pacman -Ql pacman | grep bin`를 실행하면 모든 도구들을 목록으로 볼 수 있습니다.

## 사용법

모르는 것이 있다면 `man pacman`를 읽어보도록 하자.

### 설치 및 삭제

설치와 삭제에 앞서 로컬 꾸러미 DB와 원격 저장소를 동기화 시킬 필요성이 있다.

    pacman -Sy

또는

    pacman --sync --refresh

하나의 꾸러미 또는 그 이상의 리스트 (여기에는 의존성에 의한 딸림-꾸러미 포함) 에 대한 설치 또는 판올림 명령은 다음과 같다.

    pacman -S 꾸러미_이름1 꾸러미_이름2

다른 저장소에 있는 꾸러미를 원한다면 (예를들어 extra나 testing), 다음 처럼 기술한다.

    pacman -S extra/꾸러미_이름
    pacman -S testing/꾸러미_이름

꾸러미 설치 전 로컬 꾸러미 DB에 대한 새로 고침:

    pacman -S 꾸러미_이름

찌꺼기를 남기는, 꾸러미 하나에 대한 삭제

    pacman -R 꾸러미_이름

설치된 다른 꾸러미가 사용하지 않는 의존적인 꾸러미들의 모든 삭제:

    pacman -Rs 꾸러미_이름

의존성 검사 없이 꾸러미 삭제

    pacman -Rd 꾸러미_이름

### 시스템 갱신

Pacman은 단 하나의 명령으로 모든 꾸러미들의 판올림이 가능하다. (완전 자동)

    pacman -Su

다음은, 저장소에 대한 동기화와 동시에 시스템에 대한 판올림을 해준다:

    pacman -Syu

### 꾸러미 질의

Pacman은 꾸러미 목록에 대한 꾸러미 DB 검색이 가능하며, 꾸러미 이름의 일부분이라도 일치되는 글자열을 가진 모든 꾸러미들을 검색할 수 있다.

    pacman -Ss 꾸러미

설치된 꾸러미 찾기:

    pacman -Qs 꾸러미

꾸러미 이름을 알고 있다면, 꾸러미에 대한 정보를 찾아 볼 수 있다. 첨언하자면, query info (-Qi) 는 sync info (-Si) 보다 설치된 꾸러미에 한해서 조금 더 많은 정보를 보여주며, 미설치된 꾸러미 정보는 볼 수 없다.

    pacman -Si 꾸러미
    pacman -Qi 꾸러미

꾸러미에 적재된 파일리스트:

    pacman -Ql 꾸러미

현재 설치된 꾸러미 가운데 사용되지 않는 파일 리스트:

    pacman -Qe

또, 시스템에 존재하는 꾸러미 파일을 찾을 수 있다.

    pacman -Qo /패스/경로/파일

### 다른 사용법

- 설치 없이 꾸러미 내려받기:

    pacman -Sw 꾸러미_이름

- 로컬 꾸러미 설치 (저장소 아님):

    pacman -U /패스/경로/꾸러미/꾸러미_이름-버젼.pkg.tar.gz

- 꾸러미 캐쉬를 몽땅 버리기 (/var/cache/pacman/pkg):

    pacman -Scc

보다 상세한 스위치들에 대해서는 `pacman --help`나 `man pacman`를 조회해보자.

## 설정

pacman'의 설정 파일은 `/etc/pacman.conf`에 있습니다. 이건 pacman에게 사용자가 원하는 방식으로 작업하도록 프로그램을 설정하는 스크립트 입니다. 설정 파일에 관한 자세한 정보는 man pacman.conf에서 볼 수 있습니다.

### 기본 옵션

기본 옵션들은 설정 파일의 `[options]` 부분에 있습니다. man page를 읽어보시거나 or 기본 `pacman.conf`를 보시면 여기에다가 무엇을 해야하는지 알 수 있습니다.

### 저장소

`/etc/pacman.conf` 설정 파일에 써져있는 바와 같이, 이 부분에서는 어떤 공식 저장소를 사용할 것인지 정합니다. 여러 저장소들은 `/etc/pacman.d/mirrorlist`처럼 다른 파일에 포함되어 있거나 직접 설정 파일에서 정할 수 있습니다. 그래서 딱 하나의 목록을 유지보수 함을 필요로 합니다.

    /etc/pacman.conf

    #[testing]
    #SigLevel = PackageRequired
    #Include = /etc/pacman.d/mirrorlist

    [core]
    SigLevel = PackageRequired
    Include = /etc/pacman.d/mirrorlist

    [extra]
    SigLevel = PackageRequired
    Include = /etc/pacman.d/mirrorlist

    #[community-testing]
    #SigLevel = PackageRequired
    #Include = /etc/pacman.d/mirrorlist

    [community]
    SigLevel = PackageRequired
    Include = /etc/pacman.d/mirrorlist

    # If you want to run 32 bit applications on your x86_64 system,
    # enable the multilib repositories as required here.

    #[multilib-testing]
    #SigLevel = PackageRequired
    #Include = /etc/pacman.d/mirrorlist

    #[multilib]
    #SigLevel = PackageRequired
    #Include = /etc/pacman.d/mirrorlist

    # An example of a custom package repository.  See the pacman manpage for
    # tips on creating your own repositories.
    #[custom]
    #SigLevel = Optional TrustAll
    #Server = file:///home/custompkgs

Warning: Care should be taken when using the testing repository. It is in active development and updating may cause some packages to stop working. People who use the testing repository are encouraged to subscribe to the arch-dev-public mailing list for current information.

## 연관 고리

Improve pacman performance
Colored Pacman output
Downgrade packages
Redownloading all installed packages
Arch User Repository
Local repository HOW-TO
Custom local repository with ABS and gensync
Howto Upgrade via Home Network (Network Shared Pacman Cache)
Pacman GUI Frontends
Pacman Aliases (for bash)

Categories:

- Package management (한국어)
- Utilities (한국어)

Hidden category:

- Pages with broken section links