中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

什么是Linux?Linux快速簡易入門

2021-03-01    分類: 網(wǎng)站建設(shè)

Linux是一個操作系統(tǒng)平臺。我們平時常用的操作系統(tǒng) Linux系統(tǒng)

如果你以前從未接觸過Linux,可能就不清楚為什么會有這么多不同的Linux發(fā)行版。在查看Linux軟件包時,你肯定被發(fā)行版、LiveCD和GNU之類的術(shù)語搞暈過。初次進(jìn)入Linux世界會讓人覺得不那么得心應(yīng)手。在開始學(xué)習(xí)命令和腳本之前,我們將為你稍稍揭開Linux系統(tǒng)的神秘面紗。

Linux可劃分為以下四部分:

  • Linux內(nèi)核
  • GNU工具
  • 圖形化桌面環(huán)境
  • 應(yīng)用軟件

每一部分在Linux系統(tǒng)中各司其職。但就單個部分而言,其作用并不大。圖1是一個基本結(jié)構(gòu)框圖,展示了各部分是如何協(xié)作起來構(gòu)成整個Linux系統(tǒng)的。下面我們將詳細(xì)介紹這四部分,然后概述它們?nèi)绾瓮ㄟ^協(xié)作構(gòu)成一個完整的Linux系統(tǒng)。

圖1 Linux系統(tǒng)

深入探究Linux內(nèi)核

Linux系統(tǒng)的核心是內(nèi)核。內(nèi)核控制著計(jì)算機(jī)系統(tǒng)上的所有硬件和軟件,在必要時分配硬件,并根據(jù)需要執(zhí)行軟件。

Linus還在赫爾辛基大學(xué)上學(xué)時就開發(fā)了第一版Linux內(nèi)核。起初他只是想仿造一款Unix系統(tǒng)而已,因?yàn)楫?dāng)時Unix操作系統(tǒng)在很多大學(xué)都很流行。

Linus完成了開發(fā)工作后,將Linux內(nèi)核發(fā)布到了互聯(lián)網(wǎng)社區(qū),并征求改進(jìn)意見。這個簡單的舉動引發(fā)了計(jì)算機(jī)操作系統(tǒng)領(lǐng)域內(nèi)的一場革命。很快,Linus就收到了來自世界各地的學(xué)生和專業(yè)程序員的各種建議。

如果誰都可以修改內(nèi)核程序代碼,那么隨之而來的將是徹底的混亂。為了簡單起見,Linus擔(dān)當(dāng)起了所有改進(jìn)建議的把關(guān)員。能否將建議代碼并入內(nèi)核完全取決于Linus。時至今日,這種概念依然在Linux內(nèi)核代碼開發(fā)過程中沿用,不同的是,現(xiàn)在是由一組開發(fā)人員來做這件事,而不再是Linus一個人。

內(nèi)核主要負(fù)責(zé)以下四種功能:

下面我們進(jìn)一步探究以上每一種功能。

1. 系統(tǒng)內(nèi)存管理

操作系統(tǒng)內(nèi)核的主要功能之一就是內(nèi)存管理。內(nèi)核不僅管理服務(wù)器上的可用物理內(nèi)存,還可以創(chuàng)建和管理虛擬內(nèi)存(即實(shí)際并不存在的內(nèi)存)。

內(nèi)核通過硬盤上的存儲空間來實(shí)現(xiàn)虛擬內(nèi)存,這塊區(qū)域稱為交換空間(swap space)。內(nèi)核不斷地在交換空間和實(shí)際的物理內(nèi)存之間反復(fù)交換虛擬內(nèi)存中的內(nèi)容。這使得系統(tǒng)以為它擁有比物理內(nèi)存更多的可用內(nèi)存(如圖2所示)。

圖2 Linux系統(tǒng)內(nèi)存映射

內(nèi)存存儲單元按組劃分成很多塊,這些塊稱作頁面(page)。內(nèi)核將每個內(nèi)存頁面放在物理內(nèi)存或交換空間。然后,內(nèi)核會維護(hù)一個內(nèi)存頁面表,指明哪些頁面位于物理內(nèi)存內(nèi),哪些頁面被換到了磁盤上。

內(nèi)核會記錄哪些內(nèi)存頁面正在使用中,并自動把一段時間未訪問的內(nèi)存頁面復(fù)制到交換空間區(qū)域(稱為換出,swapping out)——即使還有可用內(nèi)存。當(dāng)程序要訪問一個已被換出的內(nèi)存頁面時,內(nèi)核必須從物理內(nèi)存換出另外一個內(nèi)存頁面給它讓出空間,然后從交換空間換入請求的內(nèi)存頁面。顯然,這個過程要花費(fèi)時間,拖慢運(yùn)行中的進(jìn)程。只要Linux系統(tǒng)在運(yùn)行,為運(yùn)行中的程序換出內(nèi)存頁面的過程就不會停歇。

2. 軟件程序管理

Linux操作系統(tǒng)將運(yùn)行中的程序稱為進(jìn)程。進(jìn)程可以在前臺運(yùn)行,將輸出顯示在屏幕上,也可以在后臺運(yùn)行,隱藏到幕后。內(nèi)核控制著Linux系統(tǒng)如何管理運(yùn)行在系統(tǒng)上的所有進(jìn)程。

內(nèi)核創(chuàng)建了第一個進(jìn)程(稱為init進(jìn)程)來啟動系統(tǒng)上所有其他進(jìn)程。當(dāng)內(nèi)核啟動時,它會將init進(jìn)程加載到虛擬內(nèi)存中。內(nèi)核在啟動任何其他進(jìn)程時,都會在虛擬內(nèi)存中給新進(jìn)程分配一塊專有區(qū)域來存儲該進(jìn)程用到的數(shù)據(jù)和代碼。

