1、啥是linux? Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX和Unix的多用戶、多任務、支持多線程和多CPU的操作系統。 它能運行主要的Unix工具軟體、應用程式和網路協議。它支持32位和64位硬體。Linux繼承了Unix以網路為核心的設計思想,是一個性能穩定 ...
1、啥是linux?
Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX和Unix的多用戶、多任務、支持多線程和多CPU的操作系統。
它能運行主要的Unix工具軟體、應用程式和網路協議。它支持32位和64位硬體。Linux繼承了Unix以網路為核心的設計思想,是一個性能穩定的多用戶網路操作系統。
linux廣泛用於網站伺服器。
- 在全球網站伺服器中,使用Linux作為伺服器的網站接近80%。
世界超級電腦500強。
- 操作系統絕大部分被都為linux系統。
Linux在嵌入式領域應用。
- 手機、平板電腦
- 智能家電:機頂盒、游戲機、數位相機等
- 智能卡系統
- 航空系統
- 銀行系統
- 卡拉OK點歌系
2、linux特點
- 開源與免費的操作系統
- 更加安全
- 更加穩定
- 適合伺服器使用
3、linux發展史。
說到Linux不得不先說Unix。以下部分內容摘取於維基百科。
UNIX操作系統,是一個強大的多用戶、多任務操作系統,支持多種處理器架構,按照操作系統的分類,屬於分時操作系統,最早由Ken Thompson、Dennis Ritchie和Douglas McIlroy於1969年在AT&T的貝爾實驗室開發。當前它的商標權由國際開放標準組織所擁有,只有符合單一UNIX規範的UNIX系統才能使用UNIX這個名稱,否則只能稱為類UNIX(UNIX-like)。
Unix的前身為1964年開始的Multics,貝爾實驗室 (Bell Labs)1965年時,加入一項由通用電氣(General Electric)和麻省理工學院(MIT)合作 的計劃;該計劃要創建一套多用戶、多任務、多層次(multi-user、multi-processor、multi-level)的MULTICS操作系統。貝爾實驗室參與了這個操作系統的研發,但因為開發速度太慢,1969年貝爾實驗室決定退出這個計劃。貝爾實驗室的工程師,肯·湯普遜和丹尼斯·里奇,在此時自行開發了Unix。
後來AT&T意識到了Unix的商業價值,不再將Unix源碼授權給學術機構,並對之前的Unix及其變種聲明瞭著作權權利。BSD在Unix的歷史發展中具有相當大的影響力,被很多商業廠家採用,成為很多商用Unix的基礎。其不斷增大的影響力終於引起了AT&T的關註,於是開始了一場持久的著作權官司,這場官司一直打到AT&T將自己的Unix系統實驗室賣掉,新接手的Novell採取了一種比較開明的做法,允許柏克萊分校自由發佈自己的Unix變種,但是前提是必須將來自於AT&T的代碼完全刪除,於是誕生了4.4 BSD Lite版,由於這個版本不存在法律問題,4.4 BSD Lite成為了現代柏克萊軟體包的基礎版本。儘管後來,非商業版的Unix系統又經過了很多演變,但其中有不少最終都是創建在BSD版本上(Linux、Minix等系統除外)。所以從這個角度上,4.4 BSD 又是所有自由版本Unix的基礎,它們和System V及Linux等共同構成Unix操作系統這片璀璨的星空。
此後的10年,Unix在學術機構和大型企業中得到了廣泛的應用,當時的UNIX擁有者AT&T公司以低廉甚至免費的許可將Unix源碼授權給學術機構做研究或教學之用,許多機構在此源碼基礎上加以擴展和改進,形成了所謂的“Unix變種”,這些變種反過來也促進了Unix的發展,其中最著名的變種之一是由加州大學柏克萊分校開發的伯克利軟體套件(BSD)產品。
BSD使用主版本加次版本的方法標識,如4.2、4.3BSD,在原始版本的基礎上還有派生版本,這些版本通常有自己的名字,如4.3BSD-Net/1,4.3BSD-Net/2等。BSD在發展中也逐漸派生出3個主要的分支:FreeBSD、OpenBSD和NetBSD。
此後的幾十年中,Unix仍在不斷變化,其著作權所有者不斷變更,授權者的數量也在增加。Unix的著作權曾經為AT&T所有,之後Novell擁有獲取了Unix,再之後Novell又將著作權出售給了聖克魯茲作業,但不包括知識產權和專利權(這一事實雙方尚存在爭議)。有很多大公司在獲取了Unix的授權之後,開發了自己的Unix產品,比如IBM的AIX、HP的HP-UX、SCO的Openserver、SUN的Solaris(被Oracle收購)和SGI的IRIX。
Unix因為其安全可靠,高效強大的特點在伺服器領域得到了廣泛的應用。直到GNU/Linux流行開始前,Unix也是科學計算、大型機、超級電腦等所用操作系統的主流。現在其仍然被應用於一些對穩定性要求極高的數據中心之上。
常見unix發行版本。
接下來說到我們的正主了linux。
1991年,林納斯·托瓦茲在赫爾辛基大學上學時,對操作系統很好奇他對MINIX只允許在教育上使用很不滿(在當時MINIX不允許被用作任何商業使用),於是他便開始寫他自己的操作系統,這就是後來的Linux內核。林納斯·托瓦茲開始在MINIX上開發Linux內核,為MINIX寫的軟體也可以在Linux內核上使用。後來使用GNU軟體代替MINIX的軟體,因為使用從GNU系統來的源代碼可以自由使用,這對Linux的發展有益。使用GNU GPL協議的源代碼可以被其他項目所使用,只要這些項目使用同樣的協議發佈。為了讓Linux可以在商業上使用,林納斯·托瓦茲決定更改他原來的協議(這個協議會限制商業使用),以GNU GPL協議來代替。之後許多開發者致力融合GNU元素到Linux中,做出一個有完整功能的、自由的操作系統。
linux系統架構
基於Linux的系統是一個模塊化的類Unix操作系統。Linux操作系統的大部分設計思想來源於20世紀70年代到80年代的Unix操作系統所創建的基本設計思想。Linux系統使用巨集內核,由Linux內核負責處理進程式控制制、網路,以及外圍設備和文件系統的訪問。在系統運行的時候,設備驅動程式要麼與內核直接集成,要麼以載入模塊形式添加。
Linux具有設備獨立性,它內核具有高度適應能力,從而給系統提供了更高級的功能。GNU用戶界面組件是大多數Linux操作系統的重要組成部分,提供常用的C函數庫,Shell,還有許多常見的Unix實用工具,可以完成許多基本的操作系統任務。大多數Linux系統使用的圖形用戶界面創建在X視窗系統之上,由X視窗(XWindow)系統通過軟體工具及架構協議來創建操作系統所用的圖形用戶界面。
已安裝Linux操作系統包含的一些組件:
啟動程式:例如GRUB或LILO。該程式在電腦開機啟動的時候運行,並將Linux內核載入到記憶體中。
init程式:init是由Linux內核創建的第一個進程,稱為根進程,所有的系統進程都是它的子進程,即所有的進程都是通過init啟動。init啟動的進程如系統服務和登錄提示(圖形或終端模式的選擇)。
軟體庫包含代碼:可以通過運行的進程在Linux系統上使用ELF格式來執行文件,負責管理庫使用的動態鏈接器是“ld-linux.so”。Linux系統上最常用的軟體庫是GNU C庫。
用戶界面程式:如命令行Shell或視窗環境。
linux特性
- 基本思想
Linux的基本思想有兩點:第一,一切都是文件;第二,每個軟體都有確定的用途。其中第一條詳細來講就是系統中的所有都歸結為一個文件,包括命令、硬體和軟體設備、操作系統、進程等等對於操作系統內核而言,都被視為擁有各自特性或類型的文件。至於說Linux是基於Unix的,很大程度上也是因為這兩者的基本思想十分相近。 - 完全免費
Linux是一款免費的操作系統,用戶可以通過網路或其他途徑免費獲得,並可以任意修改其源代碼。這是其他的操作系統所做不到的。正是由於這一點,來自全世界的無數程式員參與了Linux的修改、編寫工作,程式員可以根據自己的興趣和靈感對其進行改變,這讓Linux吸收了無數程式員的精華,不斷壯大。 - 完全相容POSIX1.0標準
這使得可以在Linux下通過相應的模擬器運行常見的DOS、Windows的程式。這為用戶從Windows轉到Linux奠定了基礎。許多用戶在考慮使用Linux時,就想到以前在Windows下常見的程式是否能正常運行,這一點就消除了他們的疑慮。 - 多用戶、多任務
Linux支持多用戶,各個用戶對於自己的文件設備有自己特殊的權利,保證了各用戶之間互不影響。多任務則是現在電腦最主要的一個特點,Linux可以使多個程式同時並獨立地運行。 - 良好的界面
Linux同時具有字元界面和圖形界面。在字元界面用戶可以通過鍵盤輸入相應的指令來進行操作。它同時也提供了類似Windows圖形界面的X-Window系統,用戶可以使用滑鼠對其進行操作。在X-Window環境中就和在Windows中相似,可以說是一個Linux版的Windows。
支持多種平臺 - Linux可以運行在多種硬體平臺上,如具有x86、680x0、SPARC、Alpha等處理器的平臺。此外Linux還是一種嵌入式操作系統,可以運行在掌上電腦、機頂盒或游戲機上。2001年1月份發佈的Linux 2.4版內核已經能夠完全支持Intel64位晶元架構。同時Linux也支持多處理器技術。多個處理器同時工作,使系統性能大大提高。
版本分類:
內核版 www.kernel.org
- RHEL6.x 2.6.x
- REHL7.x 3.10.x
Linux發行版(列舉的都是比較主流的。)
- 基於RPM(Red Hat系)
• Fedora:可用作工作站、桌面以及伺服器,由紅帽公司及其社群開發 。
• 伺服器版:RHEL(RedHat Enterprise Linux)。
• SUSE/openSUSE:來自德國,是歐洲最流行的套件之一. - 基於Dpkg(Debian系)
•Ubuntu
•Deepin
4、開源軟體。
什麼是開源軟體
開源軟體(英語:open source software,縮寫:OSS)又稱開放源代碼軟體,是一種源代碼可以任意獲取的電腦軟體,這種軟體的著作權持有人在軟體協議的規定之下保留一部分權利並允許用戶學習、修改以及以任何目的向任何人分發該軟體。開源協議通常符合開放源代碼的定義的要求。一些開源軟體被髮布到公有領域。開源軟體常被公開和合作地開發。開源軟體是開放源代碼開發的最常見的例子,也經常與用戶生成內容做比較[1]。 開源軟體的英文“open-source software”一詞出自自由軟體的營銷活動中。開源軟體同時也是一種軟體散佈模式。一般的軟體僅可獲取已經過編譯的二進位可執行檔,通常只有軟體的作者或著作權所有者等擁有程式的源代碼。
有些軟體的作者只將源代碼公開,卻不符合“開放源代碼”的定義及條件,因為作者可能設置公開源代碼的條件限制,諸如限制可閱讀源代碼的對象、限制派生產品等,此稱之為公開源代碼的免費軟體(Freeware,例如知名的網路論壇軟體Discuz!),因此公開源代碼的軟體並不一定可稱之為開放源代碼軟體。
• Apache: web伺服器
• Nginx: web伺服器
• MySQL: 資料庫(SQLserver , Oracle)
• PHP: 腳本語言
• Samba: Linux和windows之間的內網文件伺服器
• MongoDB: NoSQL資料庫 redis
• Python: 腳本語言
• Ruby: 腳本語言
• Sphinx: 中文分詞
開源軟體特性
★ 使用的自由 絕大多數開源軟體免費
★ 研究的自由 可以獲得軟體源代碼
★ 散佈及改良的自由 可以自由傳播、改良甚至銷售。