주제 : yum
yum은 Yellowdog Updater Modified 의 약자로 rpm 기반의 시스템(redhat계열) 을 위한
자동 업데이터이자 패키지를 설치/삭제도구이다.
yum 은 자동적으로 의존성을 처리해주며 rpm 패키지들을 안전하게 설치, 삭제 및
업데이트하기 위해 반드시 해야할 이들을 스스로 해결한다.
또한 yum 은 이미 설치되어 있거나 혹은 저장소에 설치가능한 패키지에 관한 정보를
효율적이고 쉽게 검색해 온다.
yum 은 rpm 이나 다른 도구들처럼 일일이 수동으로 업데이트할 필요가 없으므로 수 많은
시스템들을 더욱 관리하기 쉽게 해준다.
yum 으로 update 할 경우 커널을 제외한 나머지 패키지들은 모두 삭제 및 업데이트를 할수 있다.
커널의 경우는 업데이트를 하더라도 계속 쌓이게 된다.
yum 을 사용하여 install 하거나 update 할 경우 저장소라는 곳에서 해당 rpm파일을 다운 받은 후
설치하게 된다.
패키지 파일을 다운받아 임시로저장하는 위치는 /var/cache/yum 하위 디렉토리이다.
===============================================================================
LAB> yum 사용법
# yum | grep -30
===============================================================================
===============================================================================
LAB> yum 전체 패키지 리스트(단일패키지)
# yum list
===============================================================================
===============================================================================
LAB> yum 전체 패키지 그룹 리스트(그룹단위)
# yum grouplist
===============================================================================
===============================================================================
LAB> yum 을 이용한 패키지 설치 (단일패키지)
# rpm -qf /usr/bin/mc
# rpm -q mc
# rpm -e mc
# yum -y install mc
# which mc
# rpm -q mc
===============================================================================
===============================================================================
LAB> yum 을 이용한 패키지 삭제 (단일패키지)
# yum remove mc
# rpm -q mc
# which mc
===============================================================================
===============================================================================
LAB> yum 을 이용한 패키지그룹 설치 (그룹단위)
# LANG=C yum grouplist
# yum -y groupinstall "MySQL Database"
# rpm -q mysql
# rpm -q mysql-server
# /etc/init.d/mysqld start
# netstat -nltp
# mysql
mysql> show databases;
mysql> quit
# /etc/init.d/mysqld stop
# yum -y groupremove "MySQL Database"
===============================================================================
===============================================================================
LAB> yum 을 이용한 업데이트 테스트
!!! 커널은 업데이트를 하면 이전 커널은 삭제하지 않는다.
!!! 커널이 아닌 일반 애플리케이션들은 업데이트를 하면 자동으로 이전 파일들은
!!! 없어지고 새로 설치한 패키지의 파일이 대체가 된다.
# rpm -q coreutils
coreutils-5.97-34.el5
# rpm -q kernel
kernel-2.6.18-308.el5
kernel-2.6.18-402.el5
# yum -y update coreutils > /dev/null 2>&1
# rpm -q coreutils
coreutils-5.97-34.el5_8.1
# uname -a
Linux localhost.localdomain 2.6.18-308.el5 #1 SMP ...
# reboot
- 새로운 커널로 부팅을 했다면 이전 커널은 확인해서 필요없다면 삭제하는 것이 좋다.
# uname -a
Linux localhost.localdomain 2.6.18-402.el5 #1 SMP ...
# rpm -e kernel-2.6.18-308.el5
# rpm -q kernel
kernel-2.6.18-402.el5
===============================================================================
===============================================================================
LAB> yum 을 이용한 단일 패키지 설치하기
!!!
!!! - 패키지명을 정확하게 알지 못하면 아래 -q 옵션을 사용하면 안된다.
!!! # rpm -q core
!!! package core is not installed
!!!
!!! - -qa 옵션을 사용해서 전체 패키지를 검사한 후 파이프로 grep 이
!!! - 잡을 수 있도록 넘겨야 한다.
!!! # rpm -qa | grep core
!!! svrcore-4.0.4-3.el5
!!! policycoreutils-1.33.12-14.8.el5
!!! coreutils-5.97-34.el5_8.1
# ifconfig
# route -n
# cat /etc/resolv.conf
VBox 이더넷연결 확인
-
# ping -c 2 kr.yahoo.com <-- 인터넷 연결 확인
# yum -y install vim-enhanced <-- vim-enhanced 패키지 설치
# rpm -qa | grep cvs <-- 전체 설치된 패키지에서 cvs 만 검색
cvs-1.11.22-11.el5
# yum -y remove cvs <-- 설치된 cvs 패키지 삭제
# yum -y install cvs <-- 삭제된 cvs 패키지 설치
===============================================================================
===============================================================================
LAB> yum 을 이용한 그룹 패키지 설치하기
# yum -y grouplist
# yum -y groupinstall "패키지 그룹명"
ex) yum -y groupinstall "Development tools"
===============================================================================
===============================================================================
LAB> yum 을 이용한 그룹 패키지 삭제하기
# yum -y groupremove "패키지 그룹명"
ex) yum -y groupremove "Development tools"
===============================================================================
===============================================================================
LAB> yum 을 이용한 패키지 검색하기
# yum search httpd
===============================================================================
===============================================================================
LAB> yum 을 이용한 업데이트 확인하기
# yum check-update
===============================================================================