一些Linux發(fā)行版使用一個表來管理在系統(tǒng)開機(jī)時要自動啟動的進(jìn)程。在Linux系統(tǒng)上,這個表通常位于專門文件/etc/inittab中。

另外一些系統(tǒng)(比如現(xiàn)在流行的Ubuntu Linux發(fā)行版)則采用/etc/init.d目錄,將開機(jī)時啟動或停止某個應(yīng)用的腳本放在這個目錄下。這些腳本通過/etc/rcX.d目錄下的入口(entry)*啟動,這里的X代表運(yùn)行級(run level)。

*這些入口實(shí)際上是到/etc/init.d目錄中啟動腳本的符號鏈接。

Linux操作系統(tǒng)的init系統(tǒng)采用了運(yùn)行級。運(yùn)行級決定了init進(jìn)程運(yùn)行/etc/inittab文件或/etc/rcX.d目錄中定義好的某些特定類型的進(jìn)程。Linux操作系統(tǒng)有5個啟動運(yùn)行級。

運(yùn)行級為1時,只啟動基本的系統(tǒng)進(jìn)程以及一個控制臺終端進(jìn)程。我們稱之為單用戶模式。單用戶模式通常用來在系統(tǒng)有問題時進(jìn)行緊急的文件系統(tǒng)維護(hù)。顯然,在這種模式下,僅有一個人(通常是系統(tǒng)管理員)能登錄到系統(tǒng)上操作數(shù)據(jù)。

標(biāo)準(zhǔn)的啟動運(yùn)行級是3。在這個運(yùn)行級上,大多數(shù)應(yīng)用軟件,比如網(wǎng)絡(luò)支持程序,都會啟動。另一個Linux中常見的運(yùn)行級是5。在這個運(yùn)行級上系統(tǒng)會啟動圖形化的X Window系統(tǒng),允許用戶通過圖形化桌面窗口登錄系統(tǒng)。

Linux系統(tǒng)可以通過調(diào)整啟動運(yùn)行級來控制整個系統(tǒng)的功能。通過將運(yùn)行級從3調(diào)整成5,系統(tǒng)就可以從基于控制臺的系統(tǒng)變成更先進(jìn)的圖形化X Window系統(tǒng)。

3. 硬件設(shè)備管理

內(nèi)核的另一職責(zé)是管理硬件設(shè)備。任何Linux系統(tǒng)需要與之通信的設(shè)備,都需要在內(nèi)核代碼中加入其驅(qū)動程序代碼。驅(qū)動程序代碼相當(dāng)于應(yīng)用程序和硬件設(shè)備的中間人,允許內(nèi)核與設(shè)備之間交換數(shù)據(jù)。在Linux內(nèi)核中有兩種方法用于插入設(shè)備驅(qū)動代碼:

以前,插入設(shè)備驅(qū)動代碼的唯一途徑是重新編譯內(nèi)核。每次給系統(tǒng)添加新設(shè)備,都要重新編譯一遍內(nèi)核代碼。隨著Linux內(nèi)核支持的硬件設(shè)備越來越多,這個過程變得越來越低效。不過好在Linux開發(fā)人員設(shè)計(jì)出了一種更好的將驅(qū)動代碼插入運(yùn)行中的內(nèi)核的方法。

開發(fā)人員提出了內(nèi)核模塊的概念。它允許將驅(qū)動代碼插入到運(yùn)行中的內(nèi)核而無需重新編譯內(nèi)核。同時,當(dāng)設(shè)備不再使用時也可將內(nèi)核模塊從內(nèi)核中移走。這種方式極大地簡化和擴(kuò)展了硬件設(shè)備在Linux上的使用。

Linux系統(tǒng)將硬件設(shè)備當(dāng)成特殊的文件,稱為設(shè)備文件。設(shè)備文件有3種分類:

字符型設(shè)備文件是指處理數(shù)據(jù)時每次只能處理一個字符的設(shè)備。大多數(shù)類型的調(diào)制解調(diào)器和終端都是作為字符型設(shè)備文件創(chuàng)建的。塊設(shè)備文件是指處理數(shù)據(jù)時每次能處理大塊數(shù)據(jù)的設(shè)備,比如硬盤。

網(wǎng)絡(luò)設(shè)備文件是指采用數(shù)據(jù)包發(fā)送和接收數(shù)據(jù)的設(shè)備,包括各種網(wǎng)卡和一個特殊的回環(huán)設(shè)備。這個回環(huán)設(shè)備允許Linux系統(tǒng)使用常見的網(wǎng)絡(luò)編程協(xié)議同自身通信。

Linux為系統(tǒng)上的每個設(shè)備都創(chuàng)建一種稱為節(jié)點(diǎn)的特殊文件。與設(shè)備的所有通信都通過設(shè)備節(jié)點(diǎn)完成。每個節(jié)點(diǎn)都有唯一的數(shù)值對供Linux內(nèi)核標(biāo)識它。數(shù)值對包括一個主設(shè)備號和一個次設(shè)備號。類似的設(shè)備被劃分到同樣的主設(shè)備號下。次設(shè)備號用于標(biāo)識主設(shè)備組下的某個特定設(shè)備。

4. 文件系統(tǒng)管理

不同于其他一些操作系統(tǒng),Linux內(nèi)核支持通過不同類型的文件系統(tǒng)從硬盤中讀寫數(shù)據(jù)。除了自有的諸多文件系統(tǒng)外,Linux還支持從其他操作系統(tǒng)(比如Microsoft Windows)采用的文件系統(tǒng)中讀寫數(shù)據(jù)。內(nèi)核必須在編譯時就加入對所有可能用到的文件系統(tǒng)的支持。表1列出了Linux系統(tǒng)用來讀寫數(shù)據(jù)的標(biāo)準(zhǔn)文件系統(tǒng)。

