[Linux] 7. 패키지-rpm(Redhat Package Manager)

rpm

패키지 파일의 구성 요소

linux

  • mysql-embedded-devel : 파일명
  • 5 : major version(프로그램 자체의 변경이 일어났을 경우 바뀜)
  • 1 : minor version(기능의 추가 발생시 증가)
  • 73 : patch version(버그가 수정되었을 경우 증가 / 패치발생시)
  • 7 : 파일이 변경된 횟수
  • e16.x86 64 : 아키텍쳐(Architecture)

그렇다면 아키텍쳐(Architecture)라는 것은 무엇일까?

linux

rpm 패키지 파일 작업시 유의사항

  • 의존성 오류 예시

linux

  1. 모든 작업은 반드시 동일한 버전의 패키지 파일 이여야 한다.

  2. 의존성 오류(Failed dependencies)를 절대 무시하지 말자.

  3. 의존성을 제기한 패키지를 먼저 작업해야 한다.

  4. 가급적 의존성 무시(—nodeps)를 사용하지 말자.

  5. 의존성 오류 발생시 needed를 기준으로 왼쪽을 보고 설치, 오른쪽을 보고 삭제를 한다.(위 예시 참고)

  6. ‘lib’으로 시작하고 중간에 ‘so’가 있는 경우는 무시해도 된다.

  7. 디렉토리로 시작하는 것들(/usr/bin/)은 패키지가 아니므로 무시한다.

  8. 대표 패키지부터 작업한다.

  9. 나머지는 화면에 보이는 순서대로 작업한다.

옵션

1. qa : 패키지 전체 목록을 조회한다. [rpm -qa | grep [패키지명]]

linux

2. e : 패키지를 삭제한다. [rpm -e [패키지명]]

linux

3. ivh : 패키지를 설치한다. [rpm -ivh [패키지명.rpm]]
(i : 패키지 설치, v : 작업과정을 자세하게 보여줌, h : 작업과정을 #(hash mark)로 표현함)

linux

vim 패키지 하나만을 즉, 단일패키지를 설치하는 것이기 때문에 ‘vim*.rpm’으로 설치를 해도 설치가 된다.

4. nodeps : 의존성 오류를 무시하고 작업을 실행한다. [rpm --nodeps[패키지명]]
(추가 옵션이기 때문에 다른 옵션과 같이 사용해야 한다.)

linux

Published 27 Nov 2018

BKJang's Devlog