Linux必知词汇:开源软件协议-阿里云开发者社区

开发者社区> 阿里云术语库> 正文

Linux必知词汇:开源软件协议

简介: Linux必知词汇:开源软件协议

开源协议(Open Source License),是指开源软件所遵循的许可协议,获得了开源软件的用户,需要在该协议的允许范围内对软件的源代码进行使用、修改和发行(包括以盈利为目的商业发行)。常见的开源协议如下:

  1. The MIT License
  2. The GNU General Public License v2
  3. The Apache License
  4. The GNU General Public License v3
  5. The BSD License
  6. The GNU Lesser General Public License
  7. The Mozilla Public License (MPL)
  8. The Eclipse Public License

意义与历史:
自由软件的英文为“free software”。在英文里“free”一词有“自由”、“免费”的双重含意,对于如何区分自由软件(拉丁语:libre)和免费软件(拉丁语:gratis),自由软件运动社区的创始人——理查德·斯托曼做出了以下的定义:“自由软件的重点在于自由权,而非价格。要了解其所代表的概念,你应该将“free”想成是“言论自由”一词中的含义,而不是“免费啤酒”一词中的含义。”自由软件代表用户可以自由地运行、拷贝、分发、学习、修改并改进该软件。自由软件的定义可以追溯至GNU宣言。

大部分自由软件都在互联网上自由发布,往往不收取任何费用。一些或是以离线实体的方式发行,有时会酌情收取的费用(例如:工本费和运输费),而人们可用任何价格来贩售这些软件。所以,自由软件也可以是商业软件:因为自由软件许可证并不限制贩卖软件或者提供商业服务,这些并没有违反例如GPL等自由软件许可证[13]。因此,“自由软件”是关乎自由的问题,与价格无关,软件如何定价并不影响它是否被归类为自由软件。

自由软件的定义:
自由软件基金会(FSF)对自由软件的定义首次于1989年发表。[14]这份定义后来被布鲁斯·裴伦斯(Bruce Perens)改写为《Debian自由软件指导方针》1516。

根据斯托曼和自由软件基金会(FSF)的定义,自由软件赋予用户四种自由:[17]

自由之零:不论目的为何,有使用该软件的自由。
自由之一:有研究该软件如何运作的自由,并且得以修改该软件来符合用户自身的需求。获取该软件之源码为达成此目的之前提。
自由之二:有重新散布该软件的自由,所以每个人都可以借由散布自由软件来敦亲睦邻。
自由之三:有改善再利用该软件的自由,并且可以发表修订后的版本供公众使用,如此一来,整个社群都可以受惠。如前项,获取该软件之源码为达成此目的之前提。
如果一软件的用户具有上述四种权利,则该软件得以被称之为“自由软件”。也就是说,用户必须能够自由地、以不收费或是收取合理的散布费用的方式、在任何时间再散布该软件的原版或是改写版,在任何地方给任何人使用。如果用户不必问任何人或是支付任何的许可费用从事这些行为,就表示其拥有自由软件所赋予的自由权利。

相关词:
Copyright
Coprleft
GPLv1
GPLv2
GPLv3

资料来源
1.https://zh.wikipedia.org/wiki/%E8%87%AA%E7%94%B1%E8%BD%AF%E4%BB%B6

版权声明:本文中所有内容均属于阿里云开发者社区所有,任何媒体、网站或个人未经阿里云开发者社区协议授权不得转载、链接、转贴或以其他方式复制发布/发表。申请授权请邮件developerteam@list.alibaba-inc.com,已获得阿里云开发者社区协议授权的媒体、网站,在转载使用时必须注明"稿件来源:阿里云开发者社区,原文作者姓名",违者本社区将依法追究责任。 如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:developer2020@service.aliyun.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:

阿里云术语库提供术语的标准定义、缩略语、术语用法及多语言等,提供术语的增删改查等功能。

官方博客
官网链接