表1 Linux文件系統(tǒng)

Linux服務(wù)器所訪問的所有硬盤都必須格式化成表1所列文件系統(tǒng)類型中的一種。

Linux內(nèi)核采用虛擬文件系統(tǒng)(Virtual File System,VFS)作為和每個文件系統(tǒng)交互的接口。這為Linux內(nèi)核同任何類型文件系統(tǒng)通信提供了一個標(biāo)準(zhǔn)接口。當(dāng)每個文件系統(tǒng)都被掛載和使用時,VFS將信息都緩存在內(nèi)存中。

GNU工具

除了由內(nèi)核控制硬件設(shè)備外,操作系統(tǒng)還需要工具來執(zhí)行一些標(biāo)準(zhǔn)功能,比如控制文件和程序。Linus在創(chuàng)建Linux系統(tǒng)內(nèi)核時,并沒有可用的系統(tǒng)工具。然而他很幸運(yùn),就在開發(fā)Linux內(nèi)核的同時,有一群人正在互聯(lián)網(wǎng)上共同努力,模仿Unix操作系統(tǒng)開發(fā)一系列標(biāo)準(zhǔn)的計(jì)算機(jī)系統(tǒng)工具。

GNU組織(GNU是GNU's Not Unix的縮寫)開發(fā)了一套完整的Unix工具,但沒有可以運(yùn)行它們的內(nèi)核系統(tǒng)。這些工具是在名為開源軟件(open source software,OSS)的軟件理念下開發(fā)的。

開源軟件理念允許程序員開發(fā)軟件,并將其免費(fèi)發(fā)布。任何人都可以使用、修改該軟件,或?qū)⒃撥浖蛇M(jìn)自己的系統(tǒng),無需支付任何授權(quán)費(fèi)用。將Linus的Linux內(nèi)核和GNU操作系統(tǒng)工具整合起來,就產(chǎn)生了一款完整的、功能豐富的免費(fèi)操作系統(tǒng)。

盡管通常將Linux內(nèi)核和GNU工具的結(jié)合體稱為Linux,但你也會在互聯(lián)網(wǎng)上看到一些Linux純粹主義者將其稱為GNU/Linux系統(tǒng),藉此向GNU組織所作的貢獻(xiàn)致意。

1. 核心GNU工具

GNU項(xiàng)目的主旨在于為Unix系統(tǒng)管理員設(shè)計(jì)出一套類似于Unix的環(huán)境。這個目標(biāo)促使該項(xiàng)目移植了很多常見的Unix系統(tǒng)命令行工具。供Linux系統(tǒng)使用的這組核心工具被稱為coreutils(core utilities)軟件包。

GNU coreutils軟件包由三部分構(gòu)成:

這三組主要工具中的每一組都包含一些對Linux系統(tǒng)管理員和程序員至關(guān)重要的工具。

2. shell

GNU/Linux shell是一種特殊的交互式工具。它為用戶提供了啟動程序、管理文件系統(tǒng)中的文件以及運(yùn)行在Linux系統(tǒng)上的進(jìn)程的途徑。shell的核心是命令行提示符。命令行提示符是shell負(fù)責(zé)交互的部分。它允許你輸入文本命令,然后解釋命令,并在內(nèi)核中執(zhí)行。

shell包含了一組內(nèi)部命令,用這些命令可以完成諸如復(fù)制文件、移動文件、重命名文件、顯示和終止系統(tǒng)中正運(yùn)行的程序等操作。shell也允許你在命令行提示符中輸入程序的名稱,它會將程序名傳遞給內(nèi)核以啟動它。

你也可以將多個shell命令放入文件中作為程序執(zhí)行。這些文件被稱作shell腳本。你在命令行上執(zhí)行的任何命令都可放進(jìn)一個shell腳本中作為一組命令執(zhí)行。這為創(chuàng)建那種需要把幾個命令放在一起來工作的工具提供了便利。

在Linux系統(tǒng)上,通常有好幾種Linux shell可用。不同的shell有不同的特性,有些更利于創(chuàng)建腳本,有些則更利于管理進(jìn)程。所有Linux發(fā)行版默認(rèn)的shell都是bash shell。bash shell由GNU項(xiàng)目開發(fā),被當(dāng)作標(biāo)準(zhǔn)Unix shell——Bourne shell(以創(chuàng)建者的名字命名)的替代品。bash shell的名稱就是針對Bourne shell的拼寫所玩的一個文字游戲,稱為Bourne again shell。

表2列出了Linux中常見的幾種不同shell。

表 2 Linux shell

大多數(shù)Linux發(fā)行版包含多個shell,但它們通常會采用其中一個作為默認(rèn)shell。如果你的Linux發(fā)行版包含多個shell,就請盡情嘗試不同的shell,看看哪個能滿足你的需要。

Linux桌面環(huán)境

在Linux的早期(20世紀(jì)90年代初期),能用的只有一個簡單的Linux操作系統(tǒng)文本界面。這個文本界面允許系統(tǒng)管理員運(yùn)行程序,控制程序的執(zhí)行,以及在系統(tǒng)中移動文件。

隨著Microsoft Windows的普及,電腦用戶已經(jīng)不再滿足于對著老式的文本界面工作了。這推動了OSS社區(qū)的更多開發(fā)活動,Linux圖形化桌面環(huán)境應(yīng)運(yùn)而生。

完成工作的方式不止一種,Linux一直以來都以此而聞名。在圖形化桌面上更是如此。Linux有各種圖形化桌面可供選擇。下面介紹其中一些比較流行的桌面。

1. X Window系統(tǒng)

