개요
Pacman은 Arch Linux의 공식 패키지 관리자입니다. 이 가이드는 사용 빈도가 높은 옵션부터 기능별로 정리한 완전한 참조 문서입니다.
1. 패키지 설치 및 업그레이드
pacman -S (패키지 설치)
가장 자주 사용되는 명령어로, 패키지를 설치합니다.
# 단일 패키지 설치
pacman -S firefox
# 여러 패키지 동시 설치
pacman -S vim git htop
# 그룹 설치
pacman -S base-devel
pacman -Syu (시스템 전체 업그레이드)
시스템의 모든 패키지를 최신 버전으로 업그레이드합니다.
# 저장소 데이터베이스 동기화 후 시스템 업그레이드
pacman -Syu
# 강제 새로고침 후 업그레이드
pacman -Syyu
pacman -Sy (저장소 데이터베이스 동기화)
패키지 데이터베이스를 최신 상태로 동기화합니다.
# 데이터베이스 동기화
pacman -Sy
# 강제 새로고침
pacman -Syy
pacman -Su (업그레이드만 실행)
데이터베이스 동기화 없이 설치된 패키지만 업그레이드합니다.
pacman -Su
pacman -Sw (패키지 다운로드만)
설치하지 않고 패키지 파일만 다운로드합니다.
# 패키지 다운로드만
pacman -Sw firefox
# 업그레이드 패키지들 다운로드만
pacman -Syw
2. 패키지 제거
pacman -R (패키지 제거)
지정된 패키지를 제거합니다.
# 단일 패키지 제거
pacman -R firefox
# 여러 패키지 제거
pacman -R vim git htop
pacman -Rs (의존성과 함께 제거)
패키지와 더 이상 필요하지 않은 의존성을 함께 제거합니다.
# 패키지와 불필요한 의존성 제거
pacman -Rs firefox
# 여러 패키지와 의존성 제거
pacman -Rs package1 package2
pacman -Rns (설정 파일까지 완전 제거)
패키지, 의존성, 설정 파일을 모두 제거합니다.
# 완전 제거 (권장)
pacman -Rns firefox
pacman -Rdd (의존성 확인 무시하고 제거)
의존성 확인을 건너뛰고 강제로 제거합니다. (주의해서 사용)
# 강제 제거 (위험)
pacman -Rdd problematic-package
3. 패키지 검색 및 정보 조회
pacman -Ss (패키지 검색)
저장소에서 패키지를 검색합니다.
# 패키지명으로 검색
pacman -Ss firefox
# 설명 포함 검색
pacman -Ss "web browser"
# 정규식 사용
pacman -Ss "^fire"
pacman -Qs (설치된 패키지 검색)
로컬에 설치된 패키지를 검색합니다.
# 설치된 패키지 검색
pacman -Qs firefox
# 모든 설치된 패키지 나열
pacman -Qs
pacman -Si (패키지 상세 정보)
저장소 패키지의 상세 정보를 표시합니다.
# 패키지 정보 조회
pacman -Si firefox
# 여러 패키지 정보 조회
pacman -Si vim git
pacman -Qi (설치된 패키지 정보)
설치된 패키지의 상세 정보를 표시합니다.
# 설치된 패키지 정보
pacman -Qi firefox
# 설치 이유와 함께 정보 표시
pacman -Qii firefox
pacman -Ql (패키지 파일 목록)
패키지가 설치한 파일 목록을 표시합니다.
# 패키지 파일 목록
pacman -Ql firefox
# grep과 조합하여 특정 파일 찾기
pacman -Ql firefox | grep bin
pacman -Qo (파일 소유자 찾기)
특정 파일이 어느 패키지에 속하는지 찾습니다.
# 파일 소유 패키지 찾기
pacman -Qo /usr/bin/vim
# 현재 디렉토리의 파일 소유자 찾기
pacman -Qo $(pwd)
4. 의존성 및 관계 조회
pacman -Qdt (고아 패키지 찾기)
더 이상 필요하지 않은 의존성 패키지들을 찾습니다.
# 고아 패키지 목록
pacman -Qdt
# 고아 패키지 제거
pacman -Rns $(pacman -Qtdq)
pacman -Qe (명시적으로 설치된 패키지)
사용자가 직접 설치한 패키지 목록을 표시합니다.
# 명시적 설치 패키지
pacman -Qe
# 외부 패키지만 (AUR 등)
pacman -Qm
pacman -Qd (의존성으로 설치된 패키지)
다른 패키지의 의존성으로 설치된 패키지들을 표시합니다.
# 의존성 패키지 목록
pacman -Qd
pacman -Qu (업그레이드 가능한 패키지)
업그레이드가 가능한 패키지 목록을 표시합니다.
# 업그레이드 가능한 패키지
pacman -Qu
5. 캐시 및 시스템 관리
pacman -Sc (캐시 정리)
다운로드된 패키지 파일 중 설치되지 않은 것들을 삭제합니다.
# 불필요한 캐시 파일 삭제
pacman -Sc
# 모든 캐시 파일 삭제
pacman -Scc
pacman -D (패키지 속성 변경)
설치된 패키지의 속성을 변경합니다.
# 패키지를 명시적 설치로 변경
pacman -D --asexplicit firefox
# 패키지를 의존성으로 변경
pacman -D --asdeps firefox
pacman -U (로컬 패키지 설치)
로컬 패키지 파일을 설치합니다.
# 로컬 .pkg.tar.xz 파일 설치
pacman -U /path/to/package.pkg.tar.xz
# URL에서 직접 설치
pacman -U https://example.com/package.pkg.tar.xz
6. 고급 옵션
--noconfirm (확인 없이 실행)
모든 확인 질문에 자동으로 "예"로 답합니다.
# 확인 없이 설치
pacman -S --noconfirm firefox
# 확인 없이 제거
pacman -R --noconfirm firefox
--needed (이미 최신이면 재설치 안함)
이미 최신 버전이 설치되어 있으면 건너뜁니다.
# 필요한 경우만 설치
pacman -S --needed firefox vim git
--ignore (특정 패키지 무시)
업그레이드나 설치 시 특정 패키지를 무시합니다.
# 특정 패키지 무시하고 업그레이드
pacman -Syu --ignore firefox
# 여러 패키지 무시
pacman -Syu --ignore firefox,chromium
--downloadonly (다운로드만)
패키지를 다운로드만 하고 설치하지 않습니다.
# 다운로드만 실행
pacman -S --downloadonly firefox
7. Pacman-contrib 유틸리티
paccache (캐시 관리)
패키지 캐시를 효율적으로 관리합니다.
# 각 패키지의 최신 3개 버전만 유지
paccache -r
# 각 패키지의 최신 1개 버전만 유지
paccache -rk1
# 설치되지 않은 패키지의 캐시 모두 삭제
paccache -ruk0
# 드라이런 (실제 삭제하지 않고 미리보기)
paccache -dr
pacdiff (설정 파일 차이점 확인)
pacnew/pacsave 파일과 현재 설정의 차이점을 확인합니다.
# 설정 파일 차이점 확인
pacdiff
# 자동으로 병합 도구 실행
pacdiff -s
paclog-pkglist (설치 기록 조회)
패키지 설치/제거 기록을 조회합니다.
# 특정 날짜의 패키지 변경사항
paclog-pkglist 2024-01-01
# 두 날짜 사이의 변경사항
paclog-pkglist 2024-01-01 2024-01-31
rankmirrors (미러 속도 테스트)
미러 서버의 속도를 테스트하고 순위를 매깁니다.
# 미러리스트 속도 테스트
rankmirrors -n 6 /etc/pacman.d/mirrorlist
# 상위 10개 미러만 테스트
rankmirrors -n 10 /etc/pacman.d/mirrorlist
paclist (저장소별 패키지 목록)
특정 저장소의 패키지 목록을 표시합니다.
# core 저장소 패키지 목록
paclist core
# extra 저장소 패키지 목록
paclist extra
checkupdates (업데이트 확인)
시스템을 변경하지 않고 업데이트 가능한 패키지를 확인합니다.
# 업데이트 가능한 패키지 확인
checkupdates
# AUR 패키지도 함께 확인 (auracle 필요)
checkupdates && auracle outdated
8. 유용한 조합 명령어
시스템 정리
# 고아 패키지 제거
pacman -Rns $(pacman -Qtdq)
# 캐시 정리 (최신 3개 버전 유지)
paccache -r
# 설정 파일 차이점 확인
pacdiff
패키지 정보 완전 조회
# 패키지 정보 + 파일 목록 + 의존성
pacman -Qi package_name
pacman -Ql package_name
pacman -Qii package_name
시스템 상태 점검
# 업데이트 가능한 패키지
checkupdates
# 고아 패키지
pacman -Qdt
# 명시적으로 설치된 패키지
pacman -Qe
9. 주의사항 및 팁
🚨 중요한 주의사항
- pacman -Sy package_name 사용 금지 (부분 업그레이드 방지)
- 항상 pacman -Syu로 전체 시스템 업그레이드 후 새 패키지 설치
- -Rdd 옵션은 시스템을 손상시킬 수 있으므로 주의
💡 유용한 팁
- /var/log/pacman.log에서 패키지 설치/제거 이력 확인 가능
- alias를 설정하여 자주 사용하는 명령어 단축
- 정기적으로 paccache -r로 캐시 정리
- pacdiff로 설정 파일 충돌 해결
🔧 설정 파일 위치
- 주 설정: /etc/pacman.conf
- 미러리스트: /etc/pacman.d/mirrorlist
- 캐시 디렉토리: /var/cache/pacman/pkg/
- 로그 파일: /var/log/pacman.log
이 가이드는 Arch Linux pacman의 핵심 기능들을 다룹니다. 더 자세한 정보는 man pacman 명령어로 확인할 수 있습니다.
'개발일지와 메모사이 > Arch Linux' 카테고리의 다른 글
| CachyOS KDE Plasma에 카카오톡 설치 가이드 (3) | 2025.07.18 |
|---|---|
| Yay 설치 후에도 Pacman을 사용해야 하는 상황들 (1) | 2025.07.18 |
| Yay AUR 헬퍼 완전 가이드 (0) | 2025.07.18 |