yum 사용법

YUMYellowdog Updater, Modified의 약자로서 GNU GPL(General Public License:일반 공중 라이센스)를 가지는 open-source command-line package-management utility for RPM-compatible Linux operating systems이다.

사용자들이 Windows에 비해서 Linux에 대해 갖는 가장 큰 어려움은 아마도 새로운 S/W를 설치하는 것이다.

source code를 다운로드 받아서 ./configure && make && make install과 같은 절차로 S/W를 설치하는 것에 대부분의 사용자들은 강한 거부감과 어려움을 느끼기 마련이다.

이러한 문제점을 해결하기 위해서 RPM (Redhat Package Manager)와 같은 패키지 배포 및 관리 시스템이 등장했지만 패키지들 간의 의존성 문제로 인해 설치가 간단하게 해결안되는 문제가 종종 발생한다.

(이를테면, a.rpm을 설치하려고 했는데, a.rpm에서 필요로 하는 패키지인 b.rpm이 설치 안되어 있어서 a.rpm의 설치가 실패하고, 그래서 b.rpm을 설치하려고 했더니 b.rpm을 위해서는 c.rpm이 필요하다고 나오고 … 뭐 이런 시츄에이션…)

이러한 문제점들은 단박에 해결하여 쉽고 깔끔하게 설치를 해결해주는 툴이 바로 yum이다.

YUM을 이용하면 특정 패키지를 설치할 때, 의존성이 있는 다른 패키지들을 자동으로 먼저 설치해준다.

패키지들간의 의존성 문제를 자동으로 해결해주기 때문이다.

물론 여기서 언급하고 있는 YUM과 RPM은  RedHat 계열의 Linux (RedHat, Fedora, CentOS 등)에서만 사용 가능하다.

저장소(repository)들의 URL은 /etc/yum.repos.d에 설정되어 있다. vi 에디터 등을 이용하여 열람 및 수정이 가능하다.

YUM의 기본적인 사용법은 다음과 같다.

[설치]
yum install <패키지 이름>
: 지정한 이름의 패키지를 설치함.

yum -y install<패키지 이름>
: 설치 과정에서 물어보는 yes or no 질문에 자동으로 모두 yes로 답하여 설치를 진행함.

[질의]
yum list
: 설치되어 있지 않지만 YUM을 통해 설치 가능한 패키지 목록 출력함.

yum list installed
: 설치되어 있는 패키지 목록 출력함.

yum list installed | grep <검색어>
: 설치되어 있는 패키지들 중에서 지정한 지정한 검색어를 포함한 것들만 출력함.

yum info <패키지 이름>
:지정한 이름의 패키지에 대한 정보를 출력함.

[업데이트]
yum check-update
: 설치되어 있는 패키지들 중에서 업데이트 가능한 목록 출력함.

yum update <패키지 이름>
: 지정한 이름의 패키지를 업데이트함.

yum update
: 설치되어 있는 모든 패키지를 업데이트함.

[제거]
yum remove <패키지 이름>
: 지정한 이름의 패키지를 제거함.

YUM을 이용하여 패키지를 설치하게 되면 /var/cache/yum 하위 디렉토리(예를 들면, /var/cache/yum/extras/packages)에 rpm 파일을 다운로드 받아 설치하게 된다. 설치가 끝나면 해당 rpm 파일은 자동 삭제된다.

만약 YUM을 이용하여 rpm 파일을 다운로드 받고 싶다면 다음과 같이 하면 된다.
우선 yum-downloadonly라는 plug-in을 설치해주어야 한다.

yum install yum-downloadonly

이 plug-in을 설치해주면, yum에 –downloadonly와 –downloaddir과 같은 플래그 옵션을 줄 수 있게 된다.
사용법은 다음과 같다.

yum install -y –downloadonly –downloaddir=/opt

또 다른 방법은 yumdownloader를 이용하는 것이다.
이 방법을 이용하려면 yum-utils.noarch 패키를 우선 설치해 주어야 한다.

yum install yum-utils 또는 yum install yum-utils.noarch

사용법은 yumdownloader <패키지 이름> 이다.

답글 남기기