軟體-GNU(GPL)授權說明

轉自網路一篇文章,應該是個人對GPL授權說明最容易理解的一篇
 GNU(GPL) 說的是開源而不在收費,也就是說可以免費使用,但若有修改就需再開源給大家,若不開源就不符合. 因為開源就是大家提供的,若要付錢那要付給誰?? 所以GPL有些就會有商業版本,允許你付費修改可不需開源.
結論單單使用並不需付費.......

關於GPL協議的理解(開源與商用、免費與收費)
如果你使用並且修改了我的GPL軟體,那麼你的軟體也必須要開源,否則就不能使用我的軟體,你是否把你的軟體商用和我沒關係。比如,Oracle賣的不是軟體的版權,而是技術服務。MySQL作為一個開源資料庫,幾乎所有的使用者都只是通過自己的程式去操作這個資料庫,而不是改動原始碼,所以根本不用去考慮是否要遵循GPL,只有在你修改了MySQL原始碼的情況下,才要考慮GPL。
導讀:
    網路上多數朋友擔心甲骨文會對MySQL軟體採用收費模式,多數朋友也不清楚MySQL開源到底是什麼模式,開源=免費嘛?是很多的疑 問,MySQL是遵守雙重協議的,一個是GPL授權協議,一個是商用授權協議(註釋:為解決其他企業用MySQL軟體牟利或引用了MySQL的原始碼而不 想開源),雖然www.mysqlops.com也有寫關於MySQL版權的來龍去脈,但是這篇文章寫更透徹與詳盡,特轉載ITPUB上的帖子,希望大家
能夠更加清晰!
    最近剛把MySQL和GPL的玩法搞明白,很是慚愧,居然花了這麼久的時間才想通。不過聊以自慰的是,搞明白這個玩法的人真是不多,儘管有些人已經搞了很多年。
    看過GPL協議的人應該都會覺得一頭霧水,究竟GPL在講些什麼。我看過好幾遍,英文的原版、中文的各種譯文,都沒能真正理解,後來是從軟體行業的 歷史等等方面綜合考慮,才算是理解了。先總結一下我對GPL的理解,我認為GPL的精髓就是開源,和是否商用,是否收費完全沒有關係。GPL(General Public License), 其實從字面上就可以理解為公共許可證,也就是說遵循GPL的軟體是公共的,其實不存在什麼版權問題,或者說公眾都有版權,GPL提出了和版權 (copyright)完全相反的概念(copyleft)。而我經常聽到的說法是如果你的程式或系統引用了別的GPL軟體,並且向使用者收費,那麼你就需
要向引用的GPL軟體購買版權。聽上去很合理,如果你用我的軟體賺錢,那你當然應該向我支付一定的費用。但其實是錯誤的,正確的概念是如果你用了我的 GPL軟體,那麼必須你的軟體也要開源,如果你不開源,那麼就不能使用我的軟體,你是否把你的軟體商用和我沒關係,如果你不能遵循GPL協議來開源,那麼你付再多的錢也不能用GPL的軟體, 事實上很多GPL軟體是很多人共同完成的,每個人在前人的基礎上做出自己的貢獻,如果收費的話你把錢交給誰?提出 GPL協議的GNU希望做到的是通過開源來使軟體行業得到一個好的發展,試想如果你要做一個大型的軟體,不在前人的原始碼基礎上開發,那必然會是曠日持久
的,也會有很多重複勞動,顯然不利於軟體技術的發展。所以理解了GNU的精神,也就能理解GPL在說些什麼,其實就是開源。在現實生活中,我們受益於 GPL的地方,其實很多,幾乎所有的作業系統,除了windows,其他的幾乎都是基於linux開原始碼改寫的。
    再來談MySQL,這是個開源的資料庫,做技術的應該都知道。MySQL最早是瑞典的一家叫做MySQL AB的公司開發的,它是以雙授權的方式來發布MySQL。一種授權就是GPL,另一種授權就是商業授權。也就是如果你不能滿足GPL,那麼就走商業授權的 路線,向這個公司交錢。我覺得這公司有掛羊頭賣狗肉之嫌,想借著GPL快速傳播它的軟體,但又留著商業授權這個收費的口。後來這家公司以10億美金的價格 被Sun收購,接著Sun又被Oracle收購,MySQL成為了Oracle的東西。現在Oracle把MySQL分為三種產品,標準版、企業版和叢集