有兩個基本要素決定了視頻環(huán)境:顯卡和顯示器。要在電腦上顯示絢麗的畫面,Linux軟件就得知道如何與這兩者互通。X Window軟件是圖形顯示的核心部分。

X Window軟件是直接和PC上的顯卡及顯示器打交道的底層程序。它控制著Linux程序如何在電腦上顯示出漂亮的窗口和圖形。

Linux并非唯一使用X Window的操作系統(tǒng),它有針對不同操作系統(tǒng)的版本。在Linux世界里,能夠?qū)崿F(xiàn)X Window的軟件包可不止一種。

其中最流行的軟件包是X.org。它提供了X Window系統(tǒng)的開源實(shí)現(xiàn),支持當(dāng)前市面上的很多新顯卡。

另外兩個X Window軟件包也日漸流行。Fedora Linux發(fā)行版采用了試驗(yàn)性的Wayland軟件;Ubuntu Linux發(fā)行版開發(fā)出了Mir顯示服務(wù)器,用于其桌面環(huán)境。

在首次安裝Linux發(fā)行版時,它會檢測顯卡和顯示器,然后創(chuàng)建一個含有必要信息的X Window配置文件。在安裝過程中,你可能會注意到安裝程序會檢測一次顯示器,以此來確定所支持的視頻模式。有時這會造成顯示器黑屏幾秒。由于現(xiàn)在有多種不同類型的顯卡和顯示器,這個過程可能會需要一段時間來完成。

核心的X Window軟件可以產(chǎn)生圖形化顯示環(huán)境,但僅此而已。雖然對于運(yùn)行獨(dú)立應(yīng)用這已經(jīng)足夠,但在日常PC使用中卻并不是那么有用。它沒有桌面環(huán)境供用戶操作文件或是開啟程序。為此,你需要一個建立在X Window系統(tǒng)軟件之上的桌面環(huán)境。

2. KDE桌面

KDE(K Desktop Environment,K桌面環(huán)境)最初于1996年作為開源項(xiàng)目發(fā)布。它會生成一個類似于Microsoft Windows的圖形化桌面環(huán)境。如果你是Windows用戶,KDE就集成了所有你熟悉的功能。圖1-3展示了運(yùn)行在openSuSE Linux發(fā)行版上的KDE 4桌面。

圖 3 openSuSE Linux系統(tǒng)上的KDE 4桌面

KDE桌面允許你把應(yīng)用程序圖標(biāo)和文件圖標(biāo)放置在桌面的特定位置上。單擊應(yīng)用程序圖標(biāo),Linux系統(tǒng)就會運(yùn)行該應(yīng)用程序。單擊文件圖標(biāo),KDE桌面就會確定使用哪種應(yīng)用程序來處理該文件。

桌面底部的橫條稱為面板,由以下四部分構(gòu)成。

所有的面板功能都和你在Windows上看到的類似。除了桌面功能,KDE項(xiàng)目還開發(fā)了大量的可運(yùn)行在KDE環(huán)境中的應(yīng)用程序。

3. GNOME桌面

GNOME(the GNU Network Object Model Environment,GNU網(wǎng)絡(luò)對象模型環(huán)境)是另一個流行的Linux桌面環(huán)境。GNOME于1999年首次發(fā)布,現(xiàn)已成為許多Linux發(fā)行版默認(rèn)的桌面環(huán)境(不過用得最多的是Red Hat Linux)。

盡管GNOME決定不再沿用Microsoft Windows的標(biāo)準(zhǔn)觀感(look-and-feel),但它還是集成了許多Windows用戶習(xí)慣的功能:

圖4展示了CentOS Linux發(fā)行版采用的標(biāo)準(zhǔn)GNOME桌面。

圖4 CentOS Linux系統(tǒng)上的GNOME桌面

GNOME開發(fā)人員不甘示弱于KDE,也開發(fā)了一批集成進(jìn)GNOME桌面的圖形化程序。

4. Unity桌面

如果你用的是Ubuntu Linux發(fā)行版,你會注意到它與KDE和GNOME桌面環(huán)境有些不一樣。準(zhǔn)確來說,這是因?yàn)樨?fù)責(zé)開發(fā)Ubuntu的公司決定采用自己的一套叫作Unity的Linux桌面環(huán)境。

Unity桌面得名于該項(xiàng)目的目標(biāo)——為工作站、平板電腦以及移動設(shè)備提供一致的桌面體驗(yàn)。不管你是在工作站還是在手機(jī)上使用Ubuntu,Unity桌面的使用方式都是一樣的。圖5展示了Ubuntu 14.04 LTS中的Unity桌面。

圖5 Ubuntu Linux系統(tǒng)上的Unity桌面

5. 其他桌面

圖形化桌面環(huán)境的弊端在于它們要占用相當(dāng)一部分的系統(tǒng)資源來保證正常運(yùn)行。在Linux發(fā)展之初,Linux的標(biāo)志和賣點(diǎn)之一就是它可以運(yùn)行在處理能力較弱的老舊PC上,這些PC無力運(yùn)行較新的微軟桌面。然而隨著KDE和GNOME桌面環(huán)境的普及,情況發(fā)生了變化。運(yùn)行KDE或GNOME桌面要占用的內(nèi)存資源和微軟的最新桌面環(huán)境旗鼓相當(dāng)。

如果你的PC已經(jīng)有些年代了,也不要泄氣。Linux開發(fā)人員已經(jīng)聯(lián)手讓Linux返璞歸真。他們開發(fā)了一些低內(nèi)存開銷的圖形化桌面應(yīng)用,提供了能夠在老舊PC上好運(yùn)行的基本功能。盡管這些圖形化桌面環(huán)境并沒有大量專為其設(shè)計(jì)的應(yīng)用,但它們?nèi)匀荒苓\(yùn)行許多基本的圖形化程序,支持如文字處理、電子表格、數(shù)據(jù)庫、繪圖以及多媒體等功能。

