Redhat 기반의 Linux들은 Yum 패키지를 사용합니다.


근데 간혹 Yum으로 설치되는 패키지를 받고 싶을 때가 있을 것입니다.


저도 몰랐던 사실이기 때문에 오늘 이 방법에 대해 포스팅하고자 합니다.



설명전 yum으로 패키지를 설치할 때 패키지를 다운받게 됩니다.


물론 설치가 완료되면 삭제가 되지만요.


임시적으로 설치되는 디렉토리의 경로는 /var/cache/yum 입니다.






■ Yum 패키지 저장을 위한 준비


[root@seob /]# yum install yum-downloadonly

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

 * base: www.ftp.ne.jp

 * extras: ftp.nara.wide.ad.jp

 * updates: ftp.nara.wide.ad.jp

Setting up Install Process

Resolving Dependencies

--> Running transaction check

---> Package yum-downloadonly.noarch 0:1.1.16-21.el5.centos set to be updated

--> Finished Dependency Resolution


Dependencies Resolved


============================================================================================================================================================================================================================================

 Package                                                      Arch                                               Version                                                             Repository                                        Size

============================================================================================================================================================================================================================================

Installing:

 yum-downloadonly                                             noarch                                             1.1.16-21.el5.centos                                                base                                              13 k


Transaction Summary

============================================================================================================================================================================================================================================

Install       1 Package(s)

Upgrade       0 Package(s)


Total download size: 13 k

Is this ok [y/N]: y

Downloading Packages:

yum-downloadonly-1.1.16-21.el5.centos.noarch.rpm                                                                                                                                                                     |  13 kB     00:00     

Running rpm_check_debug

Running Transaction Test

Finished Transaction Test

Transaction Test Succeeded

Running Transaction

  Installing     : yum-downloadonly                                                                                                                                                                                                     1/1 


Installed:

  yum-downloadonly.noarch 0:1.1.16-21.el5.centos                                                                                                                                                                                            


Complete!


먼저 yum으로 패키지를 저장하기 위해서는 위 패키지를 다운받아주세요.


그러지 않을 경우 yum에 대한 옵션을 사용할 수 없습니다.



[root@seob /]# cd /home

[root@seob home]# ls

LETKF  LETKF.tar


현재 home 폴더안에는 LETFK.tar과 LETKF 폴더만 존재합니다.


테스트로 home 폴더안에 httpd 패키지를 저장하도록 하겠습니다.



[root@seob home]# yum install httpd --downloadonly --downloaddir=/home

Loaded plugins: downloadonly, fastestmirror

Loading mirror speeds from cached hostfile

 * base: www.ftp.ne.jp

 * extras: ftp.nara.wide.ad.jp

 * updates: ftp.nara.wide.ad.jp

Setting up Install Process

Resolving Dependencies

--> Running transaction check

---> Package httpd.x86_64 0:2.2.3-85.el5.centos set to be updated

--> Finished Dependency Resolution


Dependencies Resolved


============================================================================================================================================================================================================================================

 Package                                              Arch                                                  Version                                                            Repository                                              Size

============================================================================================================================================================================================================================================

Updating:

 httpd                                                x86_64                                                2.2.3-85.el5.centos                                                updates                                                1.3 M


Transaction Summary

============================================================================================================================================================================================================================================

Install       0 Package(s)

Upgrade       1 Package(s)


Total download size: 1.3 M

Is this ok [y/N]: y

Downloading Packages:

httpd-2.2.3-85.el5.centos.x86_64.rpm                                                                                                                                                                                 | 1.3 MB     00:01     



exiting because --downloadonly specified


여기서 옵션을 중요하게 봐주세요.


[--downloadonly] 설치하지 않고 다운로드만 하겠다는 옵션입니다.


[--downloaddir=경로]다운로드할 경로를 지정합니다. 현재 저는 home 폴더로 지정했습니다.



[root@seob home]# ls

httpd-2.2.3-85.el5.centos.x86_64.rpm  LETKF  LETKF.tar


보시는 거와 같이 httpd이며 x86_64 비트고 2.2.3-85.el5.centos 버전을 다운로드 완료했습니다.






yum은 기본적으로 패키지를 설치할 때 의존성에 관한 패키지를 모두 설치하게 됩니다.


