CentOS5.5にgitをインストールする(yumを使用)
CentOSにgitをインストールしたときの備忘録です。
CentOSのデフォルトのyumリポジトリでは、git は提供されていないので、色々と作業することがありました。
インストールにあたっては、こちらのページを参考にさせて頂きました。
yum から git がインストール出来ない
いつものように yum から git をインストールしようとすると、「No package git available.」という形で git のインストールが出来ませんでした。
# yum install git
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
No package git available.
Nothing to do
これは、最初に書いたように、CentOSのデフォルトのyumリポジトリでは git が提供されていないためになります。
提供されていない理由としては、
CentOS のデフォルトの状態では必要なソフトウェアが不足している。その理由は Red Hat の Red Hat Enterprise Linux (RHEL) という商用 Linux 製品のクローンだからだ。製品版 Linux であれば、提供するものはすべてサポートしなければならない。あまり多くのソフトウェアを詰め込んでしまったら収集が付かない状態になってしまうのだろう。
CentOS 5.0 での yum repository の設定 より
ということです。
yum リポジトリを追加
デフォルトのyumリポジトリ以外からインストールができるように、yumリポジトリの追加をします。
以下の2つのファイルを追加します。
/etc/yum.repos.d/git.repo の追加
vim などで「/etc/yum.repos.d/git.repo」を開いて、ファイルを新規作成します。
作成したファイルには以下の内容を書き込みます。
[git] name=Base git repository baseurl=http://www.kernel.org/pub/software/scm/git/RPMS/$basearch enabled=1 gpgcheck=0
/etc/yum.repos.d/rpmforge.repo の追加
さっきと同じようにして、vim などで「/etc/yum.repos.d/rpmforge.repo」を開いて、ファイルを新規作成します。
作成したファイルには以下の内容を書き込みます。
[rpmforge] name = Red Hat Enterprise $releasever - RPMforge.net - dag mirrorlist = http://apt.sw.be/redhat/el5/en/mirrors-rpmforge enabled = 0 gpgcheck = 0
yum で「Error performing checksum」が発生する
yumリポジトリの追加が終わったところで、「yum update」を実行すると、「Error performing checksum」というエラーが発生しました。
# yum update Loaded plugins: fastestmirror Determining fastest mirrors 〜 省略 〜 git | 1.3 kB 00:00 git/primary | 158 kB 00:01 http://www.kernel.org/pub/software/scm/git/RPMS/i386/repodata/primary.xml.gz: [Errno -3] Error performing checksum Trying other mirror. git/primary | 158 kB 00:02 http://www.kernel.org/pub/software/scm/git/RPMS/i386/repodata/primary.xml.gz: [Errno -3] Error performing checksum Trying other mirror. Error: failure: repodata/primary.xml.gz from git: [Errno 256] No more mirrors to try.
「python-hashlib」をインストール
上記のエラーについて、「python-hashlib」をインストールすれば解決するということが書いてあったので、rpm からインストールします。
# wget http://skvidal.fedorapeople.org/hashlib/python-hashlib-20081119-2.i386.rpm # rpm -ivh python-hashlib-20081119-2.i386.rpm # rpm -qa | grep hashlib python-hashlib-20081119-2
もう一度「yum update」を実行(今度は成功)
「python-hashlib」がインストールできたら、もう一度「yum update」を実行します。今度は成功しました。
# yum update Loaded plugins: fastestmirror Determining fastest mirrors 〜 省略 〜 git | 1.3 kB 00:00 git/primary | 158 kB 00:01 git 1469/1469 updates | 1.9 kB 00:00 updates/primary_db | 915 kB 00:02 Setting up Update Process No Packages marked for Update
yum から git をインストール
ここまでで、準備がおわったので、yum から git をインストールします。インストール時は「--enablerepo=rpmforge」を指定します。
「 /etc/yum.repos.d/rpmforge.repo」を作成した際に、「enabled = 0」を指定していて、デフォルトではこのリポジトリを使用しない動作になるので、「--enablerepo=rpmforge」を指定して明示的に rpmforgeリポジトリを使用するようにします。
# yum install git --enablerepo=rpmforge Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * rpmforge: fr2.rpmfind.net 〜 省略 〜 Running Transaction Installing : git 1/2 Installing : perl-Git 2/2 Installed: git.i386 0:1.7.3.4-1.el5.rf Dependency Installed: perl-Git.i386 0:1.7.3.4-1.el5.rf Complete!
正常にインストールが完了しました。
念のため、git のバージョンを確認すると、
# git --version git version 1.7.3.4
で問題なく動作することも確認できました。
今回参考にしたページ
CentOS 5.4 に git をインストール - ノンポリ技術メモ
http://d.hatena.ne.jp/nkawaguchi/20100523/1274610691
CentOS 5.0 での yum repository の設定
http://linux4pro.seesaa.net/article/41230169.html
CentOS に etckeeper をインストール - miauの避難所
http://d.hatena.ne.jp/miau/20091012/1255365273
yum 実行時に「Error performing checksum」エラー - miauの避難所
http://d.hatena.ne.jp/miau/20100404/1270384404