본문 바로가기
IT/Linux

[Linux] 리눅스 RPM, YUM 다운로드및 패키지 사용법에 대해서

by harold88 2022. 6. 24.

 

프로그램 설치를 위한 패키지 RPM과 YUM

LINUX에서 RPM(Redhat Package Manager) 은  Windows의 Setup.exe 와 비슷한 설치 파일로 확장명은 *. RPM이며 이를 패키지라고 부릅니다. RPM 파일들은 리눅스가 기본적으로 설치되면서. ISO(DVD) 파일에 포함이 되어 있습니다.

 

패키지 Ex) zsh-5.0.2-31.el7.x86_64.rpm 

 

첫번째 zsh 부분은 패키지 이름이며, 두 번째 5.0.2-31 패키지 버전 정보, 그리고 세 번째 el7은 Enterprise Linix에 약자로 CentOS에서 배포된 7 버전을 표시한 것입니다. 마지막 x86_64 부분은 64비트 CPU라고 보시면 되겠습니다.  (ex :  i386-686 타입 일결 우 32비트 CPU, Src : 소스파일 C#,  noarch 모든 cpu )

 

자주 사용하게 되는 RPM 명령어 옵션

 

먼저 RPM 설치 명령어로는 rpm -Uvh 패키지 이름. rpm으로 진행이 가능합니다. U는(대문자)로 패키지가 설치되는 명령어, V는 설치 과정의 확인 옵션, h는 설치 진행과정을 "#을" 마크로 화면에 출력해 줍니다. 다음으로 삭제 명령어rpm -e 패키지 이름으로 삭제를 합니다. 

 

설치된 rpm 확인방법 rpm -qa 패키지 이름, rpm -qi 패키지이름 (rpm -qa | grep 패키지 이름) 확인 가능합니다.

 

 

하지만 앞서 알려드린 RPM 설치 명령어로 패키지 파일을 설치할 때 위 사진과 같이 Error: Failed dependencies 가 표시되면서 설치가 안 되는 경우가 많습니다 (의존성 문제). 쉽게 말하면 mysql-connector~~~ 패키지를 설치할 때 우선 설치되야할 패키지가 따로 있다는 메시지입니다. 이렇게 패키지들에 수가 많아지면서 설치시 발생되는 에러 메세지입니다. 이러한 문제가 자주 발생이 되면서 해결하기 위해 개발된 것이 바로 YUM(Yellowdog Updater Modifed)입니다. 

 

 

 

RPM을 수동으로 다운로드 후 설치방법

 

 

The world's open source leader

Red Hat is the world’s leading provider of open source solutions, using a community-powered approach to provide reliable and high-performing cloud, virtualization, storage, Linux, and middleware technologies. Red Hat also offers award-winning support, tr

www.redhat.com

 

DVD, ISO 파일을 마운트 하기 힘든 경우나 설치 시 수동으로 다운로드할 때에는 레드햇 공식 홈페이지에 접속 후 다운로드하는 방법도 있습니다.

 

 

왼쪽 상단에 패키지 이름 검색 아키텍처 부분에  X86_64 (64비트) 클릭!

 

버전 정보를 확장시켜 자신의 리눅스(패키지) 버전과 동일하게 맞춰서 선택해줍니다.

 

 

첫 번째 RPM 패키지 리스트, 지금 다운로드로 linux로 환경으로 넘겨서 수동으로 패키지 설치도 가능합니다.

 

LINUX - YUM 개념

 

앞서 설명드린 것처럼 RPM의 의존성 문제로 YUM을 사용하게 되는데, YUM의 경우 기본적으로 네트워크가 가능한 상태에서 서버에서 다운로드하는 방식으로 설치가 진행됩니다. 

 

YUM 설치방법

설치방법으로는 yum install -y 패키지 이름으로 사용됩니다. 이렇게 RPM 단점인 Dependencies 문제를 자동으로 해결해주면서 설치가 진행됩니다.

 

 

yum info netcat 명령어로 설치된 패키지 정보를 확인할 수 있습니다.

 

삭제 방법으로는 yum remove -y  패키지 이름으로 삭제가 가능합니다. 더 많은 rpm과 yum 명령어는 추가 포스팅으로 한 번 더 설명드리겠습니다.

댓글