【初月無料キャンペーン中】gooドクター

CentOSで用語として使われるレポジトリとはどういう意味か分かりません。
すみません、教えていただけますでしょうか。
IT用語集ではレポジトリの定義は貯蔵庫とか書かれていますが。
イメージが湧きません。

gooドクター

A 回答 (4件)

LinuxカーネルはオープンソースのOSカーネルで


Linux系OSは、ほとんどをオープンソースのソフトウェアによって構成されたOSです。

ですから、オープンソース系ライセンスの特徴である
・開発に誰でも参加できる
・誰でも利用できる
・誰でもmakeすることができる
・誰でもmakeしてパッケージ作成して配布できる

といった要素があるため、Linuxディストリビューションでは
採用したソフトウェアを、インストールディスクイメージに組み込むだけでなく
インターネット上のサーバーに置いて、公開(配布)しています。

この保存場所を、リポジトリーと呼びます。

誰でもということは、有志の第三者が
ディストリビューションに含まれていないソフトについて…
あるいは、採用されたものより新しいバージョンについて…
独自のパッケージを作成し、それを公開することもできます。

そして、そういったものも、適切な手順によって
ディストリビューターの管理外で
外部リポジトリーを構成することができます。

ですから、そういったものを利用することで
より便利になることもありますし…
信頼性やセキュリティについての不安が生じることもありえます。


一般的には、特許技術などの問題で採用されていないもの。
インストールディスクに組み込むことで、国によっては配布できなくなるもの。
そういったものは、リポジトリーや外部リポジトリーから導入するようになっています。

Samba3.6のように、最新版での大幅改修への期待があるものが
ディストリビューションへの採用には、検証期間が必要なために遅れることもあります。
そういう場合にも、外部リポジトリーで提供されることがありえます。


なお、リポジトリーにはソフトウェアパッケージ自体だけでなく
Flash PlayerをAdobeのサイトからダウンロードして導入するような
スクリプトも登録されています。(CentOSの場合は知らんけど、Ubuntuとかではそうなっています)

理屈としては、PDFによるマニュアルを提供することもできますし
シェアウェアのように、気に入った人は振り込んでくれというスタイルで
多種多様なコンテンツを提供することもできないことはありません。

ただし、Linuxディストリビューションではそれは行われていません。


そういったリポジトリーとの連携の延長上に生まれたのが
iOSやAndroidで使われているストア/マーケットのシステムです。


リポジトリーの利用にはRedHat系(CentOS含む)のYumや
Debian系(Ubuntu,Mint含む)のaptのようなツールが使われますし
GUIフロントエンドが提供されることもあります。

一般的にはディストリビューションごとに独自のものを持ちますが
LubuntuやMintのように、派生ディストリビューションでは
派生元のリポジトリーの一部を共用する場合もあります。

これは、リポジトリーで提供されるソフトウェアパッケージについて
依存関係や互換性で問題がおきないようにしているためで
また、問題がおきない組合せでは共用も可能なのです。

ですから、外部リポジトリーでも、共用前提で提供している場合もあります。


仮にPDF配布の独自外部リポジトリーを作るとしたら
ディストリビューションを規定しない、汎用外部リポジトリーとして作ることもできます。


余談ですが、カタカナ表記は、厳密な規定は無いのですがrepositoryの英語発音は
http://dictionary.goo.ne.jp/leaf/ej3/70727/m0u/r …
で聞く限り、レポジトリには聞こえないと思います。
というか、二分するなら、リポジトリィかリポゼトリィという現実、この国の英語力って orz

個人的には、長音が付く付かないの区別ができない素人を考慮して
付くべき長音は省かないという方針で書いています。
変換効率が落ちることもあるけど、どっちかというと文系だし。
    • good
    • 6

「パッケージを置いてある倉庫」だと、考えてください。



Windowsのように、主たる機能のほとんどを同じ組織で設計し、完成させて出荷するOSとは違い、パッケージ管理形式に関わらず、Unix/Linux系統の「ディストリビューション」は、「本体」であるカーネルを、各種パッケージと組み合わせ、「使いやすい形にまとめただけ」のモノなのです。

各ディストロは、まとめられ方が違うだけで、本質的には同じモノなのです。
ですから、パッケージ単体の動作要件には、ディストリビューションの名前では無く、必要なカーネル仕様や、ライブラリで定義してあることが多く見られます。

ディストロを開発している中心になっている集団は、動作の安定性や安全性、新技術への対応を重視したパッケージ群を構成し、Security(保安修正パッチ)・Factory(開発版)リポジトリ・Stable(安定版)リポジトリ、などを用意しますが、それだけでは物足りない集団も当然出て来ます。

同じディストロを利用しているユーザが、より、そのディストロを自分達の使い勝手の良いものにするために、「本隊」とは別に、「本隊」では「急ぐ必要は無い」と、後回しになったり、「権利問題で収録不能」だったり、「必要性無し」と判断されるような「パッケージ群をまとめてある、ネット上の場所」や、「パッケージ群それ自身」を、「外部リポジトリ」と考えて差し支えないでしょう。
    • good
    • 3

CentOSで言えば


ネットワーク上に置かれているrpmパッケージの置き場所がリポジトリ。
(通常yumを使ってリポジトリのパッケージをインストールする。)
外部リポジトリはCentOSの公式のリポジトリ以外の非公式のリポジトリのことを言う。
    • good
    • 0

rpmパッケージが置いてあるところですね。


CentOSでyumを使う場合は/etc/yum.repos.d/配下のファイルで指定しています。

私はDAGなんかは割と良く使います。
http://dag.wieers.com/rpm/
    • good
    • 2

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング