何かと問題が起こるproxyサーバ下での作業ですが、とにかくyumやwgetが使えないという問題がよく起こってそれで一日が終わってしまうこと請け合い!!
というわけで、1日かからずに10分で問題が解決できるように覚書です。
proxyサーバの設定
まずはwgetを使えるようにします。
これを実行するためには、proxyの壁をこえる必要がある。そのためには、環境変数http_proxyを設定する必要ありです。
プロキシサーバを「http://proxy.tazakazushi.net:8080」だとすると、以下のように設定。
[追記]
yumを使うにあたってもこの設定が必要でした。
なので、とりあえずこれを設定するのがオススメ。
(この一行でOK!) # export http_proxy=https://tazakazushi.net:8080/ (確認しとく?) # echo $http_proxyhttps://tazakazushi.net:8080/
恒久的に設定したい場合は「/etc/bashrc」に設定ですかね。
yumレポジトリの設定
RedHatはデフォルトだとサブスクリプションがないとyumを使えない。yumをやろうとすると、こんなエラー?メッセージが必ず流る。
# yum install php Loaded plugins: product-id, refresh-packagekit, security, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
これには困っちゃいますが、以下の手順でyumが使えるようになるみたい。(dag repositoryの追加)
とりあえず、以下で自分のOSに対応するバージョンを探しておいて下さい。
http://dag.wieers.com/rpm/packages/rpmforge-release/
# wget http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.5.2-1.el6.rf.x86_64.rpm # rpm -ivh rpmforge-release-0.5.2-1.el6.rf.x86_64.rpm
これでyumが使えるようになる…はず?
なんか、エラーメッセージは相変わらずですが、使えるようになったっぽいです。
でも、結局、レポジトリがこれだとダメみたいで、
別のレポジトリ入れました。
この作業の意味ってあったのか謎。。
もしかしたらこの一文が足りなかったのかもしれないけど、いまとなってはわかりません(笑)
※次回試します。
# yum -y update rpmforge-release
CentOSのレポジトリを追加
とりあえず、CentOSのレポジトリを追加してあげたら、いろいろインストールできるようになった。CentOSのレポジトリの追加は以下の要領。
# vi /etc/yum.repos.d/CentOS-Base.repo (以下をコピー) [base] name=CentOS-$releasever - Base mirrorlist=http://mirrorlist.centos.org/?release=6.4&arch=$basearch&repo=os #baseurl=http://mirror.centos.org/centos/6.4/os/$basearch/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6 [updates] name=CentOS-$releasever - Updates mirrorlist=http://mirrorlist.centos.org/?release=6.4&arch=$basearch&repo=updates #baseurl=http://mirror.centos.org/centos/6.4/updates/$basearch/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6 [extras] name=CentOS-6.4 - Extras mirrorlist=http://mirrorlist.centos.org/?release=6.4&arch=$basearch&repo=extras #baseurl=http://mirror.centos.org/centos/6.4/extras/$basearch/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6 (:wqで終了)
どうも「$releasever」という変数を使って記載してあったサイトもあったんですが、それだと「6server」と置換されてうまくいかなかったので、直接「6.4」とか「6」とか書いています。
ちなみに、gpgkeyの最後が6.4ではなくて6になっているところがポイントで、最初はここが違っていて、コケました。
[追記]
時間が経って、以前の設定だとエラーになるようになりました。
いまは「6.4」になっているところを「6」にすると、正しく動作します!
詳細は以下の記事を参考にして下さい。
[RHEL][yum] CentOS6.4のレポジトリが使えなくなっていた。
https://tazakazushi.net/yum-repository-change.html
余談:yum lock
yumを実行しようとすると、yumBackend.pyというのがいるせいで作業できない!みたいな状態になることがありました。
基本的には待っているとこのバックエンド作業が終わって、問題なくyumが使えるようになるんですが、どうしても問題が残る場合には、いかのようにすれば良いみたいです。
(yum.pidを削除する) # cd /var/run/ # rm -f yum.pid # yum update
yumのproxy設定
もしかしたらyumはyumでproxyの設定が必要かもしれないので、そのあたりに関して補足。
yumのproxy設定に関しては、RedHatの場合は「/etc/sysconfig/rhn/up2date」に記載します。
# vi /etc/sysconfig/rhn/up2date (以下の行を編集) enableProxy=1 … httpProxy=http://proxy.tazakazushi.net:8080/ (:wqで保存して終了)
これに関しては、CentOSの場合は場所が違って、「/etc/yum.conf」のproxyのところに設定するみたい。
おしまい
これはあとから見返した時にすごい役に立つ予感がする!!(笑)