반대로 rpm 같은 경우 의존성 패키지가 존재하지 않을 경우 설치가 되지 않습니다.


이 점을 볼 때 yum으로 패키지를 저장하게 되면 해당 OS, OS의 버전, 비트에 따라 결정되고 그것을 저장하게 됩니다.


즉, 의존성에 대한 문제점을 최소화 시켜줄 수 있습니다.


네트워크가 되지 않는 곳에서 rpm 패키지를 설치하셔야한다면


네트워크가 되는 곳에서 yum으로 패키지를 저장하고 외장 HDD에 옮겨서 설치하는 방법도 좋은 방법이라 생각합니다.

저작자 표시 비영리 변경 금지
신고


이번에는 네트워크 혹은 인터넷이 되지 않아 Yum을 사용해야될 경우입니다.


이러한 경우는 대부분이 인터넷이 안되는 곳에서 OS를 설치했는데 필요 패키지를 설치하지 못할 때 사용할 수 있습니다.


기준은 CentOS 6.2 Final 버전입니다.


기본적으로 yum을 사용하지 않고 패키지 설치를 원한다면 




System - Administrator - Add/Remove Software를 통해 설치가 가능하기도 합니다.


하지만 6.X 버전에서는 지원하지만 하위버전에서 이게 있는지는 잘 모르겠습니다.





인터넷 없이 Yum 사용하기에 앞서


먼저 네트워크가 하나도 잡히지 않는 상태입니다.


저 같은 경우는 일부로 Down 시켰습니다.




인터넷이 되지 않는 환경에서 위와 같이 에러가 발생하고 되지 않습니다.




먼저 CD를 넣으면 자동 마운트가 됩니다.


현재 제 마운트 지점은 /media/CentOS_6.2_Final 입니다.



/etc/yum.repos.d 로 이동 후


CentOS-Media.repo를 열어놓습니다.


CentOS-Media.repo가 없을 경우 따로 만들어도 상관없습니다.


6.X 대에서는 기본적으로 설치가 됩니다.




baseurl 경로를 아까 보신 경로와 같이 수정합니다.


http이 아닌 file로 작성 후 ///media/CentOS_6.2_Final/을 입력하시면 됩니다.



그리고 맨 위에 주석된 부분을 보실 경우 


To use this repo, put in your DVD and use it with the other repos too 부분은


이 repo를 사용하실 경우 DVD 와 다른 repos를 추가해야한다고 적혀있네요.


그럴 경우 yum --enablerepo=c6-media 라고 입력 후 커멘트를 입력하시면 됩니다.



or for ONLY the media repo, do this


이 repo만 사용할 경우 


yum --disablerepo=\* --enablerepo=c6-media를 하시면 됩니다.



쉽게 말해


인터넷이 되면서도 DVD안에 있는 내용을 같이 사용하실 경우 


yum --enablerepo=c6-media


명령어를 사용하시면 되구요.


인터넷이 안되고 DVD안에 있는 내용만 사용할 경우


yum --disablerepo=\* --enablerepo=c6-media


명령어를 사용하면 됩니다.




뭣도 모르고 yum install 했다가


저와 같은 오류가 발생할 수 있습니다.


또한 기존에 다른 repo 값이 저장되어 있기 때문에


yum clean all


을 해주시는것이 좋습니다.




위와 같이 뜨면 정상적으로 clean all 이 된 것입니다.




그리고 난 뒤 저는 인터넷을 사용하지 않고 DVD 내용만 yum 을 하기 위해 다음과 같은 명령어를 쳤습니다.


현재 기본으로 깔렸던 패키지가 다 최신버전이거나 동일버전이기 때문에 update할 항목이 없네요.


update 외에도 groupinstall, install 등 사용이 가능합니다.


저작자 표시 비영리 변경 금지
신고

'IT > Linux' 카테고리의 다른 글

리눅스 데몬의 종류  (0) 2014.04.04
리눅스 로그 종류  (0) 2014.04.04
네트워크/인터넷없이 Yum 사용하기  (0) 2014.04.01
북한에서 만든 '붉은별 2.0' 사용기  (4) 2014.03.19
e2fsck [파일시스템 점검]  (0) 2014.03.18
du 명령어  (0) 2014.03.12


티스토리 툴바