이것이 리눅스다(9) - 필수 개념과 명령어(프로그램 설치를 위한 RPM)

1 minute read

프로그램 설치를 위한 RPM

RPM

리눅스는 설치가 까다로워 환영받지 못했었다. 그래서 윈도우의 setup.exe를 더블클릭 해서 설치하는 방식처럼 편리하게 설치해보자고 하여 레드햇에서 RPM(Redhat Package Manager) 패키지를 출시했다. 확장명은 *.rpm이다. 이 패키지에는 굉장히 많은 파일이 들어있다.

파일의 의미

RPM 파일은 다음과 같은 의미가 정해져 있는 상태로 저장되어 있다.

패키지이름-버전-릴리즈번호.CentOS버전.아키텍처.rpm

예를 들어 gzip의 경우 gzip-1.9-4.el8.x86_64.rpm인데 이를 자세히 살펴보면 다음과 같다.

  • 패키지이름 : gzip → 패키지(프로그램)의 이름.
  • 버전 : 1.9 → 대개 3자리수로 구성. 주버전, 부버전, 패치버전.
  • 릴리즈번호 : 4 → 문제점을 개선할 때마다 붙여지는 번호.
  • CentOS 버전 : el8 → CentOS에서 배포할 경우에 붙여짐.
  • 아키텍처 : x86_64 → 64비트 CPU를 의미.

※ 아키텍처의 종류

  • x86_64 : 64비트 CPU
  • i386~686 : 32비트 CPU
  • src : 소스
  • noarch : 모든 CPU

RPM 명령어 옵션

  • rpm -Uvh <패키지 파일 이름.rpm>: 패키지 설치.
    – U → (대문자) 패키지가 설치/업그레이드
    – v → 설치과정의 확인
    – h → 설치진행과정을 “#”마크로 화면에 출력
  • rpm -e <패키지 이름>: 패키지 삭제.
  • rpm -qa <패키지 이름>: 패키지가 설치되었는지 확인.
  • rpm -qlp <패키지 파일 이름>: 패키지에 어떤 파일들이 포함되었는지 확인.
  • rpm -qip <패키지 파일 이름>: 패키지 파일의 상세정보.

RPM 단점

RPM은 의존성 문제가 있다. 만약 A패키지를 설치하고 싶은데 그 패키지를 설치하기 위해서는 B패키지가 필요하다면 일일이 찾아서 설치를 해주어야 한다. 하지만 이는 RPM으로는 해결이 까다롭다.

그래서 이를 해결하기 위해 DNF(또는 YUM)가 등장하였다.

사실 DNF의 등장으로 RPM을 사용할 일은 거의 없긴 하지만 그래도 DNF가 RPM을 포장하는 개념이기 때문에 우선 기본적인 사용법은 알아두는 것이 좋다.

Leave a comment