表3列出了一些可在配置較低的PC和筆記本電腦上運(yùn)行的輕量級Linux圖形化桌面環(huán)境。

表3 其他Linux圖形化桌面

這些圖形化桌面環(huán)境并不如KDE或GNOME桌面一樣絢麗,但卻提供了恰到好處的基本圖形化功能。圖6展示了Puppy Linux antiX發(fā)行版所采用的JWM桌面的外觀。

圖6 Puppy Linux發(fā)行版所采用的JWM桌面

如果你用的是老舊PC,嘗試一下基于上述某個桌面環(huán)境的Linux發(fā)行版,看看怎么樣,可能會有驚喜哦。

發(fā)行版。有很多不同的Linux發(fā)行版來滿足可能存在的各種運(yùn)算需求。大多數(shù)發(fā)行版是為某個特定用戶群定制的,比如商業(yè)用戶、多媒體愛好者、軟件開發(fā)人員或者普通家庭用戶。每個定制的發(fā)行版都包含了支持特定功能所需的各種軟件包,比如為多媒體愛好者準(zhǔn)備的音頻和視頻編輯軟件,為軟件開發(fā)人員準(zhǔn)備的編譯器和集成開發(fā)環(huán)境(IDE)。

不同的Linux發(fā)行版通常歸類為3種:

下面我們探討一下這些不同類型的Linux發(fā)行版,然后展示每種類型中一些Linux發(fā)行版示例。

1.核心Linux發(fā)行版

核心Linux發(fā)行版含有內(nèi)核、一個或多個圖形化桌面環(huán)境以及預(yù)編譯好的幾乎所有能見到的Linux應(yīng)用。它提供了一站式的完整Linux安裝。表4列出了一些較流行的核心Linux發(fā)行版。

表4 核心Linux發(fā)行版

在Linux的早期,發(fā)行版是作為一疊軟盤發(fā)布的。你必須下載多組文件,然后將其復(fù)制到軟盤上。通常要用20張或更多的軟盤來創(chuàng)建一個完整的發(fā)行版!毋庸多言,這是個痛苦的過程。

現(xiàn)今,家用電腦基本都有內(nèi)置的CD和DVD光驅(qū),Linux發(fā)行版也就用一組CD光盤或單張DVD光盤來發(fā)布。這大大簡化了Linux的安裝過程。

然而當(dāng)新手在安裝核心Linux發(fā)行版時,仍然經(jīng)常遇到各種各樣的問題。為了照顧到Linux用戶的所有使用情景,單個發(fā)行版必須包含很多應(yīng)用軟件。從高端的Internet數(shù)據(jù)庫服務(wù)器到常見的游戲,可謂應(yīng)用盡有。鑒于Linux上可用應(yīng)用程序的數(shù)量,一個完整的發(fā)行版通常至少要4張CD。

盡管發(fā)行版中的大量可選配置對Linux極客來說是好事,但對新手來說就是一場噩夢。多數(shù)發(fā)行版會在安裝過程中詢問一系列問題,以決定哪些應(yīng)用要默認(rèn)加載、PC上連接了哪些硬件以及怎樣配置硬件設(shè)備。新手經(jīng)常會被這些問題困擾,因此,他們經(jīng)常是要么加載了過多的程序,要么沒有加載夠,到后來才發(fā)現(xiàn)計(jì)算機(jī)并沒有按照他們預(yù)想的方式工作。

對新手來說,幸運(yùn)的是,安裝Linux還有更簡便的方法。

特定用途的Linux發(fā)行版

Linux發(fā)行版的一個新子群已經(jīng)出現(xiàn)了。它們通常基于某個主流發(fā)行版,但僅包含主流發(fā)行版中一小部分用于某種特定用途的應(yīng)用程序。

除了提供特定軟件外(比如僅為商業(yè)用戶提供的辦公應(yīng)用),定制化發(fā)行版還嘗試通過自動檢測和自動配置常見硬件來幫助新手安裝Linux。這使得Linux的安裝過程輕松愉悅了許多。

表5列出了一些特定用途的Linux發(fā)行版以及它們的專長。

這只是特定用途的Linux發(fā)行版中的一小部分而已。像這樣的發(fā)行版足有上百款,而且在互聯(lián)網(wǎng)上還不斷有新的成員加入。不管你的專長是什么,你都能找到一款為你量身定做的Linux發(fā)行版。

表5 特定用途的Linux發(fā)行版

許多特定用途的Linux發(fā)行版都是基于Debian Linux。它們使用和Debian一樣的安裝文件,但僅打包了完整Debian系統(tǒng)中的一小部分。

2.Linux LiveCD

Linux世界中一個相對較新的現(xiàn)象是可引導(dǎo)的Linux CD發(fā)行版的出現(xiàn)。它無需安裝就可以看到Linux系統(tǒng)是什么樣的。多數(shù)現(xiàn)代PC都能從CD啟動,而不是必須從標(biāo)準(zhǔn)硬盤啟動?;谶@點(diǎn),一些Linux發(fā)行版創(chuàng)建了含有Linux樣本系統(tǒng)(稱為Linux LiveCD)的可引導(dǎo)CD。由于單張CD容量的限制,這個樣本并非完整的Linux系統(tǒng),不過令人驚喜的是,你可以自己加入各種軟件。結(jié)果就是,你可以通過CD來啟動PC,并且無需在硬盤安裝任何東西就能運(yùn)行Linux發(fā)行版。

