転載・引用について

ユーザ用ツール

サイト用ツール


os:linux:centos:yumrepository

Yum Repository

CentOSにおけるPackage管理システムはRHEL系標準のyumとなっている。

このyumは、複数のRepositoryをまとめて管理することが出来るので、様々重宝する。

ここには、筆者が使っているYum Repositoryとその投入方法を記載する。

yumでエラーが出る

yum check-updateを実行した際に、以下のようなエラーが出た。

http://ftp.kddilabs.jp/Linux/packages/fedora/epel/6/x86_64/repodata/repomd.xml: [Errno -1] repomd.xml does not match metalink for epel

これは、思うに、自身が持っているmirrorリストの情報と、上記のmirrorリストの情報が違ってしまった(きっと更新された)せいと考えられる。(他にも原因があるかもしれないが、追いかけていない)

これに対処するには、

  1. エラーが出たRepositoryの設定ファイル(今回であれば、epelなので、/etc/yum.repos.d/epel.repo)をEditorで開く
  2. enableされている設定内のmirrorlist行をコメントアウト
  3. enableされている設定内のbaseurlを生かす
  4. 保存して、yum check-updateを実行
  5. 元に戻す
  6. 再度yum check-updateを実行して、問題が無い事を確認

すればよい。はず。

Yum Repositoryの優先順位付け

yumで複数のRepositoryを利用している場合、Repositoryの優先順位を付けたくなる。 そのような場合には、yum-prioritiesをinstallするとよい。

  • yum -y install yum-priorities
  • /etc/yum.repos.d/CentOS-Base.repo内の各エントリーにpriority=1を割り当てる
    • 何も設定しなければPriority=99。
  • あとは、各Repository毎に、優先順位を設定する。
    • 何も設定しなければPriority=99。

なお、yum.repos.d/CentOS-Base.repo内のBaseやUpdateにexclude=php* mysql* …等と書くと優先度に関わらずBaseに起因する更新からphpやmysqlが省かれるようになる

EPEL

  • EPEL(Extra Packages for Enterprise LinuxからHow can I use these extra packages?内にあるLinkを手繰って、必要なRPMを入手する。
  • sudo rpm -Uvh http://ftp.riken.jp/Linux/fedora/epel/6/i386/epel-release-?-?.noarch.rpm
    • ファイル名に注意すること。2014/01/21時点では、6-8だった。
    • /etc/yum.repos.depel.repoが出来ていればOK。
  • 内容を確認して、[epel]セクションでenabled=1になっていることを確認する。

Remi

Remi Repositoryは、EPELを必要とする。PHP5.5を利用したい場合にRemiを使うとよいだろう。

  • REMIからRepository Configurationを手繰って、必要なRPMを入手する
  • sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
    • /etc/yum.repos.dremi.repoが出来ていればOK。
  • /etc/yum.repos.d/remi.repo内の[remi]セクションと[remi-php55]セクションでenabled=1を設定する。
    • php5.5を使わない場合には、[remi-php55]セクションのenableは0でよい

Zabbix

Zabbixも、本家から持ってくる方がよいだろう。

NGiNX

NGiNXは非常に高速なかつ高機能なWeb Serverである。

特にWebServerとしてだけで無くLoadBalancerやProxyとしても動作するので、うまく利用すると非常に便利である。

NGiNXも、基本的にはCentOS公式なYum Repositoryに含まれているが、NGiNXはまだ更新が比較的早いので、やはりNGiNX公式の物を利用したい。

  1. http://wiki.nginx.org/Installを確認し、NGiNXのRepository(/etc/yum.repos.d/nginx.repo)を作成する。
    • nginx.repo
      [nginx]
      name=nginx repo
      baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
      gpgcheck=0
      enabled=1

MariaDB

RHEL7/CentOS7以降、RHEL6/CentOS6までで提供されていたMySQLはMariaDBに変わる事になっている模様。

従って、標準のYum RepositoryでもそのうちMariaDBは配布されるはずではある。 しかし、特にDB系は性能面やSecurity面の問題や、Packageの公開までの時間を考えると、(筆者は)公式に公開されているRepositoryを利用したい。 というわけで、MariaDBの公式RepositoryをInstallする

  1. https://downloads.mariadb.org/mariadb/repositories/#mirror=yamagata-universityからMariaDBのyum repositoryを確認し、作成する
    • 今回は、CentOS6(64bit)で、 MariaDB 5.5を選択した
    • # vi /etc/yum.repos.d/MariaDB.repo
      ==========
      # MariaDB 5.5 CentOS repository list - created 2014-01-10 09:44 UTC
      # http://mariadb.org/mariadb/repositories/
      [mariadb]
      name = MariaDB
      baseurl = http://yum.mariadb.org/5.5/centos6-amd64
      gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
      gpgcheck=1
      ==========
  2. MariaDB用の yum のGPG Key を Import する
    • rpm --import https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
このウェブサイトはクッキーを使用しています。 Webサイトを使用することで、あなたはあなたのコンピュータにクッキーを保存することに同意します。 また、あなたはあなたが私たちのプライバシーポリシーを読んで理解したことを認めます。 同意しない場合はウェブサイトを離れてください。クッキーに関する詳細情報
os/linux/centos/yumrepository.txt · 最終更新: 2017/05/25 18:56 by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki