Linux / 명령어 / pacman - Arch Linux에서 패키지 설치와 전체 시스템 업데이트

pacman은 Arch Linux 계열에서 패키지와 저장소를 관리합니다. 설치·제거뿐 아니라 저장소 동기화와 전체 시스템 업그레이드를 한 흐름으로 수행하는 것이 중요합니다.

pacman 명령어란?

-S는 저장소 패키지 설치, -Q는 로컬 설치 상태 조회, -R은 제거입니다. -Syu는 패키지 데이터베이스를 동기화하고 설치된 패키지를 함께 업그레이드합니다. 데이터베이스만 갱신한 -Sy 후 일부 패키지만 설치하면 부분 업그레이드 상태가 될 수 있어 피해야 합니다.

기본 문법

pacman -동작[옵션] [패키지 ...]

설치된 구현과 옵션은 배포판에 따라 다를 수 있습니다. man pacman으로 현재 시스템의 설명을 확인하세요.

사용 예제

저장소 패키지 검색

설치 전에 이름과 설명을 확인합니다.

pacman -Ss nginx

설치된 패키지 정보 확인

현재 설치된 버전과 의존 정보를 봅니다.

pacman -Qi bash

전체 시스템 업데이트

저장소 동기화와 전체 패키지 업그레이드를 함께 실행하고 변경 목록을 검토합니다.

sudo pacman -Syu

로컬 패키지 조회 결과

pacman -Q는 설치된 로컬 패키지와 버전을 조회합니다. 다음 예제에서 bash가 설치되어 있다면 한 줄이 나옵니다.

pacman -Q bash

예시 출력(버전은 시점마다 달라짐):

bash 5.x.x-1

패키지가 없으면 조회 실패와 0이 아닌 종료 상태가 나옵니다. pacman -Syu는 저장소 동기화와 시스템 전체 업그레이드를 결합합니다. Arch 계열에서 일부 패키지만 선택적으로 업그레이드해 부분 업그레이드 상태를 만드는 것은 의존성 문제를 일으킬 수 있으므로 공식 운영 지침을 따르세요.

주요 옵션과 형식

옵션·형식 설명
-S 패키지 저장소에서 패키지를 설치합니다.
-Syu 데이터베이스 동기화와 전체 시스템 업그레이드를 함께 수행합니다.
-Ss 검색어 저장소 패키지를 검색합니다.
-Qi 패키지 설치된 패키지 정보를 확인합니다.
-R 패키지 설치된 패키지를 제거합니다. 추가 옵션의 영향 범위를 확인하세요.

사용할 때 주의할 점

Arch에서는 부분 업그레이드를 지원하지 않는다는 원칙에 따라 pacman -Sy만 실행한 뒤 일부 패키지를 설치하는 흐름을 피하세요. 업데이트 전에 배포판 공지와 변경 목록을 확인하고, 오래된 시스템은 중요 자료를 백업하세요. -Rns 같은 제거 조합은 의존 패키지와 설정을 더 넓게 정리할 수 있으므로 대상 목록을 반드시 확인합니다.

자주 묻는 질문

pacman -Sy와 -Syu는 어떻게 다른가요?

-Sy는 저장소 데이터베이스만 동기화하고, -Syu는 동기화 후 설치된 패키지 전체의 업데이트까지 진행합니다. 일반 업데이트에는 -Syu를 사용하세요.

공식 문서

옵션의 정확한 동작과 구현별 차이는 pacman 관련 공식 문서에서 확인할 수 있습니다.

같은 카테고리의 다른 글
Linux / 명령어 / command - 명령어 검색과 별칭 우회 실행

Linux / 명령어 / command - 명령어 검색과 별칭 우회 실행

셸 command 명령어로 함수 검색을 건너뛰어 원래 명령을 실행하고, command -v로 명령 존재 여부를 확인하는 방법을 설명합니다. -p·-V 옵션과 builtin·exec·env의 차이도 정리합니다.

Linux 강좌 / 파일 권한 읽고 바꾸기와 sudo 사용법

Linux 강좌 / 파일 권한 읽고 바꾸기와 sudo 사용법

리눅스 파일과 디렉터리의 읽기·쓰기·실행 권한을 해석하고 chmod로 실습 파일의 권한을 바꿉니다. sudo의 사용 범위와 권한 오류를 진단하는 순서도 설명합니다.

Linux / 명령어 / split - 큰 파일을 크기·행 수별로 분할

Linux / 명령어 / split - 큰 파일을 크기·행 수별로 분할

Linux split 명령어의 기본 문법과 실제 사용 예제를 설명합니다. 주요 옵션과 결과를 해석할 때 주의할 점을 확인할 수 있습니다.

Linux 강좌 / PID와 PPID 이해하기 - 프로세스 확인과 관리

Linux 강좌 / PID와 PPID 이해하기 - 프로세스 확인과 관리

PID와 PPID의 의미와 부모·자식 프로세스의 관계를 설명합니다. ps와 pgrep으로 확인하고, 직접 만든 실습 프로세스를 안전하게 종료하는 방법을 익힙니다.

Linux 강좌 / 사용자·그룹과 파일 소유권 이해하기

Linux 강좌 / 사용자·그룹과 파일 소유권 이해하기

UID, GID, 기본·추가 그룹과 파일 소유권의 의미를 설명합니다. id, groups, getent, ls, stat으로 현재 계정과 파일의 소유 정보를 안전하게 확인합니다.

Linux / 명령어 / basename - 경로에서 마지막 이름 추출

Linux / 명령어 / basename - 경로에서 마지막 이름 추출

Linux basename 명령어로 경로에서 마지막 파일명이나 디렉터리 이름을 추출하고 접미사를 제거하는 방법을 설명합니다. 여러 경로와 안전한 셸 스크립트 처리 방법도 정리합니다.

Linux 강좌 / 셸의 명령 실행 방식 - ;, &&, ||, 별칭과 환경 변수

Linux 강좌 / 셸의 명령 실행 방식 - ;, &&, ||, 별칭과 환경 변수

Bash가 명령을 해석하고 종료 상태에 따라 다음 명령을 실행하는 방식을 알아봅니다. ;, &&, ||와 별칭·환경 변수의 차이를 안전한 예제로 설명합니다.

Linux / 명령어 / dnf - RPM 계열에서 패키지·저장소 관리

Linux / 명령어 / dnf - RPM 계열에서 패키지·저장소 관리

Linux dnf 명령어의 적용 배포판과 기본 작업을 설명합니다. 패키지 조회·설치 예제, 주요 옵션과 시스템 변경 시 주의점을 알아봅니다.

Linux / 명령어 / kill - PID에 시그널 보내기

Linux / 명령어 / kill - PID에 시그널 보내기

Linux kill 명령어의 기본 문법과 실제 사용 예제를 설명합니다. 주요 옵션과 결과를 해석할 때 주의할 점을 확인할 수 있습니다.

Linux / 명령어 / sync - 버퍼에 남은 쓰기 데이터 저장 요청

Linux / 명령어 / sync - 버퍼에 남은 쓰기 데이터 저장 요청

Linux sync 명령어의 기능과 기본 문법을 설명합니다. 실제 사용 예제, 주요 옵션과 작업 전 확인할 점을 알아봅니다.