這是一個不弄亂PC就體驗(yàn)各種Linux發(fā)行版的絕妙方法。只需插入CD就能引導(dǎo)了!所有的Linux軟件都將直接從CD上運(yùn)行。你可以從互聯(lián)網(wǎng)上下載各種Linux LiveCD,刻錄,然后體驗(yàn)。

表6列出了一些可用的流行Linux LiveCD。

表6 Linux LiveCD發(fā)行版

你能在這張表中看到熟悉的面孔。許多特定用途的Linux發(fā)行版都有對應(yīng)的Linux LiveCD版本。一些Linux LiveCD發(fā)行版,比如Ubuntu,允許直接從LiveCD安裝整個發(fā)行版。這使你可以從CD引導(dǎo)啟動,先體驗(yàn)一下此Linux發(fā)行版,如果喜歡的話,再把它安裝到硬盤上。這個功能極其方便易用。

就像所有美好的事物一樣,Linux LiveCD也有一些不足之處。由于要從CD上訪問所有東西,應(yīng)用程序會運(yùn)行得更慢,而如果再搭配上陳舊緩慢的PC和光驅(qū),那更是慢上加慢。還有,由于無法向CD寫入數(shù)據(jù),對Linux系統(tǒng)作的任何修改都會在重啟后失效。

不過,有一些Linux LiveCD的改進(jìn)幫助解決了上述一些問題。這些改進(jìn)包括:

一些Linux LiveCD,如Puppy Linux,只包含最少數(shù)量的Linux系統(tǒng)文件。當(dāng)CD引導(dǎo)啟動時,LiveCD的啟動腳本直接把它們復(fù)制到內(nèi)存中。這允許在Linux啟動后立即把CD從光驅(qū)中取走。這不僅提高了程序運(yùn)行速度(因?yàn)槌绦驈膬?nèi)存中運(yùn)行時更快),而且還空出了CD光驅(qū),供你用Puppy Linux自帶的軟件轉(zhuǎn)錄音頻CD或播放視頻DVD。

其他Linux LiveCD用另外的方法,同樣允許你在啟動后將CD從光驅(qū)中拿走。這種方法是將核心Linux文件作為一個文件復(fù)制到Windows硬盤上。待CD啟動后,系統(tǒng)會尋找那個文件,并從中讀取系統(tǒng)文件。dyne:bolic Linux LiveCD采用的就是這種技術(shù),我們稱之為對接。當(dāng)然,你必須在從CD引導(dǎo)啟動之前把系統(tǒng)文件復(fù)制到硬盤里。

一種非常流行的技術(shù)就是用常見的U盤(也稱為閃存或閃盤)來存儲Linux LiveCD會話數(shù)據(jù)。幾乎每個Linux LiveCD都能識別插入的U盤(即使是在Windows下格式化的)并從U盤上讀寫文件。這允許你啟動Linux LiveCD,使用Linux應(yīng)用來創(chuàng)建文件,再將這些文件存儲在U盤上,然后用Windows應(yīng)用(或者在另外一臺電腦上)訪問這些文件。這該有多酷!

小結(jié)

本文探討了Linux系統(tǒng)及其基本工作原理。Linux內(nèi)核是系統(tǒng)的核心,控制著內(nèi)存、程序和硬件之間的交互。GNU工具也是Linux系統(tǒng)中的一個重要部分。我們還討論了Linux系統(tǒng)中的最后一個組件:Linux桌面環(huán)境。隨著時間推移,一切都發(fā)生了改變?,F(xiàn)今的Linux可以支持多種圖形化桌面環(huán)境。

本文還探討了各種Linux發(fā)行版。Linux發(fā)行版就是把Linux系統(tǒng)的各個不同部分匯集起來組成一個易于安裝的包。Linux發(fā)行版有囊括各種軟件的成熟的Linux發(fā)行版,也有只包含針對某種特定功能軟件包的特定用途發(fā)行版。Linux LiveCD則是一種無需將Linux安裝到硬盤就能體驗(yàn)Linux的發(fā)行版。

后面我們就可以學(xué)習(xí)啟動命令行和shell腳本編程了??梢愿旅孢@兩本書繼續(xù)學(xué)習(xí)。

——本文內(nèi)容節(jié)選自《跟阿銘學(xué)Linux》《Linux命令行與shell腳本編程大全(第3版)》


本書是一本入門級的Linux學(xué)習(xí)教材,適合初學(xué)者閱讀。即使是零基礎(chǔ)的人,只要能夠堅(jiān)持把所有章都學(xué)完,也一定會受益匪淺。對于有工作經(jīng)驗(yàn)的人,它也是一本詳盡的工具書,助你解決工作當(dāng)中的一些需求和難題。

書中內(nèi)容由淺入深,內(nèi)容精湛,案例豐富,通俗易懂!書中分兩部分:前面為基礎(chǔ)知識,內(nèi)容涉及Linux的安裝、使用遠(yuǎn)程登錄工具登錄Linux、文件和目錄管理、磁盤管理、Vim、壓縮和解壓縮文件和目錄、安裝和卸載軟件包等;后面為進(jìn)階知識,內(nèi)容包括正則表達(dá)式、shell腳本、日常管理操作、LAMP環(huán)境、LNMP環(huán)境、MySQL常用的操作、NFS、FTP、Tomcat、Linux集群和Zabbix監(jiān)控等。


  • 圣經(jīng)級參考書最新版,亞馬遜書店五星推薦
  • 輕松全面掌握Linux命令行和shell腳本編程細(xì)節(jié),實(shí)現(xiàn)Linux系統(tǒng)任務(wù)自動化

