리눅스 RPM 설치 명령어
■ 개요
리눅스에서 일반적인 설치할 경우,
소스 파일을 통한 컴파일을 하거나 RPM 패키지 파일을 통해 설치를 하는 방법이 있습니다.
소스 파일을 통한 컴파일을 하거나 RPM 패키지 파일을 통해 설치를 하는 방법이 있습니다.
소스 컴파일 방식은 저와 같은 초급적인 지식으로 설치를 할 경우, 일부 에러를 나타내어
이것을 해결 할 방법을 찾아내어도 또 다른 문제점이 발견되어 그에 따른 시간을 많이 소비하게 합니다.
이것을 해결 할 방법을 찾아내어도 또 다른 문제점이 발견되어 그에 따른 시간을 많이 소비하게 합니다.
현재 다양한 리눅스의 종류에 맞게 미리 패키징된 프로그램을 다시 재배포하여 설치하는 방식을 사용하고 있습니다.
이러한 재배포 패키지 중 대표적인 적이 RPM 패키징 파일입니다.
이러한 재배포 패키지 중 대표적인 적이 RPM 패키징 파일입니다.
(설치하는 법에 대해서 간단히 비교하자면 소스 컴파일과 압축되어 있는 파일을 푸는 것의 중간 정도의 개념으로 생각하시 됩니다.)
* 아래 설명은 http://www.asianux.co.kr / 홈페이지에 있던 이전 글을 참고 하였습니다.
■ RPM 설명
RPM ( Redhat Package Manager )
처음 레드헷에서 패키지의 설치 및 관리를 위해 만든 프로그램 관리자입니다.
처음 레드헷에서 패키지의 설치 및 관리를 위해 만든 프로그램 관리자입니다.
(구성) 패키지이름-버전-릴리즈-아키텍처.rpm
예) samba-3.0.24-1.i386.rpm
예) samba-3.0.24-1.i386.rpm
- 패키지 이름 : 해당 프로그램의 이름입니다. (예) apache, kernel, samba 등
- 버전 : 패키지 개발에 따른 업데이트 마다 증가되는 번호입니다.
- 릴리즈 : 해당 제품을 패키징하는 횟수입니다. 패치 및 패키징 등을 수행할때마다 번호가 증가되며 앞서 패키징한 것들과의 차이를 나타냅니다.
- 아키텍처 : 최근 여러 종류의 아키텍처 제품이 나옴에 따라 이를 구분하는 명칭이다. (예) i386 / x86_64 / ppc / ia64 등
- 버전 : 패키지 개발에 따른 업데이트 마다 증가되는 번호입니다.
- 릴리즈 : 해당 제품을 패키징하는 횟수입니다. 패치 및 패키징 등을 수행할때마다 번호가 증가되며 앞서 패키징한 것들과의 차이를 나타냅니다.
- 아키텍처 : 최근 여러 종류의 아키텍처 제품이 나옴에 따라 이를 구분하는 명칭이다. (예) i386 / x86_64 / ppc / ia64 등
■ RPM 배포
주로 패키지를 개발하는 곳의 홈페이지에서 각 리눅스 버전에 맞게 배포를 하고 있습니다.
또는 http://www.rpmfind.net 에서 검색을 통해서 구하실 수 있습니다.
또는 http://www.rpmfind.net 에서 검색을 통해서 구하실 수 있습니다.
■ RPM 명령 사용방법
1. RPM 설치
- 설치 (-i)
신규 패키지를 설치하는 명령입니다.
현재 시스템에 설치되어 있지 않은 패키지를 설치하고자 하는 경우 사용합니다.
[root@wind samba]# rpm -i samba-3.0.24-1.i386.rpm
신규 패키지를 설치하는 명령입니다.
현재 시스템에 설치되어 있지 않은 패키지를 설치하고자 하는 경우 사용합니다.
[root@wind samba]# rpm -i samba-3.0.24-1.i386.rpm
- 업그레이드 (-U)
패키지를 업그레이드 합니다.
현재 시스템에 설치되어 있는 패키지를 상위 버전으로 업그레이드 하는 경우 사용합니다.
[root@wind samba]# rpm -U samba-3.0.24-1.i386.rpm
패키지를 업그레이드 합니다.
현재 시스템에 설치되어 있는 패키지를 상위 버전으로 업그레이드 하는 경우 사용합니다.
[root@wind samba]# rpm -U samba-3.0.24-1.i386.rpm
- 부가 옵션들
--nodeps : 의존성 관계에 있는 다른 패키지가 설치 되어 있지 않다고 해도 강제로 설치합니다.
--force : 버전을 무시하고 강제로 설치합니다. (하위버전으로 다운그레이드 시에 적용할 수 있습니다.)
[root@wind samba]# rpm -U --nodeps samba-3.0.24-1.i386.rpm
[root@wind samba]# rpm -U --nodeps samba-3.0.24-1.i386.rpm
일반적으론 i 보다는 U 로 업그레이드 설치를 권장하며 vh 옵션으로 설치되는 모습을 자세히 보여줍니다.
[root@wind samba]# rpm -Uvh samba-3.0.24-1.i386.rpm
[root@wind samba]# rpm -Uvh samba-3.0.24-1.i386.rpm
2. RPM 제거
- 제거 (-e)
패키지를 삭제합니다. 현재 시스템에 설치되어 있는 패키지를 삭제하는 경우 사용합니다.
[root@wind samba]# rpm -e samba-3.0.24-1.i386.rpm
패키지를 삭제합니다. 현재 시스템에 설치되어 있는 패키지를 삭제하는 경우 사용합니다.
[root@wind samba]# rpm -e samba-3.0.24-1.i386.rpm
- 부가 옵션들
--test : 실제로 삭제하지 않고 삭제되는지 테스트만 합니다.
--nodeps : 의존성에 관여하지 않고 지우는 옵션입니다.
(주의! 의존성이 있는 다른 패키지의 필요한 파일들도 삭제되어 실행이 안되는 경우가 있습니다.)
(주의! 의존성이 있는 다른 패키지의 필요한 파일들도 삭제되어 실행이 안되는 경우가 있습니다.)
--allmatches : rpm 이 중복 설치되어 있을때 해결합니다.
[root@wind samba]# rpm -e samba --allmatches
[root@wind samba]# rpm -e samba --allmatches
--noscript : rpm 이 스크립트 에러로 인해서 지워지지 않을때 지워줍니다.
[root@wind samba]# rpm -e samba --noscript
3. RPM 조회
- 조회 (-q)
rpm 패키지의 설치 상태 및 패키지의 구성에 대한 여러가지 조회를 할 때 사용한다.
rpm 패키지의 설치 상태 및 패키지의 구성에 대한 여러가지 조회를 할 때 사용한다.
- 패키지 설치 유무 확인 (-qa)
[root@wind samba]# rpm -qa | grep samba
[root@wind samba]# rpm -qa | grep samba
- 패키지에 포함된 파일 목록 (-ql)
[root@wind samba]# rpm -ql samba
[root@wind samba]# rpm -ql samba
- 해당 파일이 포함되어 있던 패키지 목록 (-qf)
[root@wind samba]# rpm -qf /usr/bin
[root@wind samba]# rpm -qf /usr/bin
- /etc/ 밑에 설치 되는 설정파일만 알아 봅니다. (-qc)
[root@wind samba]# rpm -qc samba
[root@wind samba]# rpm -qc samba
- 패키지 일반 정보 (-qi)
[root@wind samba]# rpm -qi samba
[root@wind samba]# rpm -qi samba
- 아직 설치하지 않은 패키지에 대한 정보를 알아보고자 하는 경우 p 옵션을 추가합니다.
[root@wind samba]# rpm -qpl samba-3.0.24-1.i386.rpm
[root@wind samba]# rpm -qpl samba-3.0.24-1.i386.rpm
- 패키지 목록에 대해서 자세한 정보를 봅니다. (-qlv)
[root@wind samba]# rpm -qlv samba-3.0.24-1.i386.rpm
[root@wind samba]# rpm -qlv samba-3.0.24-1.i386.rpm
- 패키지 목록에 대해서 자세한 정보를 봅니다. (-qcf)
[root@wind samba]## rpm -qcf samba-3.0.24-1.i386.rpm
[root@wind samba]## rpm -qcf samba-3.0.24-1.i386.rpm
- 부가 옵션
-q --requires : 패키지가 필요한 모듈 알아봅니다.
-q --whatrequires : 의존성 걸린 패키지를 알아봅니다.
-q --whatprovides module-info : 모듈이 설치 되어 있는 패키지 인지 알아봅니다.
-q --script : 패키지가 설치되기 전/후에 실행되는 스크립트를 알아봅니다.
-q --queryformat : 패키지의 정보는 알아볼떄 문자열을 출력해줍니다
댓글 없음:
댓글 쓰기