AKAI TSUKI

System development or Technical something

Set Up and Use My Yum Repositories

Yumリポジトリの作成

rpmファイルを用意

httpdをインストールできるようにrpmファイルを用意しておきます。

# mkdir /tmp/repo
# yum install httpd --downloadonly --downloaddir=/tmp/repo
# mkdir -p /var/www/html/rpmrepo/x86_64/Packages
# mv /tmp/repo/*.rpm /var/www/html/rpmrepo/x86_64/Packages
# cd /var/www/html/rpmrepo/x86_64/Packages
# ll
total 24928
-rw-r--r-- 1 root root   105572 Jul  4  2014 apr-1.4.8-3.el7.x86_64.rpm
-rw-r--r-- 1 root root    94132 Jul  4  2014 apr-util-1.5.2-6.el7.x86_64.rpm
-rw-r--r-- 1 root root 22354804 Sep 30  2015 centos-logos-70.0.6-3.el7.centos.noarch.rpm
-rw-r--r-- 1 root root  2823484 May 12 23:40 httpd-2.4.6-40.el7.centos.1.x86_64.rpm
-rw-r--r-- 1 root root    84188 May 12 23:40 httpd-tools-2.4.6-40.el7.centos.1.x86_64.rpm
-rw-r--r-- 1 root root    31264 Jul  4  2014 mailcap-2.1.41-2.el7.noarch.rpm
#

リポジトリ作成

取得したrpmファイルに対して、リポジトリを作成し、公開用にhttpdを起動

# yum install -y createrepo httpd
# createrepo /var/www/html/rpmrepo/x86_64/Packages
Spawning worker 0 with 6 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
# /usr/sbin/httpd -k start

リポジトリを利用する

作成したリポジトリの参照

もともと以下のようにCentOSのrepoファイルが置かれていますが
これらを移動(or 削除)します。

# cd /etc/yum.repos.d/
# ls -l
total 28
-rw-r--r-- 1 root root 1664 Dec  9  2015 CentOS-Base.repo
-rw-r--r-- 1 root root 1309 Dec  9  2015 CentOS-CR.repo
-rw-r--r-- 1 root root  649 Dec  9  2015 CentOS-Debuginfo.repo
-rw-r--r-- 1 root root  630 Dec  9  2015 CentOS-Media.repo
-rw-r--r-- 1 root root 1331 Dec  9  2015 CentOS-Sources.repo
-rw-r--r-- 1 root root 1952 Dec  9  2015 CentOS-Vault.repo
-rw-r--r-- 1 root root  290 Dec  9  2015 CentOS-fasttrack.repo
# mv *.repo /tmp/
# ls -l
total 0
#

自分で作成したリポジトリを参照するためのファイルを配置します。

# vi /etc/yum.repos.d/sample.repo
# ls -l /etc/yum.repos.d/
total 4
-rw-r--r-- 1 root root 278 Jul 10 08:49 sample.repo
#

sample.repoファイル

以下の通り。

#httpd packages
[sample]
name=HTTPD - Sample
baseurl=http://<リポジトリを作成したサーバのIP>/rpmrepo/x86_64/Packages/
gpgcheck=0
enabled=1

試しに

# yum info httpd

インストール

# yum install -y httpd
# yum list installed |grep sample
apr.x86_64                             1.4.8-3.el7                      @sample
apr-util.x86_64                        1.5.2-6.el7                      @sample
centos-logos.noarch                    70.0.6-3.el7.centos              @sample
httpd.x86_64                           2.4.6-40.el7.centos.1            @sample
httpd-tools.x86_64                     2.4.6-40.el7.centos.1            @sample
mailcap.noarch                         2.1.41-2.el7                     @sample
#