這是一本關(guān)于Linux命令行與shell腳本編程的全方位教程,主要包括四大部分:Linux命令行,shell腳本編程基礎(chǔ),高級shell腳本編程,如何創(chuàng)建實(shí)用的shell腳本。本書針對Linux系統(tǒng)的最新特性進(jìn)行了全面更新,不僅涵蓋了詳盡的動手教程和現(xiàn)實(shí)世界中的實(shí)用信息,還提供了與所學(xué)內(nèi)容相關(guān)的參考信息和背景資料。通過本書的學(xué)習(xí),你將輕松寫出自己的shell腳本。

  • 要習(xí)慣使用命令行
    1. 操作系統(tǒng)必須要有圖形界面,但早期的Linux并不完全支持圖形界面,操作起來也沒有Windows系統(tǒng)流暢,這也是Windows系統(tǒng)比Linux系統(tǒng)流行的原因之一。在圖形界面下進(jìn)行操作,既直觀又簡潔,但Linux的圖形界面存在許多小問題,所以未被大多數(shù)PC機(jī)用戶認(rèn)可。

      個人電腦的操作系統(tǒng)大多為Windows,其次為macOS,服務(wù)器要托管在IDC機(jī)房,通過遠(yuǎn)程去管理。開啟圖形界面不僅耗費(fèi)資源,而且遠(yuǎn)程管理時還會有網(wǎng)絡(luò)帶寬的額外開銷,因此Linux在服務(wù)器領(lǐng)域比較流行。

      目前,也有不少朋友喜歡使用Linux的圖形界面及支持圖形界面的遠(yuǎn)程連接工具來管理Linux。鑒于以上使用圖形界面的幾個弊端,阿銘建議你不要輕易使用Linux的圖形界面。

      命令行是Linux系統(tǒng)正常運(yùn)行的核心,也是專業(yè)Linux系統(tǒng)工程師必須掌握的技能,所以我們要習(xí)慣使用命令行。

      2. 操作要嚴(yán)謹(jǐn)

      在學(xué)習(xí)Linux之前,阿銘要問你一個問題:“你有沒有誤刪某個重要文件的經(jīng)歷?”我想大多數(shù)讀者朋友都會說“有”。任何人都會有疏忽的時候,作為一名Linux系統(tǒng)管理員,你每天都要和服務(wù)器打交道,養(yǎng)成嚴(yán)謹(jǐn)認(rèn)真的習(xí)慣是必要的。

      舉例來說,服務(wù)器上的數(shù)據(jù)非常重要,你每天都必須備份,一旦數(shù)據(jù)損壞,你還可以使用備份的數(shù)據(jù)。阿銘曾經(jīng)在多年前犯過這樣的錯誤:沒有為數(shù)據(jù)庫上的數(shù)據(jù)制定備份計(jì)劃。結(jié)果有一天,服務(wù)器磁盤損壞,數(shù)據(jù)不能恢復(fù),以致丟失了大量的客戶信息,造成了非常嚴(yán)重的后果。常言道:“吃一塹,長一智。”阿銘在這里提醒大家,請務(wù)必養(yǎng)成備份數(shù)據(jù)的好習(xí)慣。

      數(shù)據(jù)備份固然重要,但也經(jīng)不起一次次的操作失誤。在學(xué)習(xí)Linux命令行的過程中,你輸入命令的速度會越來越快,效率也會越來越高。但與此同時,你也有可能輸入了錯誤的命令而不自知。比如,你要刪除某個目錄,卻把要刪除目錄的名字寫錯了,結(jié)果可想而知。所以,阿銘建議你輸入命令的速度不要太快,看準(zhǔn)了再按回車。另外,對于重要的配置文件,在修改前一定要進(jìn)行備份,這樣一旦出現(xiàn)問題,我們便可以將文件快速還原。

      3. 安全不可忽視

      你有沒有這樣的習(xí)慣?

      • 各個網(wǎng)站的賬號和密碼都一樣;
      • 密碼中包含自己的名字或者生日日期;
      • 密碼設(shè)置得非常簡單,采用純數(shù)字形式或者包含一些常用詞匯(如love、china等);
      • 將密碼存在一個文檔里,并保存到U盤里隨身攜帶;
      • 密碼使用了好多年,一直沒有更改過。

      以上所有的習(xí)慣,不管你符合幾條,都說明你的安全意識還不夠,需要加強(qiáng)。

      我們要登錄服務(wù)器,必然要使用登錄密碼,那么這個密碼如何設(shè)置、如何保存都是有講究的。首先,密碼設(shè)置得要復(fù)雜,至少要8個字符,包含數(shù)字和大小寫字母,而且不能有規(guī)律性。首先,密碼中不能包含你的名字或者生日日期。其次,你不能在所有的網(wǎng)站都使用同一個賬號和密碼。近幾年有多起賬號泄露事件,如果你在各大網(wǎng)站設(shè)置的密碼都一樣,一旦你在某一網(wǎng)站上的密碼泄露了,那就相當(dāng)于你所有的密碼都泄露了。再次,密碼最好不要長期沿用,建議你每隔1~3個月修改一次密碼。最后,阿銘必須提醒你,密碼不能保存在一個文檔里,更不能把存有密碼的文檔存到可移動存儲設(shè)備里。因?yàn)榭梢苿哟鎯υO(shè)備有可能遺失,遺失之后,我們設(shè)置的密碼也就遺失了。

      說完了密碼,阿銘接著來說一說在日常辦公室中的安全習(xí)慣。你的辦公電腦有設(shè)置密碼嗎?當(dāng)你離開工位時,電腦有沒有鎖屏呢?阿銘覺得大公司應(yīng)該都有規(guī)定:員工的電腦一定要設(shè)置好密碼,并且員工在離開工位時要把電腦鎖屏。這是為了防止一些重要信息被他人獲取。你也許會說同事之間都相互信任,沒有關(guān)系,但萬一有人圖謀不軌呢?任何意外都有可能發(fā)生。最后阿銘送你一句話:“小心駛得萬年船。”

      關(guān)于保存密碼,阿銘在這里給大家分享一個小經(jīng)驗(yàn)。阿銘的各大平臺(淘寶、京東、阿里云、印象筆記、QQ、微信、支付寶等)的密碼是不一樣的,而且密碼復(fù)雜度也是非常高的。但是這么多密碼如何記住?這就需要借助一款工具“KeePass”來記憶了。KeePass是一款開源免費(fèi)的軟件,歷史悠久,所以大家不用擔(dān)心它的安全性。作為管理服務(wù)器的你來說,更應(yīng)該注意公司服務(wù)器權(quán)限的安全性!

    2. 穩(wěn)中求進(jìn)
      1. 有的朋友讀書喜歡一蹴而就,恨不得幾天就讀完,這樣即使讀完了整本書,也學(xué)不到什么。咱們這本書不能和故事書相比,故事書可以一口氣看完,但是技術(shù)方面的書,光看一遍可不行,我們的目的是要學(xué)會和掌握這項(xiàng)技能。

        阿銘建議你每章內(nèi)容都花2~3天的時間來學(xué)習(xí)。雖然每一章的內(nèi)容不多,但其中的小案例需要多練習(xí)才能夠真正掌握。正所謂“熟能生巧”,這就好比學(xué)唱一首歌,聽一遍你只知道它是否好聽,聽兩三遍你也許能熟悉它的旋律、記住它的歌名,但如果要學(xué)會唱這首歌,恐怕至少需要聽十幾遍吧。

        2. 善于總結(jié)文檔

        “好記性不如爛筆頭”,這是我們上學(xué)時老師經(jīng)常跟我們說的一句話。我們的大腦不是計(jì)算機(jī),不能讓信息永久保存,所以需要大家善于記筆記,把一些你覺得不太容易記住的內(nèi)容記在小本子上,方便日后復(fù)習(xí)。

        在學(xué)習(xí)中,我們要善于總結(jié)文檔,即使工作之后也不要放棄,工作的過程也是學(xué)習(xí)的過程。遇到問題時,我們通過查資料或者請教他人順利解決了問題,那么你有必要記下解決這類問題的方法,以便日后舉一反三。阿銘在2009年就建立了一個論壇(阿銘Linux - 猿課),用于記錄日常工作中遇到的問題、學(xué)習(xí)筆記等各類文檔。日子久了,文檔積累得越來越多,多年后再回頭看看自己早期記錄的文檔,何嘗不是一件奇妙的事情!我建議大家申請一個免費(fèi)的博客,來記錄你的學(xué)習(xí)歷程。

        3. 復(fù)習(xí)很關(guān)鍵

        記完筆記并不等于掌握了知識,要想完全掌握必須經(jīng)常復(fù)習(xí)。比如說,你的11位手機(jī)號能記住嗎?你的QQ號也很長,能記住嗎?銀行賬號呢?身份證號呢?阿銘不知道這些號碼你是否能全部記住,但阿銘可以。身份證號碼18位,夠長吧,相信99%的朋友不能一下子就記住,那為什么我們能記住呢?因?yàn)槲覀冊诜磸?fù)使用它。再比如,小時候老師教我們寫漢字,對于復(fù)雜的漢字,咱們寫一兩遍是記不住的,只有多寫幾遍才能完全記住。同樣的道理,Linux的命令雖然多,但如果每天都用的話,不出一周,你一定可以記住它們。

        4. 舉一反三

        在后面,阿銘會針對性地給出幾個小案例,你不必掌握這些小案例,因?yàn)榫退隳惚呈鞎械乃邪咐?,也不代表你就多么厲害了,阿銘只要求你學(xué)會一種技能——舉一反三。

        記得高三時,數(shù)學(xué)老師給我們買了好幾套模擬題,這些題和高考題很像,因?yàn)樗鼈兛疾榈闹R點(diǎn)是一致的。我們做這些模擬題的目的不是為了把題和答案記住,而是要掌握這道題考查的知識點(diǎn)。只要掌握了這些知識點(diǎn),再難的題我們也都可以迎刃而解。

        同樣,阿銘在書中給出這些小案例也是為了告訴大家某個命令或者某個選項(xiàng)的用法及作用,所以,你需要掌握的并不是小案例本身,而是小案例背后的知識。這要求你會自己創(chuàng)造案例,多做幾個相似的小案例,做到舉一反三,你便能輕松地掌握相關(guān)的知識點(diǎn)。

        希望你學(xué)習(xí)愉快~

        名稱欄目:什么是Linux?Linux快速簡易入門
        網(wǎng)頁網(wǎng)址:http://www.rwnh.cn/news3/103603.html

        成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化網(wǎng)站維護(hù)、網(wǎng)站營銷、面包屑導(dǎo)航、外貿(mào)網(wǎng)站建設(shè)關(guān)鍵詞優(yōu)化

        廣告

        聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

        h5響應(yīng)式網(wǎng)站建設(shè)
        嘉善县| 三都| 石景山区| 襄垣县| 斗六市| 滦南县| 南和县| 刚察县| 桂阳县| 灵宝市| 南皮县| 兴山县| 伊吾县| 滦平县| 吕梁市| 罗源县| 湘潭市| 孙吴县| 承德市| 成安县| 长子县| 广河县| 同心县| 麟游县| 天等县| 板桥市| 棋牌| 九龙县| 小金县| 乌拉特前旗| 吉隆县| 龙岩市| 嘉兴市| 宜宾县| 和硕县| 北京市| 淳安县| 大庆市| 华蓥市| 巩留县| 龙里县|