강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

RPM 패키지 질의(Query) 기능

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

RPM 패키지 질의(Query) 기능

 

 

RPM 패키지가 어떤 정보를 가지고 있는지에 대해 사용자들이 질의를 할 수 있는 기능이다.

 

 

 

 

주로 패키지의 역할과 패키지에 포함된 파일에 대한 정보를 확인해 보는 것이 주된 역할이다.

 

 

 

 

 

모든 RPM의 질의 기능은 -q 옵션을 통하여 질의하게 된다.

 

 

 

 

다음의 예는 bmp라는 패키지가 가지고 있는 정보에 관한 것이다.

 

 

 

 

RPM 파일의 정보 중에서 패키지 정보를 출력하도록 하는 추가 옵션으로 i를 붙인다.

 

 

 

 

출력되는 화면에 프로그램의 명칭, 제작자, 설치된 시간, 프로그램의 사용 목적에 대한 내용이 일목요연하게 잘 표현되어 있다.

 

 

 

 

 

 

 

 

 

 

[root@sulinux ~]# rpm -qi xz

Name : xz Relocations: (not relocatable)

Version : 4.999.9 Vendor: CentOS

Release : 0.3.beta.20091007git.el5 Build Date:

Install Date: Build Host: builder10.centos.org

Group : Applications/File Source RPM: xz-4.999.9-0.3.beta.20091007git.el5.src.rpm

Size : 484455 License: LGPLv2+

Signature : DSA/SHA1, 20100427() 오전 084206, Key ID a8a447dce8562897

URL : http://tukaani.org/xz/

Summary : LZMA compression utilities

Description :

XZ Utils are an attempt to make LZMA compression easy to use on free (as in freedom) operating systems. This is achieved by providing tools and libraries which are similar to use than the equivalents of the most popular existing compression algorithms.

 

LZMA is a general purpose compression algorithm designed by Igor Pavlov as part of 7-Zip. It provides high compression ratio while keeping the decompression speed fast.

[root@sulinux ~]#

 

 

 

 

 

 

 

다음에는 질의 옵션을 구성하는 방법에 대해 자세하게 알아보겠다.

 

 

 

 

우선 무엇에 대하여 질의를 할 것인가를 정하고 무엇을 알아볼 것인가에 대한 옵션을 구성해야 한다.

 

 

 

 

이때 RPM 질의 기능 중 무엇에 대하여 질의를 할 것인가에 대해 다음 두 가지로 분류하여 사용할 수가 있다.

 

기 능

형 식

이미 설치되어진 패키지에 대한 질의를 할 때 사용한다.

rpm q.. package_name

아직 설치되지 않은 rpm 파일에 대하여 질의할 때 사용한다.

 

 

 

 

 

rpm qp.. package_file_name

 

 

 

다음으로 패키지의 정보 중 무엇을 알아볼 것인가에 대한 옵션을 구성해야 한다.

 

 

 

 

이 옵션은 앞서 나온 도표의 옵션과 붙여서 사용한다.

 

 

 

 

만약 설치되어 있는 bmpRPM 파일에 어떠한 파일이 들어 있는지 알아보려면 다음과 같이 옵션을 구성하고 테스트를 한다.

 

 

 

 

 

 

 

[root@sulinux util]# rpm -qpl bmp-0.9.7-4hsAX.i386.rpm

/root/Desktop/beep_media_player.desktop

/usr/bin/beep-media-player

/usr/lib/bmp

/usr/lib/bmp/Input

/usr/lib/bmp/Input/libcdaudio.so

/usr/lib/bmp/Input/libmpg123.so

/usr/lib/bmp/Input/libvorbis.so

/usr/lib/bmp/Input/libwav.so

/usr/lib/bmp/Output

/usr/lib/bmp/Output/libOSS.so

/usr/lib/bmp/Output/libesdout.so

/usr/lib/bmp/Visualization

/usr/lib/bmp/Visualization/libbscope.so

/usr/lib/libbeep.so.2

/usr/lib/libbeep.so.2.0.0

/usr/share/applications/bmp.desktop

 

 

 

 

 

 

 

주로 사용되는 옵션 중 한 가지는 특정 파일이 어떤 패키지에서 설치되었는가를 알아보는 것이다.

 

 

 

 

이때에는 다음과 같이 패키지의 정보를 알아보는 옵션에 f를 삽입하여 준다.

 

 

 

 

 

 

 

 

 

 

[root@sulinux ~]# rpm qf /bin/ls

coreutils-8.4-31.el6.centos.x86_64

 

 

 

 

 

 

 

-q 옵션에 추가 옵션으로 a 옵션을 붙이면 전체 rpm 패키지 목록이 출력된다.

 

 

 

 

리눅스에는 많은 패키지가 존재하므로, 이런 경우에는 이를 페이지별로 끊어서 출력, 특정 결과만 출력, 파일로 저장 등의 방법을 취하는 것이 좋다.

 

 

 

 

이를 위해 질의 기능과 함께 파이프(|)more, grep 등의 다른 명령어를 조합하여 사용할 수 있다.

 

 

 

 

다음은 많이 사용되는 간단한 예제이다.

 

 

 

 

 

 

 

# rpm -qa | grep [패키지명]

 

 

 

 

 

 

 

또한 RPM 패키지의 모든 패키지에 대하여 정보를 파악하고 싶을 때에는 질의 옵션으로 모든 파일에 질의/검증하도록 하는 a를 붙여 준다.

 

 

 

 

이에 더해 RPM 패키지로 이루어진 모든 패키지의 정보를 출력하도록 하는 옵션으로 i를 붙인다.

 

 

 

 

이것은 그 결과가 너무 많으므로 다음과 같이 출력 내용을 파일로 저장하도록 한다.

 

 

 

 

 

 

 

[root@sulinux ~]# rpm qai > rpm_all_info.txt

 

 

 

 

 

 

 

다음은 RPM의 질의 기능과 같이 사용되는 옵션들이다.

 

옵 션

기 능

무엇에 대하여 질의 할 것인가? (패키지 선택 옵션)

-a

모든 패키지에 대하여 질의 기능 수행

-whatrequires <기능>

특정 패키지가 동작하기 위하여 필요로 하는 패키지들에 대하여 질의 수행

-whatprovides <가상>

<가상(virtual)> 기능을 제공하는 모든 패키지에 대하여 질의 수행

파일을 포함하는 패키지에 대하여 질의 수행

-f <file name>

-f 와 비슷. 그러나 파일 이름 입력을 표준 입력에서 받음

-F

패키지 파일에 대하여 질의 수행

-p <패키지 파일>

-p 와 내용은 같지만 패키지 이름 입력을 표준 입력에서 받음

-p

어떤 정보에 대하여 질의를 할 것인가? (정보 선택 작업)

-i

패키지에 관한 각종 정보를 보여준다.

-R

패키지가 의존하고 있는 패키지 목록을 보여준다.

--provides

패키지가 제공하는 기능을 보여준다.

-l

패키지 안의 파일을 보여준다

-s

패키지 안의 파일의 상태를 보여준다.

-d

문서 파일만 보여준다 ( -l 과 같이 쓰인다.)

-c

설정 파일만 보여준다.

--scripts

패키지 설치, 제거 과정에서 시행되는 쉘 스크립트를 확인한다.

--dump

경로 크기 수정일, MD5 체크섬, 모드, 소유자, 그룹, 설정 파일 여부, 문서 파일 여부, rdev, 심볼릭 링크 여부 같은 파일 정보를 덤프한다.

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,037 명
  • 현재 강좌수 :  35,810 개
  • 현재 접속자 :  82 명