I’m hungry

おもにAmazonでの衝動買いや技術的な話をぼちぼちと。

yumが [Errno -1] Header is not complete. なエラーを吐く

2008-06-12 21:35:58 | ネットサービス/テクノロジ
yumは非常に便利なツールで離れられないくらい使いまくってるのだが、
ある時(というか今日)に以下のエラーが出てパッケージのインストールに失敗する事象に出くわした。

[hogeuser@fooserver ~]$ yum install パッケージ名

(略)

--> Processing Dependency: libcap.so.1 for package: dbus
--> Processing Dependency: libIDL-devel >= 0.8.2-1 for package: ORBit2-devel
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for libvolume_id to pack into transaction set.
libvolume_id-095-14.9.el5 100% |=========================| 24 kB 00:00
---> Package libvolume_id.i386 0:095-14.9.el5 set to be updated
---> Downloading header for libIDL-devel to pack into transaction set.
libIDL-devel-0.8.7-1.fc6. 100% |=========================| 5.7 kB 00:00
http://my-yum-local-server.example.com/yum/centos/5/os/x86_64/CentOS/libIDL-devel-0.8.7-1.fc6.x86_64.rpm: [Errno -1] Header is not complete.
Trying other mirror.
Error: failure: CentOS/libIDL-devel-0.8.7-1.fc6.x86_64.rpm from base: [Errno 256] No more mirrors to try.
[hogeuser@fooserver ~]$


yumサーバー(ここではmy-yum-local-server)を自分のローカルネットワーク上に用意しているので、そちら側のアクセスログを見てみる。

192.168.0.1 my-yum-local-server - - [12/Jun/2008:09:08:59 +0900] "GET /yum/centos/5/os/x86_64/CentOS/libIDL-devel-0.8.7-1.fc6.x86_64.rpm HTTP/1.1" 206 5811 "-" "urlgrabber/3.1.0" "-"

HTTPのステータスコードがなぜか「206」(Partial Content)になってる...
部分的なGETリクエストを要求したということなんだろうが何故に?

yumがurlgrabberを使ってアクセスしているようなので直接urlgrabberで該当パッケージを取得してみる。

192.168.0.1 my-yum-local-server - - [12/Jun/2008:09:26:08 +0900] "GET /yum/centos/5/os/x86_64/CentOS/libIDL-devel-0.8.7-1.fc6.x86_64.rpm HTTP/1.1" 200 17879 "-" "urlgrabber/3.1.0" "-"

手動でurlgrabberコマンドを実行するとステータスは「200」。そりゃそうだ。
パッケージのサイズもyumのprimary.xml.gzに記載されているサイズ(ここでは17,879バイト)で問題なし。

ググってみると結構同じ事象が起きてるらしく、たいてい
http://wiki.linux.duke.edu/YumFaq
のQ.5を参照しろとか言ってる。

で、「The solutions to this problem are:」を見てみると

http://wiki.linux.duke.edu/YumFaq

超適当な訳:
  • 使ってるプロキシがおかしいんじゃね?
  • FTPリポジトリ使えば?
  • ローカルリポジトリ作ってそっちを読むようにすれば?
  • yum使うのやめれば?


ええええええええええええええ。

全然問題解決の助けにならねぇ...プロキシなんてそもそも使ってないし
yum取得先もすでにローカルのmirrorサーバーなんですが...orz

yum clean allとかキャッシュ強制削除とかしてみたけど解決せず、とりあえず
取得が正常にいかないファイルだけ手動で取得してインストールしたら他のファイル
は正常にインストールできるようになった。

またもややっつけ対応orz

Comment    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« ビールにあうおつまみ を試... | TOP | apacheでcoreを出力する方法... »
最新の画像もっと見る

post a comment

ブログ作成者から承認されるまでコメントは反映されません。

Recent Entries | ネットサービス/テクノロジ