Centosのyumが死にました・・・でも解決済み

Pocket
LINEで送る
GREE にシェア
LinkedIn にシェア

エンジニアの皆さん、プログラムは好きだけどサーバーやネットワークは苦手と思っている人いませんか?
 

きっとかなりの数いると思われますが、今どきのWEBエンジニアは、サーバーとプログラムどちらもできるフルスタックでないと意味がありませんよ。
 

そんな事をいいながらとある東証一部のIT企業でCTOをやりながら、エンジニア育成トレーニングをやってきたのですが、血反吐吐くぐらいの内容にエンジニアはみんなよく弱音を吐いていました。
 

中には挫折する者、やめていく者、反発するエンジニアもいましたが、今でも繋がっているエンジニアは、非常に優秀な人ばかりなので、安心して仕事をする事ができます。
 

そんな偉そうなことばかり言っていた僕ですが、ブログ公開しているサーバーのメンテナンスを行っていた時のことです、なんだかいつもとコマンドの感覚が違うな〜と感じていたら、yumコマンドが機能していない事が発覚しました。
 

これってUbuntuで言うところのapt-getコマンドが機能しなくなるのと同じで新たなモジュールのインストールができないだけでなく、メンテナンスで必要なモジュールアップデートなどもできない状態です。
 

yumが死ぬってどんな現象?

yumコマンドを実行すると以下のようなメッセージが常に表示されるようになります。
 

 

なんか、現在のバージョンが2.7.11だけどうまくマッチしないって言ってますね。
 

表示されているURLに言ってみると、2019/3/19現在、NotFoundになってしまいます。
 

IT業界の動向、早すぎる・・・
 

でも諦めてはいけません。
 

http://yum.baseurl.org/wiki/
 

上記URLでちゃんと表示されます。

yumはpythonで動いている

上記FAQサイトの「Get Yum」というtgzデータをダウンロードして解凍すると、中身が.py拡張子のファイルがたらふく入っていることが確認できます。
 

どれをみて分かる通り、yumはpythonで出来ていることが分かります。
 

そして、この状況は、どうやら、CentOS6でpython2.6からpython2.7にアップデートした時に発生するという事が分かりました。
 

解決方法

どうやらyumを動かしているbinファイルの書き換えを行う必要があるようです。
 

とりあえず、以下のコマンドを実行。
 

 

 

yumって結構シンプルな構造で動いている事がわかります。
 

このファイルの1行目でpythonが定義されていますが、これを以下のように変更します。
 

 

これで無事にyumコマンドが復活しました。
 

日進月歩のサーバーメンテナンスですが、こういう事ってやり続けていないと、数年経ってやろうとすると、技術の巻き戻し習得が半端なく大きくなりそうですね。
 

自分でブログ引用してサーバーメンテナンスをコツコツやる意義、大きいですね。

Leave a Reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です