yum repository ¸¸µé±â
ÃÑ ÆäÀÌÁö ¼ö : 3224

Àüü ÇÔ¼ö/¿ë¾î»çÀü
Facebook Joinc ±×·ì   Joinc QA »çÀÌÆ®



joinc´Â Firefox¿Í chrome¿¡¼­ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼­´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù.

yum¿¡ ´ëÇØ¼­

yumÀº Yello dog Updater, Modified RPM ±â¹ÝÀÇ ½Ã½ºÅÛÀ» À§ÇÑ ÀÚµ¿ ÆÐŰÁö ¼³Ä¡ / ¾÷µ¥ÀÌÆ® µµ±¸´Ù. Áß¾Ó¼­¹ö¿¡¼­ ÆÐŰÁö¸¦ °ü¸®ÇØ ÁֹǷΠÀϰüµÈ ¹öÀü °ü¸®°¡ °¡´ÉÇÏ´Ù. yumÀÌ »ç¿ëµÇ±â Àü rpmÀ¸·Î ÆÐŰÁö¸¦ ¼³Ä¡ÇØ º» ½Ã½ºÅÛ °ü¸®ÀÚ¶ó¸é, yum ¾øÀÌ °ü¸®ÇÏ´Â°Ô ¾ó¸¶³ª ÈûµçÀÏÀÎÁö¸¦ ¾Ë°í ÀÖÀ» °ÍÀÌ´Ù.

Red Hat Enterprise Linux, Fedora, CentOS µî RPM ±â¹ÝÀÇ ¹èÆ÷ÆÇµéÀº ¸ðµÎ yumÀ» »ç¿ëÇϰí ÀÖ´Ù.

yum repository¸¦ ¸¸µç ÀÌÀ¯

cloud automatic ±¸¼ºÀ» À§Çؼ­ yum repository¸¦ ¸¸µé¾î º¸±â·Î Çß´Ù. ÀÚµ¿È­ ÇÁ·¹ÀÓ¿öÅ©·Î chef¸¦ »ç¿ëÇϰí Àִµ¥, ÀÚµ¿È­ °úÁ¤¿¡¼­ ¼³Ä¡ÇÒ ÆÐŰÁöµîÀ» ÀúÀåÇϱâ À§ÇÑ ¿ëµµ´Ù.

ȯ°æ

³»°¡ »ç¿ëÇÏ´Â Ubuntu ³ëÆ®ºÏÀ» yum repository ¼­¹ö·Î »ç¿ëÇÑ´Ù. Ubuntu´Â RPM ±â¹ÝÀÇ ¹èÆ÷ÆÇÀÌ ¾Æ´ÏÁö¸¸ ÀúÀå¼Ò·Î ²Ù¹Ì´Âµ¥ ¾Æ¹«·± Á¦ÇÑÀÌ ¾ø´Ù. repository Å×½ºÆ®´Â ´Â Virtualbox¸¦ ÀÌ¿ë, centos ¿î¿µÃ¼Á¦¸¦ guest vmÀ» ¸¸µé¾î¼­ Å×½ºÆ® Çϱâ·Î Çß´Ù.

¸¸µé¾î º¸ÀÚ

ubuntu¿¡ yum repo¸¦ ¸¸µé±â À§Çؼ­ ¾Æ·¡ÀÇ ÆÐŰÁö ¼³Ä¡ÇÑ´Ù.
# apt-get install createrepo 
# apt-get install python-urlgrabber 
 

repository directory »ý¼º
# mkdir /srv/repo 
 

ÀúÀå¼Ò¿¡ rpmÀ» º¹»çÇÑ´Ù. centos6.2ÀÇ rpmµéÀ» º¹»çÇϱâ·Î Çß´Ù.
# mount -o loop /srv/iso/CentOS-6.2-x86_64-minimal.iso /mnt/centos 
mount: warning: centos seems to be mounted read-only. 
# rsync -avzH /mnt/centos/Packages /srv/repo/ 
 

createrepo·Î ÀúÀå¼Ò¸¦ ¼³Á¤ÇÑ´Ù. ÇÁ·Î±×·¥À» ½ÇÇàÇÏ°í ³ª¸é, ÀúÀå¼Ò Á¤º¸ÆÄÀÏÀ» ´ãÀº repodata µð·ºÅ丮°¡°¡ ¸¸µé¾îÁø´Ù.
# createrepo /srv/repo/ 
211/211 - Packages/zlib-1.2.3-27.el6.x86_64.rpm                                  
Saving Primary metadata 
Saving file lists metadata 
Saving other metadata 
 

À¥¼­¹ö ¼³Ä¡

ftp ȤÀº http·Î ÀúÀå¼Ò¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Ù. apache À¥ ¼­¹ö¸¦ ¼³Ä¡Çϱâ·Î Çß´Ù.
# apt-get install apache2  
 

¼³Á¤ÆÄÀÏ
<VirtualHost *:80> 
        ServerAdmin webmaster@localhost 
 
        DocumentRoot /srv/repo 
        <Directory /> 
                Options FollowSymLinks 
                AllowOverride None 
        </Directory> 
        <Directory /srv/repo/> 
                Options Indexes FollowSymLinks MultiViews 
                AllowOverride None 
                Order allow,deny 
                allow from all 
        </Directory> 