版。不談其中具體的差異,但都是以年度訂閱(subscription)的方式來賣的。這個subscription引起了我的疑問,如果使用者購買了一 年,那麼第二年使用者還要繼續付費才能合法使用?這三種版本都包含了一年的服務,那麼如果第二年使用者只需要用軟體而不需要服務,怎麼辦?Oracle官方沒 有一個說得過去的說法。後來我想通了,其實Oracle賣的不是軟體的版權,也不是寂寞,而是技術服務。所 有的GPL開源軟體都不能賣版權,因為是公共版 權,當然不能賣了。所以像redhat這類的開源軟體都是用subscription的方式來賺錢的。賺錢其實是合法的,GPL協議裡面寫了“Our
General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish)我們的GNU通用公共許可證決意保證你有釋出自由軟體的自由(如果你願意,你可以對此項服務收取一定的費用)”。但現在大眾的誤區是覺得購買的 是軟體產品的版權而不是服務。其實你要用GPL軟體在絕大部分情況下都是合法的,不存在版權問題,那麼在什麼情況下才算是非法的呢?
    前文一直提到“用”GPL軟體的情況,這個“用”可能並不合適,GPL的原文“the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program”保證你的共享和修改自由軟體的自由”。可以理解為你使用開源軟體並不受GPL約束,只有在你基於開源軟體,修改開源軟體的原始碼的時候才受 GPL約束。MySQL作為一個開源資料庫,幾乎所有的使用者都只是通過自己的程式去操作這個資料庫,不涉及到改動原始碼的問題,根本不用去考慮是否要遵循
GPL的問題。只有在你修改MySQL原始碼的情況下,才需要考慮GPL。
    如果我根據MySQL的原始碼開發出了一個新的資料庫,我覺得自己開發的原始碼非常的優秀,想靠這個賣錢,不想公開原始碼。那麼這種情況就無法滿足GPL 的規定,我沒法釋出我的資料庫。好在MySQL有個非常流氓的雙授權,我就可以購買其商業授權來達到我的目的。為什麼說這是流氓行為?因為既然MySQL 是根據GPL開源釋出,多多少少有各路人馬貢獻自己的原始碼才成為今天的MySQL,賣別人的勞動成果來讓自己受益,這就是流氓的做法。
    所以GPL就是一個為了保護軟體自由的一個協議,它強調的是開源,與錢無關。MySQL是一個雙授權的軟體,Oracle現在賣的是年度的服務(編者加註:另外主要收入來源是銷售資料庫維護工具), 如果你只是使用MySQL而不是改寫MySQL,那麼在這些情況下你應該考慮購買Oracle的商業版本,一是Oracle的商用版本提供的附加元件(監 控器、備份工具等)對你有價值,二是Oracle的年度技術支援是你需要的,三是各種潛規則。而不應該是你想合法的使用MySQL才去購買其商業版本。另 外,如果你是基於MySQL的原始碼開發你自己的產品,那麼你需要購買的是商業授權,而不是subscription這些商業版本。

文章引自
https://codertw.com/%E7%A8%8B%E5%BC%8F%E8%AA%9E%E8%A8%80/458679/
http://blog.csdn.net/szwangdf/article/details/27191085

這個網誌中的熱門文章

找事做-老屋改善(科帥氣炸鍋維修)

找事做-Android Auto 開啟開發模式(WiFi)

小米手環 GPX 匯出(MIFITTCXEXPORT)