我擔心在商業生產環境中使用GPL v2和GPL v3許可軟件。我想使用HaProxy作爲負載平衡解決方案。對拷貝是否安全?我不會修改源代碼中的任何內容,並且系統的體系結構需要使用負載平衡器。我可以在商業環境中使用GPL軟件二進制文件嗎?
它將被嵌入到一個更大的分佈式系統中。所以我們賣的是整個系統。在另一個網站上,我們將需要再次安裝負載平衡器,並可能與其他內容混合使用。我認爲這是令我困惑的「分佈式」術語。
我擔心在商業生產環境中使用GPL v2和GPL v3許可軟件。我想使用HaProxy作爲負載平衡解決方案。對拷貝是否安全?我不會修改源代碼中的任何內容,並且系統的體系結構需要使用負載平衡器。我可以在商業環境中使用GPL軟件二進制文件嗎?
它將被嵌入到一個更大的分佈式系統中。所以我們賣的是整個系統。在另一個網站上,我們將需要再次安裝負載平衡器,並可能與其他內容混合使用。我認爲這是令我困惑的「分佈式」術語。
如果你不修改源文件和使用二進制文件,你應該完全清楚。
HAProxy的是GPLv2的,所以你可以以二進制形式重新發布它提供你提供足夠的信息去哪裏獲取來源,重建它的最終用戶。您還需要告知他們有關構建選項/環境的信息,因爲如果沒有這些選項/環境,他們可能無法獲得相同的功能。
當你有這幾點疑問,請記住,在GPL的目標是要確保,如果你消失了,你的客戶就不會留下一個bug的軟件,他們無法修復。所以你只需要提供它們就意味着不依賴於你的可用性。當你牢記這一點時,做出正確選擇要容易得多。如果你試圖做到這一點,真誠總是值得的,但因爲你沒有想過所有事情而失敗。
另外,請注意,無論何時開始分發軟件,你的一些客戶會要求的具體變化,以更好地滿足他們的需要。起初,你會拒絕,但是在失去一些想要完全相同的次要功能的客戶之後,你會接受。然後,您將修補代碼並感到尷尬,因爲您無法將客戶指向原始網站以獲取代碼。
有兩種方法可供選擇: - 補丁是一般使用的,你不想要維護它。只需將其提交給主流即可。如果它被接受,你可以更新你的版本,不需要維護一個補丁了; - 該修補程序針對的客戶太多,並且沒有被接受的機會,因此您需要將它與構建說明一起提供給客戶,以便客戶仍然可以獲取正式版本,進行修補並構建它。
一個可能的典型的補丁是刪除一些名稱/網址/版本等的文檔,以使它看起來更乾淨,更好地整合與您的解決方案。如果您提供刪除這些信息的補丁,則刪除這些信息是正確的。這樣就沒有混淆,你的改變是透明的。
在任何情況下,如果您發現錯誤並認爲已修復該錯誤,強烈建議您將其提交以供審覈,因爲通常會修復後果而不是原因。
關於您的問題的標題的另一點「我可以在商業環境中使用GPL軟件二進制文件嗎?」 :是的,你可以,你甚至鼓勵你這樣做。我們在商業環境中擁有的免費軟件越多,我們就必須解決生產中遇到的問題。
我投票結束這個問題作爲題外話題,因爲它涉及許可和法律問題,而不是編程或軟件開發。 [見這裏](http://meta.stackoverflow.com/a/274964/1402846)瞭解更多信息,以及[幫助/話題]。 – Pang 2015-06-08 01:34:34