- YUM 패키지 관리
[명령어 형식]
# yum [options] COMMAND
# yum --help /* 옵션들 모두 확인 할 수 있다. yum 옵션도 많아 자주 사용하는 것을 골라 몇개만 정리 필요한건 그때 찾아서 쓴다*/
(명령어 사용예)
확인
# yum list (# yum list all) yum repository /* 내가 설치된것과 제공중인 패키지 모두 출력 */
# yum list installed 설치된거
# yum list available 설치되지 않은거
업그레이드( 버전 업) 업데이트 ( 기존의 정보 변경 )
설치
# yum -y update / * 설치된거 모두 업데이트
# yum -y update php /* php 만 업데이트 rpm -Fvh 와 비슷
# yum -y install php / * rpm -Uvh 와 비슷
# yum -y localinstall php.rpm /* 로컬에 있을 때 yum으로 설치 */
삭제
# yum (erase|remove) php
[참고] CentOS 5.5 YUM
2017년 3월 31일 부터 Centos 5.x 버전은 기본포리지토리에 설정 되어 있는 http://mirror.centos.org 가 정상적으로 작동 하지 않아 아래와 같은 조치 후 yum을 사용 해야 한다.
기본 레포지토리를 mirrorlist.centos.org 사이트에서 vault.centos.org 변경
# yum list
-> 실행되지 않을겁니다.
# cd /etc/yum.redos.d/
-> 설정파일이 들어있는 디렉토리로 이동
# ls
CentOS-Base.repo 을 적절히 수정해서 사용할 수 있지만 연습으로 새로운 repo 파일을 만들어 설정해보겠습니다.
# vi CentOsS-Base.repo
........... (중략) ............ [base] name=CentOS-$releasever - Base mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 enabled=0 #released updates [updates] name=CentOS-$releasever - Updates mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates #baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 enabled=0 #packages used/produced in the build but not released [addons] name=CentOS-$releasever - Addons mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons #baseurl=http://mirror.centos.org/centos/$releasever/addons/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 enabled=0 #additional packages that may be useful [extras] name=CentOS-$releasever - Extras mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras #baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 enabled=0 #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$releasever - Plus mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus #baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 .......( 중략) .... |
-> 이 파일의 설정은 사용하지 않을기에 enabled=0을 각 문단마다 입력합니다.
vi에디터에서 복사(yy) 붙혀넣기 (p)
-> 맨위의 [Base] 문단을 복사해 둡니다.
# vi CentOS-Media.repo
-> 마찬가지로 enabled=0 으로 설정합니다. 아마 이미 설정 되어있을겁니다. 확인
# vi linux220.repo /* 이름은 별 의미 없습니다. 형식( .repo) 꼭 써야합니다.*/
-> 위에서 복사했던 [Base] 문단을 붙여넣습니다. 다음과 같이 수정합니다.
[linux220] name=CentOS-$releasever - Base #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os baseurl=http://vault.centos.org/5.5/os/i386/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 enabled=1 |
# yum clean all
# yum repolist
# yum list
( 일단 5.5 버전의 32비트 패키지 파일들이 있는 폴더만을 참조합니다. 완전히 설정하는 방법은 아래에 )
- 업데이트 시뮬레이션
# yum check-update /* 업데이트 해야하는 목록 보여줌 */
[참고] 업데이트 후 재부팅 해야하는가?
# yum check-update | grep kernel
드라이버나 커널이 업데이트가 된다면 재부팅 해야한다.
- CD 내용으로 yum 설치
CD는 마운트 되어있다고 가정한다. ( Software 관리_RPM 참고)
# cd /media/CentOS_5.5_Final/CentOS
# ls emacs* /* emacs 라는 패키지를 예로 사용했다. */
............. emacs-21.4-24.el5.i386.rpm .............
# yum -y localinstall emacs-21.4-24.el5.i386.rpm
-> 설치되지 않는다면 이것은 CD 안에 들어 있는 패키지가 현재 시스템에 설치된 패키지의 버전보다 낮기 때문이다.
-> 따라서 한번 업데이트가 된 이후에는 반드시 yum site 사용해서 업데이트하거나 혹은 높은 버전의 CD를 가지고 업데이트를 해야 한다.
- CD를 임시적인 yum site로 구성
yum을 구성할때 사용했던 .repo 설정파일을 /media/CentOS_5.5_Final 로 설정하면 사이트가 아는 CD를 참조해서
다운받는다.
# cd /etc/yum.repos.d
# vi iso.repo
[linux220] name=CentOS-$releasever - Base #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os baseurl=file:///media/CentOS_5.5_Final /* ' / ' 개수 유의 */ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 enabled=1 |
-> 기존에 설정했던 linux220.repo 의 enabled는 0으로 설정
- YUM Site 구성하기
CD에 있는 내용을 내 서버에 옮겨서 내 서버가 YUM Site가 된다.
CD ( /media/CentOS_5.5_Final/* ) -> /var/ftp/pub/CentOS55/DVD
CD는 마운트 되어있다고 가정
# mkdir-p /var/ftp/pub/CentOS55/DVD
# cd /media/CentOS_5.5_Final
# cp -a * /var/ftp/pub/CentOS55/DVD
# createrepo /var/ftp/pub/CentOS55 /* YUM Repository 생성 */
[참고] createrepo.noarch 설치
# yum -y install createrepo.noarch
# cd /etc/yum.repo.d/
# vi CentOS.repo
[ce55]
name=CentOS5.5
baseurl=file:///var/ftp/pub/CentOS55
gpgcheck=0 /* gpgkey는 일단 지웠다. 다음에 설명 */
enabled=1
# yum clean all
# yum repolist
# yum list
# rpm -qa | grep vsftpd /* ftp 패키지 설치 확인 */
# service vsftp restart /* ftp 서비스 실행 */
# firefox ftp://IP/pub/Centos55
----- 내 서버가 YUM Repository 가 된다 ----------
-Client-
클라이언트는 내 서버의 IP를 .repo 설정 화일에 추가하면 내 서버에서 yum 서비스를 받아 쓸 수 있다.
# vi CentOS55.repo
[CentOS55]
name=CentOS5.5
baseurl=ftp://172.168.XXX.XXX/pub/CentOS55 /* 서버 IP를 적으시면 됩니다. */
gpgcheck=0
enabled=1
# yum clean all
# yum list
[ YUM Repository ]
- server
WEB : /var/www/html/centos55
-> http://IP/centos55
FTP : /var/ftp/pub/centos55
-> ftp://IP/pub/centos55
CD : /media/CentOS_5.5_Final
-> file:///media/CentOS_5.5_Final
Local : /export/centos55
-> file:///export/centos55
- 그룹패키지 설치
패키지 하나를 다운받을때 많은 것들이 함께 받아져야한다면 그것을 그룹으로 묶어 한꺼번에 다운받는다면 더 편하게 사용할수 있을것이다.
그룹은 간단하게 그런 패키지들을 모아놓은것이라고 생각하면된다.
[명령어 형식]
# yum groupinstall <group>
# yum groupupdate <group>
# yum grouplist
# yum groupinfo <group>
# yum groupremove <group>
패키지 그룹 목록 확인
# yum grouplist
[예] xen 설치
Xen은 윈도우에서 VMware Workstation과 같은 기능을 한다. ( PC용 버전)
[참고] KVM ( VMware Esxi 와 비슷 - Server 용 버전 )
# yum groupinstall Xen /* 대소문자 구분을 잘 해줘야한다. */
# yum grouplist /* Xen이 설치 목록에 올라왔는지 확인한다. */
#reboot
xen은 재부팅하고 켜질때 Xen Kernel 로 부팅해야한다.
부팅시 <enter>키를 누르고 xen kernel 선택
[예] eclipse 설치
# yum -y groupinstall Eclipse /* 설치 */
# yum grouplist /* 설치 확인*/
# eclipse &
삭제
# yum groupremove Xen
# yum groupremove Eclipse
- 운영체제 전체 업데이트
# uname -a /* 현제 버전 확인 */
Linux linux220.example.com 2.6.18-194.el5 #1 SMP Fri Apr 2 14:58:35 EDT 2010 i686 i686 i386 GNU/Linux
# cat /etc/redhat-release
CentOS release 5.5 (Final)
# yum -y update
업데이트 목록이 없다고 뜰겁니다.
이유는 linux220.repo 파일에 http://vault.centos.org/5.5/os/i386/ -> 5.5 버전의 os 32bit 폴더만 참조하고 있기 때문이다.
이제 완전히 설정하는 방법으로 다시 설정해준다.
# vi CentOS-Base.repo
-> 다운받아 내용 붙여넣기어 사용하세요.
기본 레포지토리를 mirrorlist.centos.org 사이트에서 vault.centos.org 변경하는 방법인대 위와 달리 최신 5.11 버전을 받아옵니다.
-> 기존에 있던 linux220.repo 는 enabled=0 설정합니다.
# yum clean all
# yum repolist
# yum list
# yum check-update
-> 업데이트 목록이 나옵니다. 5.5 버전에서 .11 버전으로 업데이트 되므로 시간이 좀 걸립니다.
업데이트 확인
'Linux > Linux Server' 카테고리의 다른 글
부팅과정 (0) | 2017.09.04 |
---|---|
Software 관리_Source file (0) | 2017.09.01 |
Software 관리_RPM (0) | 2017.08.31 |
SWAP (0) | 2017.08.31 |
RAID (0) | 2017.08.30 |