.... 
 

Å×½ºÆ®

centos vmÀ¸·Î Å×½ºÆ® ÁøÇà. ÇöÀç »óȲ
# yum repolist  
repo id                                repo name                                         status 
base                                   CentOS-6 - Base                                   6,294 
extras                                 CentOS-6 - Extras                                     4 
rbel6                                  RBEL 6 Repo                                         183 
updates                                CentOS-6 - Updates                                  388 
repolist: 6,869 
 

repo Ãß°¡
# cat yundream.repo  
[yundream] 
name = yundream centos6.2 Repo  
baseurl = http://192.168.56.1 
gpgcheck = 1 
enabled = 1 
 

Ãß°¡ µÆ´ÂÁö È®ÀÎ
# yum repolist  
repo id                                repo name                                         status 
base                                   CentOS-6 - Base                                   6,294 
extras                                 CentOS-6 - Extras                                     4 
rbel6                                  RBEL 6 Repo                                         183 
updates                                CentOS-6 - Updates                                  388 
yundream                               yundream centos6.2 Repo                             211 
repolist: 7,080  
 

Á¦´ë·Î ÀÛµ¿ ÇÏ´ÂÁö Å×½ºÆ®.
[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-6 
enabled=0    # Ãß°¡Çؼ­ ºñȰ¼º ÇÑ´Ù. 
 

´Ù½Ã È®ÀÎ
# yum repolist 
Loaded plugins: fastestmirror, presto 
Loading mirror speeds from cached hostfile 
repo id                              repo name                                           status 
yundream                             yundream centos6.2 Repo                             211 
repolist: 211 
 

Å×½ºÆ®
# yum install vim-minimal 
Loaded plugins: fastestmirror, presto 
Loading mirror speeds from cached hostfile 
Setting up Install Process 
Resolving Dependencies 
--> Running transaction check 
---> Package vim-minimal.x86_64 2:7.2.411-1.6.el6 will be installed 
--> Finished Dependency Resolution 
 
Dependencies Resolved 
 
=============================================================================================== 
 Package               Arch             Version                       Repository          Size 
=============================================================================================== 
Installing: 
 vim-minimal           x86_64           2:7.2.411-1.6.el6             yundream           365 k 
 
Transaction Summary 
=============================================================================================== 
Install       1 Package(s) 
 
Total download size: 365 k 
Installed size: 750 k 
Is this ok [y/N]:  
 
OK

yum client ¼³Á¤

Ŭ¶óÀ̾ðÆ®ÀÇ yum ¼³Á¤ ÆÄÀÏÀº /etc/yum.conf´Ù. ¿©±â¿¡¼­´Â yum repository¸¦ ÀÌ¿ëÇϱâ À§ÇÑ ÃÖ¼ÒÇÑÀÇ ¿É¼Ç¸¸ ¼³¸íÇÑ´Ù.

cachedir
ÆÐŰÁö¸¦ ¼³Ä¡Çϱâ À§Çؼ­´Â ÆÐŰÁö Á¤º¸¸¦ °¡Á®¿Í¾ß Çϴµ¥, ¸Å¹ø ¼öõ°³ÀÇ ÆÐŰÁö¸¦ ´Ù¿î·Îµå ÇÏ´Â °Ç ³¶ºñ´Ù. yum Ŭ¶óÀÌ¾ðÆ®´Â yum repository¿Í »ç¿ëÇÒ ¼ö ÀÖ´Â ÆÐŰÁö Á¤º¸¸¦ cache µð·ºÅ丮¿¡ ÀúÀåÇØ¼­ ºü¸£°Ô ÆÐŰÁö¸¦ °ü¸®ÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù. ±âº» °æ·Î´Â /var/cache/yumÀÌ´Ù. cache Á¤º¸´Â sqlite db¿¡ º¸°üÇÑ´Ù.

yum ÀúÀå¼Ò¿Í ÆÐŰÁö Á¤º¸¸¦ »èÁ¦ÇÑ´Ù.
# yum clean metadata 
 

cache¿¡ ÀÖ´Â package¸¦ »èÁ¦ÇÑ´Ù.
# yum clean package 
 

# yum clean headers 
 

logfile
yum »ç¿ë Á¤º¸¸¦ ·Î±×ÆÄÀÏ¿¡ ÀúÀåÇÑ´Ù. ±âº» °æ·Î´Â /var/log/yum.logÀÌ´Ù.

tolerant

gpgcheck

metadata_expire

keepcache


yum.conf ¼³Á¤ ¿¹
[main] 
cachedir=/var/cache/yum/$basearch/$releasever 
keepcache=0 
debuglevel=2 
logfile=/var/log/yum.log 
exactarch=1 
obsoletes=1 
gpgcheck=1 
plugins=1 
installonly_limit=5 
distroverpkg=centos-release 
 

ÅÂ±× :

EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù.