人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Linuxでソフトをインストールする際、tarを使う方法とrpmを使う方法があり、
後者の方が簡単であるわけですが、前者の利点を教えてください。

前提として、趣味ではなく業務目的のサーバにおける使用を想定してます。

●質問者: witt
●カテゴリ:コンピュータ
✍キーワード:Linux rpm TAR インストール サーバ
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● izayoimizuki
●30ポイント

http://www.hatena.ne.jp/1140268440#

人力検索はてな - Linuxでソフトをインストールする際、tarを使う方法とrpmを使う方法があり、 後者の方が簡単であるわけですが、前者の利点を教えてください。 前提として、趣味ではなく業..

RPMとTARの関係は通常の便利ツールと手作業で行う関係に良く似ています。


柔軟性

RPM:低い

Apacheのモジュールの場合

ディストリビューターがリリースしているものしか使えない

最適化

その環境でネイティブに実行できる程度

TAR:高い

Apacheのモジュールの場合

全てのモジュールが使える

最適化

MakeをすればCPUやチップセット等のハードウェア構成にあわせて最も最適化されたバイナリを手に入れることも出来る


最新バージョンの追随

RPM:ディストリビューターがリリースするまで待たなければならない

パッチ

適用できない

TAR:リリースされたら即インストールできる

パッチ

Makeをすればいち早くセキュリティーパッチを適用したりオリジナルのパッチを適用したりもできる


と言った感じです。

最適化については大きなものであれば体感的に分かるほどの差になる事もあります。

HTTPD等の同時に大量のリクエストを受けるサービスではより大きな差になります。

またセキュリティー問題のアップデーターもディストリビューターがリリースするのははっきり言ってかなり遅いです。

数週間待たされることもそれほどまれではありません。


もちろんこまめにアップデータを確認する余裕が無いようであればRPMの方が安全です。

Cronで毎日適当な時間にyumやapt-getを使って更新をしてやればよいので。


大量に同じような環境が存在するのであればTAR等で纏められたソースを自分でMakeしてRPMに纏めたりするのも良いでしょう。

◎質問者からの返答

よくまとめられた回答ありがとうございます。

rpmを使えば、何でも便利になるわけではない、

ということが確信できました。

特に、 Apacheのモジュールやセキュリティの問題は

深刻ですね。

前者については、PHPで必要な機能がディストリビュータに

よるrpmでは使えないので、tarでやるしかないのかな、

と思っていた次第です。

後者について、rpmで運用し、脆弱性が公表され、

対応するrpmがリリースされる前に被害を被った場合、

誰が責任を取るのか気になるところです。

業者と保守契約を結んでいる場合、勝手にrpmを作って

それをインストールするのは契約違反になるかもしれない

ですから。


2 ● hamster078
●20ポイント

http://www.yahoo.co.jp/

Yahoo! JAPAN

利点というのではないですが、rpmを全般的に使っていると、

それぞれの依存しあうソフトやライブラリのバージョンを自分は

気にせずに、全部自動で管理できます。

しかし、なんらかの理由で、ライブラリのバージョンなどを

自分で決めたい場合は、rpmはかえって邪魔になります。

もちろん、rpmファイルの中には、tarボールが含まれているので、

取り出してインストールすればいいわけですが。

あとは、rpmだとコンパイル済みのものになりますが、

コンパイルオプションを自分でつけて、自分なりに再適化した状態で

コンパイルしたい場合も、tarからつまりソースからインストールする

わけです。

◎質問者からの返答

>しかし、なんらかの理由で、ライブラリのバージョンなどを

>自分で決めたい場合は、rpmはかえって邪魔になります。

MicrosoftでいうところのDLL Hellの回避の場合ですかね。

こういうときにも、rpmは少々問題ありなのですね。


3 ● kai10
●25ポイント

http://www.stackasterisk.jp/tech/systemManagement/rpm02_01.jsp

?J?X?^??RPM?????2???Frpmbuild??tarball??????J?X?^??RPM??

正確には、tarはただのアーカイバで、rpmはパッケージ管理ツールです(念のため)。なので、ソースからのビルドと、rpmでパッケージ化されたものので比較すると、他の方が言われていることになると思います。なので、捕捉を。


RPMを使うと、最新版が使えないとか、融通がきかないと考えがちですが、それならば、自分でRPMパッケージ化すればいいです。最初は敷居が高く感じられるかもしれませんが、*.src.rpmをひろって来て、それに含まれている *.specを適宜加工するような感じで、大体の場合は必要なことは出来ると思います。*.src.rpmは、どこのディストリビューションでも公開しているはずです。それを元に *.i586.rpmなどが作られますので。ソースからビルドできる方なら、それほど面倒な作業ではないと思います。


業務で使う場合、ソースからのビルドの場合、各マシンでコンパイル、インストールするのが普通かと思いますが、パッケージ化すれば、各マシンでパッケージのインストールだけで良くなりますし、ライブラリ等の管理も楽になります。

◎質問者からの返答

ご紹介いただいたページ、役に立ちそうです。

ただいま、私の興味は、業者によるrpmの提供と保守契約の

関係にあるのですが、これについて質問するには

私の勉強不足なので、またときを改めて質問することにします。

以上、ご回答いただいた皆さん、ありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