質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

rpm

rpmコマンドは、UNIX系OSのroot権限でのみ利用可能なコマンドで、 RPMパッケージのインストールなどができます。

Q&A

解決済

1回答

4136閲覧

ディストリビューションについて

kiyari

総合スコア25

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

rpm

rpmコマンドは、UNIX系OSのroot権限でのみ利用可能なコマンドで、 RPMパッケージのインストールなどができます。

0グッド

0クリップ

投稿2016/07/15 08:38

有識者の皆様

よろしくお願いします。

「CentOS Linux release 7.2.1511 (Core)」を利用しています。
脆弱性対応のため、squidのバージョンを「3.3.8 → 4.0.12」にアップグレードを検討しています。

拡張レポジトリよりアップデートを試みましたが、以下の依存関係によりアップデートが完了しません。
///////////////////////////////////////////////////////////////////////////////////////////////
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ squid.x86_64 7:3.3.8-26.el7_2.4 を 更新
---> パッケージ squid.x86_64 7:4.0.12-1.el7.centos を アップデート
--> 依存性の処理をしています: libecap.so.3()(64bit) のパッケージ: 7:squid-4.0.12-1.el7.centos.x86_64
--> 依存性解決を終了しました。
エラー: パッケージ: 7:squid-4.0.12-1.el7.centos.x86_64 (squid)
要求: libecap.so.3()(64bit)
問題を回避するために --skip-broken を用いることができます。
///////////////////////////////////////////////////////////////////////////////////////////////

libecap.so.3について、epel、remi、RepoForgeのレポジトリから検索しましたが、見つけることができませんでした。
そこで、rpmによるインストールを検討していますが、ディストリビューションについて疑問が出てきました。

以下のサイトでrpmパッケージを検索すると各ディストリビューションのパッケージが検索されます。
https://www.rpmfind.net/linux/rpm2html/search.php

以下、ご質問です。

ディストリビューションが異なっても、同じRedhat系のrpmパッケージであれば、異なるOS(CentOSでFedoraを使うとか)であっても共用利用できるものなのか?

以上です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

ディストリビューションが異なっても、同じRedhat系のrpmパッケージであれば、異なるOS(CentOSでFedoraを使うとか)であっても共用利用できるものなのか?

RHEL と互換性のある CentOS などは、同じバージョン(RHEL 7 と CentOS 7)であれば RPM を共用利用できます(サブスクリプションの問題は除く)。

しかし、他のディストリビューションの RPM は基本的には動かないと思った方がいいです。
ディストリビューションによってライブラリ環境が異なるので、その環境でコンパイルされた RPM でないと動きません(noarch.rpm であれば利用できるかもしれません)。
また、サービス起動方法の違い(SysVinit, Upstart, Systemd など)もあります。

他のディストリビューションの src.rpm をリビルドすれば動かせる場合もあります。
ただし、リビルドに必要なライブラリが無かったり、前述のサービス起動方法の違いもありますので、その src.rpm によります。

エラー: パッケージ: 7:squid-4.0.12-1.el7.centos.x86_64 (squid)
要求: libecap.so.3()(64bit)

「el7.centos」と付いているので、CentOS 7 環境でビルドされたものと推測されます。
libecap.so.3 を提供する RPM も同じ場所にありませんか?
インターネットで検索すると、squid-4.0.12 は「beta/」にありますが、「beta/」じゃないところに libecap-1.0.0 がありました。

投稿2016/07/15 10:20

TaichiYanagiya

総合スコア12141

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kiyari

2016/07/19 01:21

ご回答ありがとうございます。 ご指摘の通り、レポジトリの取得先が/betaでした。 squidのレポジトリ先を変更することでlibcap-1.0.0もyumで見つけられました。 updateすると一部で競合しているファイルが見つかりましたので、一旦removeしてインストールするか、rpmで競合を無視するか検討してみます。 ディストリビューションについてもありがとうございます。 疑問が解決しました! rpmパッケージの利用には注意してまいります!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問