LinuCレベル1 102試験の例題と解説

1.11.1オープンソースの概念とライセンス

LinuCレベル1 102試験の出題範囲から「1.11.1 オープンソースの概念とライセンス」についての例題を解いてみます。
オープンソースのライセンスについて確認しておきましょう。

Linucレベル1 102試験 出題範囲


例題

以下の説明に該当するライセンスを1つ選択してください。

このライセンスが適用されるプログラムを改変した場合は、同一ライセンスの適用を求められるが、独立した自己開発部分については、ソースコードを非公開にできるなど、他のライセンス適用が認められている。

  1. GPL
  2. AGPL
  3. LGPL
  4. MPL

※この例題は実際の試験問題とは異なります。


解答と解説

正解は、「4. MPL」です。

オープンソースソフトウェアは、無償で公開されいてるソフトウェアです。
基本的には自由に改変でき、再配布が認められていますが、適用されているライセンスによって再配布時のルールやソースコードの提供義務、範囲が変わってきます。

選択肢の解説は以下です。

1. GPL
誤りです。
GPL(GNU General Public License)は、誰でも自由に複製、改変、配布することが可能なライセンスです。
GPLは、コピーレフトが適用されており、改変や再配布された複製物に対しても同様のライセンスを適用しなければなりません。また、他のプログラムと組み合わせて作成した複製物に対しても、同様のライセンスを適用しなければなりません。

つまり、GPLが適用されているプログラムから派生したプログラムは、独立した自己開発部分も含めGPLを適用して配布する必要があり他のライセンス適用は認められていないため、不正解となります。

2. AGPL
誤りです。
AGPL(GNU Affero General Public License)は、GPLの適用範囲を広げたライセンスです。
GPLと異なるのは、サーバ上でAGPLが適用されるプログラムやその改変プログラムを動作させ、ユーザーがサービスとして使用する場合にも、対象プログラムに対応するソースコードを開示する必要があるという点です。

AGPLは、GPLから派生したライセンスとなるため、独立した自己開発部分など他のプログラムと組み合わせて作成した複製物に対しても、AGPLのライセンスを適用しなければなりません。よって不正解となります。

3. LGPL
誤りです。
LGPL(GNU Lesser General Public License)は、主にライブラリ用に作成されたライセンスです。
LGPLでは、利用者自身の利用のための改変や、改変をデバッグするためのリバースエンジニアリングを認める、という条件を付ければLGPLでライセンスされたライブラリを使うプログラムを独自のライセンスで設定することができるようになっています。そのため、LGPLが適用されているプログラムを外部ライブラリとして呼び出す場合には、呼び出し元プログラムにLGPLを適用する必要はありません。

しかし、LGPLでライセンスされたOSSやその複製物については、ソースコードを開示する義務があります。
つまり、GPLと同様、独立した自己開発部分など他のプログラムと組み合わせて作成した複製物に対しては、LGPLのライセンスを適用しなければなりません。よって不正解となります。

4. MPL
正解です。
MPL(Mozilla Public License)は、GPLのコピーレフト性を少し緩めたライセンスです。
MPLが適用されたプログラムを改変した場合は、同一ライセンスの適用を求められますが、独立した自己開発部分については、ソースコードを非公開にできるなど、他のライセンス適用が認められています。
例えば、MPLライセンス適用ソフトウェアAと自作ソフトウェアBを組み合わせて、あるソフトウェアを作成した場合、Aの部分のソースコードは公開を求められますが、Bの部分は公開しなくてもよいということになります。

よって、例題の説明にに一致するため、正解となります。

使用するOSSにどのライセンスが適用されるのか、またそのライセンス条件については必ず確認するようにしましょう。


例題作成者

株式会社デージーネット OSS研究室 橋本知里

ページトップへ