공든탑앱 열기

rpm

리눅스마스터 2급 · 소프트웨어 설치 · 약 11분

쉽게 말하면

레드햇 집안 리눅스에서 설치 상자(.rpm 파일) 하나를 직접 설치하고, 지우고, 무엇이 설치됐는지 조회하는 기본 도구예요. 필요한 다른 상자는 알아서 가져오지 않아요.

시험용 정의

rpm(RPM Package Manager)은 레드햇 계열의 저수준 패키지 도구로, .rpm 파일을 설치(-i)·업그레이드(-U)·삭제(-e)하고 설치된 패키지를 조회(-q)·검증(-V)한다.

비유로 이해하기

도서관 사서의 도장과 대장이다. 책(패키지)을 들이고(-i) 새 판으로 바꾸고(-U) 빼내며(-e), 대장을 뒤져(-q) 어느 책에 어떤 페이지가 있는지 알려 준다.

자세히

설치·업그레이드·삭제

옵션뜻
-i 파일.rpm설치 (install)
-U 파일.rpm업그레이드. 설치 안 되어 있으면 새로 설치
-F 파일.rpm이미 설치된 경우에만 업그레이드 (freshen)
-e 패키지명삭제 (erase). 파일명이 아니라 패키지 이름
-v / -h자세히 / # 진행 막대 (보통 -ivh, -Uvh)
--nodeps의존성 검사 무시
--force이미 있어도 강제로
--test실제로 하지 않고 검사만

조회 (-q와 조합)

옵션뜻
-qa설치된 모든 패키지 (all)
-q 패키지설치 여부·버전
-qi 패키지상세 정보 (info)
-ql 패키지패키지가 설치한 파일 목록 (list)
-qf 파일그 파일이 속한 패키지 (file)
-qc / -qd 패키지설정 파일 / 문서 파일만
-qR 패키지필요한 의존성 (Requires)
-qp 파일.rpm설치 전 .rpm 파일 조회 (p와 i·l 조합: -qpi, -qpl)

검증과 서명

rpm -V 패키지(verify): 설치 후 바뀐 파일을 표시한다(S 크기, 5 체크섬, M 권한, T 시간 등). rpm -Va 전체 검증. rpm --import 키로 GPG 키를 등록하고 rpm -K 파일.rpm으로 서명 확인.

시험에 이렇게 나와요

확인 문제

Q1. /usr/bin/ssh 파일이 어느 패키지에 들어 있는지 알고 싶다. 알맞은 명령은?

  1. rpm -qa ssh
  2. rpm -ql /usr/bin/ssh
  3. rpm -qf /usr/bin/ssh
  4. rpm -qi /usr/bin/ssh
정답 보기

3번 rpm -qf /usr/bin/ssh

-q(query) + f(file): 이 파일이 속한 패키지. -ql은 반대로 패키지 안의 파일 목록(list), -qi는 패키지 정보, -qa는 설치된 전체 목록이다.

Q2. 아직 설치하지 않은 nmap-7.9.rpm 파일의 정보를 확인하는 명령은?

  1. rpm -qi nmap
  2. rpm -qip nmap-7.9.rpm
  3. rpm -e nmap-7.9.rpm
  4. rpm -qf nmap-7.9.rpm
정답 보기

2번 rpm -qip nmap-7.9.rpm

파일(p)을 조회(q)해 정보(i).

Q3. /usr/bin/ssh 파일이 어느 패키지로 설치됐는지 알아보는 명령은?

  1. rpm -qa /usr/bin/ssh
  2. rpm -V /usr/bin/ssh
  3. rpm -ql /usr/bin/ssh
  4. rpm -qf /usr/bin/ssh
정답 보기

4번 rpm -qf /usr/bin/ssh

rpm -qf다. f(file)는 파일이 어느 패키지에서 왔는지 찾는다. -ql은 반대로 패키지가 설치한 파일 목록을 본다.

Q4. httpd를 다른 패키지가 의존하고 있어도 강제로 제거하는 명령은?

  1. rpm -F httpd
  2. rpm -qe httpd
  3. rpm -e httpd --nodeps
  4. rpm -U httpd --force
정답 보기

3번 rpm -e httpd --nodeps

--nodeps로 의존성 검사를 건너뛴다.

Q5. 설치된 패키지 httpd를 삭제하는 명령은?

  1. rpm -e httpd
  2. rpm -r httpd
  3. rpm -U httpd
  4. rpm -d httpd
정답 보기

1번 rpm -e httpd

rpm -e다. e는 erase(지우기)다. -U는 업그레이드다.

Q6. 패키지가 이미 설치되어 있을 때만 업그레이드하는 옵션은?

  1. -i
  2. -U
  3. -V
  4. -F
정답 보기

4번 -F

-F(freshen). -U는 없으면 설치까지.

Q7. 설치된 bash 패키지가 설치한 파일 목록을 보는 명령은?

  1. rpm -qf bash
  2. rpm -qa bash
  3. rpm -ql bash
  4. rpm -qi bash
정답 보기

3번 rpm -ql bash

rpm -ql bash다. q(query)에 l(list)을 붙이면 파일 목록이 나온다. -qi는 패키지 정보, -qa는 설치된 모든 패키지 목록이다.

Q8. 아직 설치하지 않은 test.rpm 파일의 정보를 보는 명령은?

  1. rpm -qa test.rpm
  2. rpm -qi test.rpm
  3. rpm -qpi test.rpm
  4. rpm -Vi test.rpm
정답 보기

3번 rpm -qpi test.rpm

파일을 조회할 땐 p(package file).

헷갈리기 쉬운 O·X

rpm -e 뒤에는 .rpm 파일 이름을 적는다.

정답 보기

X 설치된 패키지 이름을 적는다.

rpm -Uvh는 패키지를 업그레이드하며 설치되지 않았으면 새로 설치한다.

정답 보기

O 맞는 설명이다.

rpm -qa는 설치 가능한 모든 패키지를 저장소에서 검색한다.

정답 보기

X 이미 설치된 모든 패키지 목록.

함께 보면 좋은 개념