Linux / 명령어 / apt-get - APT 패키지 작업을 스크립트와 명령행에서 실행

apt-get은 Debian·Ubuntu 계열에서 패키지 설치·제거·업데이트를 수행하는 APT 명령입니다. 사용자용 apt와 기능이 겹치지만 자동화 스크립트에는 apt-get이 더 적합합니다.

apt-get 명령어란?

저장소 목록 갱신은 update, 설치된 패키지 갱신은 upgrade입니다. install은 요청한 패키지와 필요한 의존성을 함께 처리합니다. -s는 패키지 변경 계획을 시뮬레이션할 때 유용하고, -y는 확인 질문에 자동 동의하므로 사전 검토 없이 사용하면 위험합니다.

기본 문법

apt-get [옵션] 명령 [패키지 ...]

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

사용 예제

저장소 목록 갱신

설치 후보의 메타데이터를 새로 받습니다.

sudo apt-get update

업그레이드 계획 미리 보기

실제로 바꾸지 않고 설치·유지·제거 계획을 확인합니다.

apt-get -s upgrade

패키지 설치

자동 승인 옵션 없이 변경 목록을 확인한 뒤 설치합니다.

sudo apt-get install curl

실제 변경 전 시뮬레이션

apt-get -s install은 설치 작업을 시뮬레이션해 어떤 패키지가 추가·업그레이드될지 보여줍니다. 실제 설치는 하지 않습니다.

apt-get -s install curl

출력에서 볼 수 있는 행의 형식(패키지·버전은 환경에 따라 달라짐):

Inst curl (...)
Conf curl (...)

Inst는 설치 또는 업그레이드 예정 항목, Conf는 설정 예정 항목입니다. 의존성 패키지도 함께 표시될 수 있으므로 마지막 요약만 보지 말고 삭제·교체되는 항목을 확인하세요. apt-get update는 목록 갱신, apt-get upgrade는 설치된 패키지 업그레이드라는 차이도 구별해야 합니다.

주요 옵션과 형식

옵션·형식 설명
update 패키지 목록을 갱신합니다.
install / remove 패키지를 설치하거나 제거합니다.
upgrade / full-upgrade 업데이트를 적용합니다. full-upgrade는 의존성 해결을 위해 제거도 할 수 있습니다.
-s, --simulate 실제 변경 없이 실행 결과를 시뮬레이션합니다.
-y, --yes 확인 질문에 자동 동의합니다. 변경 계획을 미리 검토하세요.

사용할 때 주의할 점

-y를 무조건 붙이면 예상치 못한 의존성 변경을 놓칠 수 있습니다. full-upgrade는 패키지를 제거할 수 있으므로 서비스가 중요한 시스템에서는 시뮬레이션과 백업 후 진행하세요. 스크립트에서도 저장소 신뢰와 오류 종료 코드를 확인해야 합니다.

자주 묻는 질문

apt 대신 apt-get을 꼭 써야 하나요?

대화형 사용에는 apt가 편리합니다. 자동화 스크립트에서는 동작과 출력의 호환성을 고려해 apt-get을 우선하세요.

공식 문서

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

같은 카테고리의 다른 글
Linux / 명령어 / pwd - 현재 작업 디렉터리 경로 확인

Linux / 명령어 / pwd - 현재 작업 디렉터리 경로 확인

Linux pwd 명령어로 현재 작업 디렉터리를 확인하는 방법을 설명합니다. 논리적 경로와 물리적 경로, 셸 내장 명령과 PWD 변수의 차이도 함께 알아봅니다.

Linux 강좌 / 터미널과 셸 시작하기 - 명령어 구조와 도움말 읽기

Linux 강좌 / 터미널과 셸 시작하기 - 명령어 구조와 도움말 읽기

터미널과 셸의 차이부터 명령어·옵션·인수의 구조, 실행 결과 읽기, Bash 도움말 찾기까지 실습으로 익힙니다.

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

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

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

Linux / 명령어 / sed - 스트림에서 텍스트 검색·치환

Linux / 명령어 / sed - 스트림에서 텍스트 검색·치환

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

Linux / 명령어 / time - 명령 실행 시간 측정

Linux / 명령어 / time - 명령 실행 시간 측정

Linux time 명령어로 명령과 파이프라인의 실행 시간 및 자원 사용량을 측정하는 방법을 설명합니다. Bash 예약어와 GNU /usr/bin/time의 차이, 출력 저장과 정확한 비교 방법을 정리합니다.

Linux / 명령어 / unxz - xz 압축 파일 풀기

Linux / 명령어 / unxz - xz 압축 파일 풀기

Linux unxz 명령어의 용도와 기본 문법을 알아봅니다. 파일 처리 예제, 주요 옵션과 원본 보존·덮어쓰기 주의점을 설명합니다.

Linux / 명령어 / date - 현재 시각 표시와 출력 형식 지정

Linux / 명령어 / date - 현재 시각 표시와 출력 형식 지정

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

Linux / 명령어 / cd - 디렉터리 이동

Linux / 명령어 / cd - 디렉터리 이동

Linux cd 명령어로 절대·상대 경로, 홈과 이전 디렉터리로 이동하는 방법을 설명합니다. 심볼릭 링크 처리, CDPATH, 스크립트와 sudo cd의 한계 및 오류 해결법도 정리합니다.

Linux / 명령어 / htop - 대화형 프로세스 목록 탐색

Linux / 명령어 / htop - 대화형 프로세스 목록 탐색

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

Linux / 명령어 / mkdir - 디렉터리 생성

Linux / 명령어 / mkdir - 디렉터리 생성

Linux mkdir 명령어로 디렉터리와 여러 단계의 상위 디렉터리를 만드는 방법을 설명합니다. 권한, umask, SELinux 환경과 자동화에서 안전하게 사용하는 방법도 정리합니다.