Information Security

22-2 소프트웨어(패키지) 관리하기 - YUM 본문

Linux

22-2 소프트웨어(패키지) 관리하기 - YUM

leeeeye321 2017. 10. 16. 16:45

YUM(Yellowdog Updater Modifieir)

-rpm 기반의 패키지 관리 도구로 의존성 문제를 자동으로 해결한다.

-패키지를 분석(Resolving)하여 시스템에 설치된 패키지의 버전과 저장소에 위치한 패키지의 버전을 비교하여 자동으로 업데이트를 진행한다.

-설치 가능한 패키지에 대한 정보를 가지고 있는 저장소(Repository)를 가지고 있다.
-패키지를 저장하고 있는 CD 이미지 파일이나 네트워크가 연결되어 있어야 사용이 가능한 명령어

 

#yum [옵션] [명령] [패키지명]

-y    설치 과정에 출력되는 모든 질문에 yes 대답

 

[명령]

install    패키지 설치

update    패키지 업데이트

check-update    패키지 업데이트 여부 확인

remove    패키지 삭제(#rpm -e)

list    패키지 목록 확인

 list all    이미 설치되어 있거나 설치 가능한 패키지 목록 출력

list available    저장소에서 설치 가능한 패키지 목록 출력

list update    업데이트가 가능한 패키지 목록만 출력

list installed    이미 설치된 패키지 목록 출력(#rpm -qa)

info    패키지 정보 확인(#rpm -qi)

localinstall (#rpm -ivh)

-패키지가 로컬에 위치해 있을 때 rpm 명령어 대신 사용할 수 있으며, 의존성 오류가 발생하면 자동으로 해결해주고 패키지를 설치

 

#yum search [문자열]    패키지명, 패키지의 정보에서 해당 문자열을 찾아 화면에 출력

#yum clean all    패키지 목록을 제거하여 다음 번 yum 명령어 실행 시 새로운 패키지 목록을 다운 받을 수 있도록 하는 명령어

 


 

그룹 패키지 설치

#yum groupinstall [그룹패키지명]

-특정 환경을 구성하기 위해서 필요한 패키지들을 그룹으로 묶어 설치할 수 있도록 만든 패키지

 

#yum grouplist    그룹 패키지 목록 확인

...

...

그룹 패키지 목록이 한글로 출력된다.

 

환경변수 LANG의 값이 한글로 설정되어 있다.

ex) #yum groupinstall 웹 서버

-> 설치가 되지 않는다.

-> 한글 패키지 명이고, yum 명령어는 여러 개의 패키지를 띄어쓰기로 구분하여 설치하기 때문이다.

 

환경변수 LANG의 값을 영어로 변경해준다.

 

...

...

다시 패키지 목록을 확인해보면 영어로 출력된다.

#yum groupinstall 명령어에서 그룹 패키지명을 ""로 묶어주어 인자가 확장 해석되지 않도록 주의해야 한다.

 


 

패키지 목록 삭제

 

yum 명령어 설정 파일

1. /etc/yum.conf    yum 주 설정 파일

2. /etc/yum.repos.d/*.repo    저장소 정보가 저장되어 있는 파일

 

yum 명령어 동작 과정

1. yum 명령어 사용

 

2. 패키지를 다운받음 -> 패키지가 저장되어 있는 저장소의 주소를 찾기 위하여 /etc/yum.repos.d/*.repo 파일의 Baseurl 주소 확인

 

 

CentOS-Base.repo    CentOS 원본 패키지 저장소 정보가 저장되어 있는 파일

 

#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/

하지만, 주석 처리되어 있다. Baseurl은 사용하지 않는다.

 

3. mirrorlist에 명시된 주소로 연결되어 yum 명령어의 fastestmirror 플러그인에 의해서 가장 가까운 Repository 사이트의 URL 주소를 받아와 해당 저장소에서 패키지를 다운 받는다.

 

로컬 Repository 서버 구축

/etc/yum.repos.d/*.repo 파일 백업

 

 

[]    저장소 식별자

name    저장소의 이름

baseurl    패키지를 설치하거나 업데이트시 기본 저장소의 url 지정

 

패키지 목록 제거

 

...

...

yum 명령어 사용

-> yerim Repository 서버로 연결되는 것을 확인할 수 있다.