RPM Package Manager
RPM 패키지 매니저(RPM Package Manager←Red Hat Package Manager)는 원래 레드햇에서 사용되었던 패키지 파일이었지만 현재는 많은 RPM 기반 배포판이 사용되고 있다. 이는 두 가지를 말하는데, 하나는 RPM 패키지 그 자체와 또 하나는 RPM 패키지를 관리하기 위한 도구이다. RPM을 사용하면 각종 소프트웨어의 설치 및 업데이트를 굉장히 편리하게 할 수 있다.
RPM은 Linux Standard Base의 표준 패키지 포맷 중 하나이다. 원래 레드햇 리눅스를 위한 것이었지만 많은 리눅스 배포판 및 노벨 넷웨어 (6.5 SP3 이후), IBM AIX 5 등으로 이식되었다. 현재의 이름 "RPM"은 재귀 약자의 일종이다.
What is EL
패키지명 등에 붙는 "el4", "el5", ... 은 "Enterprise Linux"의 약자로, "el4"는 "Enterprise Linux 4"가 된다.
Category
Usage
사용방법은 아래와 같다.
Filename rule
- 패키지이름: 패키지(프로그램)의 이름.
- 버전: 대개 3자리로 구성되어 있으며, [주버전].[부버전].[패치버전]이 있고, 높은버전일수록 최신이다.
- 릴리즈번호: 문제점을 개선할 때마다 붙여지는 번호이다.
- OS버전: 운영체제의 종류 및 버전이다.
- 아키텍처: CPU의 아키텍처를 의미하며 설치 가능한 CPU를 말한다.
- i386, i486, i586, i686: INTEL 또는 AMD 계열.
- alpha, sprc, ia64: 각각의 해당 CPU.
- src: 소스파일 패키지로, 서치 후 별도의 컴파일이 필요하다.
- noarch: 모든 CPU에서 설치가 가능하다 (NO ARCHitecture).
Example
-
rpm -ivh 패키지명
- 패키지 설치.
-
rpm -q [패키지경로]
- 패키지 설치 확인.
-
rpm -qa
- 모든 패키지 확인.
-
rpm -qa | grep 패키지명
- 설치여부 확인. 참고로 설치 여부를 확인할 수 있는
-q
옵션이 있지만, 전체 패키지 목록(-qa
옵션)에서 grep하여 보는 것도 한 방법이다.
-
rpm -ql 패키지경로
- 패키지 설치경로 확인.
-
rpm -ev 패키지명
- 패키지 제거.
-
rpm -Uvh 패키지명
- 패키지 업그레이드.
Flags
rpm에서 사용할 수 있는 옵션정보는 아래와 같다.
-
-i
:일반적인 설치. -
-U
:-i와 같이 일반적인 설치를 하지만, 기존에 그 패키지가 설치되어 있을 경우, 업그레이드 한다. -
-F
:이전버전이 설치되어있을 경우 설치한다. -
-v
:설치과정을 확인할 수 있다. -
-h
:설치 진행과정을 #마크로 출력한다. -
-q
:패키지가 설치되어있는지 확인. -
-qa
:설치된 모든 패키지 목록 출력. -
-qi
:설치된 패키지의 간략한 정보 출력. -
-ql
:설치된 패키지의 내용(위치)을 출력. -
-Vf
:현재 설치된 파일 검증. 문제가 없으면 '.'으로 표시됨. -
-Va
:한 패키지 검증. -
--force
:충돌 등을 무시하고 무조건 설치. -
--nodeps
:의존성 문제를 무시하고 설치.
Install RPMforge
- RPMforge rpm release list
- Centos 7.x : Rpmforge & Terminator
- YUM rpmforge 저장소 추가
- How to Enable RPMForge Repository in RHEL/CentOS 7.x/6.x/5.x
$ wget http://apt.sw.be/redhat/el7/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
$ rpm -Uvh rpmforge-release*rpm
Removing RPMforge Repository
remove rpmforge as package repository
Package repository
http://apt.sw.be/ 에서 확인하면 된다.
Linux Package management systems
APT (Synaptic, Ubuntu Software Center, KPackage, Adept Manager), aptitude, dselect | |
APT-RPM, up2date, urpmi (Rpmdrake), ZYpp, YUM, DNF | |
Others | Pacman, ipkg, opkg, PPM, Upkg, PISI, Conary, Portage, Entropy, slapt-get, slackpkg, netpkg, swaret |
Front-ends | PackageKit (GNOME Software, Apper), Autopackage, klik, Listaller, Zero Install |
Related topics | AppData, AppStream, Application Packaging, Package format |