1 1 3 關於GNU專案

2021-07-11 05:08:27 字數 2277 閱讀 1537

《鳥哥的linux私房菜 基礎學習篇(第三版)》第1章linux是什麼,本章介紹為何linux可以免除專利軟體之爭,並且了解到linux為何可以同時在個人計算機與大型主機上面大放光彩。本節為大家介紹關於gnu專案。

1.1.3 關於gnu專案

gnu專案對於整個自由軟體來說是占有非常重要的角色。下面我們就來談談吧!

自由軟體的活動

此外,史托曼同時認為,如果你將你程式的source code分享出來時,若該程式是很優秀的,那麼將會有很多人使用,而每個人對於該程式都可以查閱source code,無形之中,就會有很多人幫你排錯了!你的這個程式將會越來越壯大,越來越優秀。

自由軟體的版權gnu gpl

為什麼要稱為gnu呢?其實gnu是gnu's not unix的縮寫,意思是說,gnu並不是unix。那麼gnu又是什麼呢?就是gnu's not unix。如果你寫過程式就會知道,這個gnu = gnu's not unix可是無窮迴圈。

另外,什麼是open source呢?所謂的source是程式開發者編寫出的源程式**,open source就是,軟體在發布時,同時將作者的源**一起公布的意思。

自由(free)的真諦

"free software" is a matter of liberty, not price. to understand the concept, you should think of "free speech", not "free beer". "free software" refers to the users' freedom to run, copy, distribute, study, change, and improve the software。

大意是說,free software(自由軟體)是一種自由的權力,並非是"**"。舉例來說,你可以擁有自由呼吸的權力,你擁有自由發表言論的權力,但是,這並不代表你可以到處喝"免費的啤酒!(free beer)",也就是說,自由軟體的重點並不是指"免費"的,而是指具有"自由度"(freedom)的軟體,史托曼進一步說明了自由度的意義是:使用者可以自由執行、複製、再發行、學習、修改與強化自由軟體。

取得軟體與原始碼:你可以根據自己的需求來執行這個自由軟體。

複製:你可以自由複製該軟體。

修改:你可以將取得的原始碼進行程式修改工作,使之適合自己的工作。

再發行:你可以將你修改過的程式再度自由發行,而不會與原先的編寫者衝突。

回饋:你應該將你修改過的程式**回饋於社會!

但請特別留意,你所修改的任何乙個自由軟體都不應該也不能有下面這樣的要求:

修改授權:你不能將乙個gpl授權的自由軟體在你修改後而將它取消gpl授權。

單純銷售:你不能單純銷售自由軟體。

也就是說,既然gpl是站在互助互利的角度上去開發的,你自然不應該將大家的成果占為己有,因此你不可以將乙個gpl軟體的授權取消,即使你已經對該軟體進行大幅度的修改。那麼自由軟體也不能銷售嗎?當然不是!還記得上乙個小節裡面,我們提到史托曼通過銷售emacs取得一些經費。自由軟體是可以銷售的,不過,不可僅銷售該軟體,應同時搭配售後服務與相關手冊一起提供,這些可就需要工本費了呢!

自由軟體與商業行為

所以說,目前自由軟體工作者,他們所賴以維生的幾乎都是在"服務"這個領域。畢竟自由軟體並不是每個人都會編寫,有人需要你的自由軟體時,他就會請求你的協助,此時,你就可以通過服務來收費了。這樣來說,自由軟體確實還是具有商業空間的!

很多人對於gpl授權一直很疑惑,對於gpl的商業行為更是無法接受!關於這一點,鳥哥在這裡還是要再次宣告,gpl是可以從事商業行為的!。而很多的作者也是藉藉由這些商業行為來得以取得生活所需,更進一步去發展開發更優秀的自由軟體!。千萬不要聽到『"商業』"就排斥!。這對於發展開發優良軟體的朋友來說,是不禮貌的!。

上面提到的大多是與使用者有關的專案,那麼gpl對於自由軟體的作者有何優點呢?大致的優點有這些:

軟體安全性較佳;

軟體執行效能較佳;

軟體排錯時間較短;

貢獻的原始碼永遠都存在。

這是因為既然是open source的自由軟體,那麼你的程式**將會有很多人幫你查閱,如此一來,程式的漏洞與程式的優化將會進展得很快。所以,在安全性與效能上,自由軟體一點都不輸給商業軟體。此外,因為gpl授權當中,修改者並不能修改授權,因此,你如果曾經貢獻過程式**,你將名留青史。

對於程式開發者來說,gpl實在是乙個非常好的授權,因為大家可以互相學習對方的程式編寫技巧,而且自己寫的程式也有人可以幫忙排錯。那你會問的,對於我們這些廣大的終端使用者,gpl有沒有什麼好處呢?當然有!雖然終端使用者或許不會自己編譯程式**或者是幫人家排錯,但是終端使用者使用的軟體絕大部分就是gpl的軟體,全世界有一堆的工程師在幫你維護你的系統,這難道不是一件非常棒的事嗎?

關於mysql資料發生遠端連線報出1130的錯誤

error 1130 ip 位址 is not allowed to connect to this mysql server 這個是遠端伺服器沒有給與使用者連線的許可權 解決方式 1.伺服器登入mysql後,更改 mysql 資料庫裡的 user 表裡的 host 項,從 localhost 改稱...

關於專案依賴

在生成解決方案時,可能需要首先生成某些專案,以便生成由其他專案使用的可執行 使用 解決方案屬性頁 對話方塊 通用屬性 專案依賴項 設定當前生成順序。若要訪問此對話方塊,請在 解決方案資源管理器 中選擇乙個解決方案,選擇 檢視 選單上的 屬性頁 然後選擇 通用屬性 下的 專案依賴項 關於專案依賴項 當...

關於ViralHeat專案

發現自己越來越懶惰,日記很就沒寫了,以前一周到兩周會瀏覽一本書,現在一兩個月也看不完一本書,墮落了。開始想做點什麼,把我之前幾個月做的兩個外包專案簡單的回顧一下,也算是留下一點時間的痕跡吧。第乙個專案 viralheat 官網 ios客戶端完成的功能很簡單 1 把用的facebook twitter...