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

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

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

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

Linux可劃分為以下四部分:

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

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

圖1 Linux系統(tǒng)

深入探究Linux內核

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

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

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

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

內核主要負責以下四種功能:

下面我們進一步探究以上每一種功能。

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

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

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

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

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

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

2. 軟件程序管理

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

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

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

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

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

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

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

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

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

3. 硬件設備管理

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

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

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

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

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

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

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

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

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

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

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

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

GNU工具

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

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

開源軟件理念允許程序員開發(fā)軟件,并將其免費發(fā)布。任何人都可以使用、修改該軟件,或將該軟件集成進自己的系統(tǒng),無需支付任何授權費用。將Linus的Linux內核和GNU操作系統(tǒng)工具整合起來,就產生了一款完整的、功能豐富的免費操作系統(tǒng)。

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

1. 核心GNU工具

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

GNU coreutils軟件包由三部分構成:

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

2. shell

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

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

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

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

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

表 2 Linux shell

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

Linux桌面環(huán)境

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

隨著Microsoft Windows的普及,電腦用戶已經不再滿足于對著老式的文本界面工作了。這推動了OSS社區(qū)的更多開發(fā)活動,Linux圖形化桌面環(huá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世界里,能夠實現(xiàn)X Window的軟件包可不止一種。

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

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

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

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

2. KDE桌面

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

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

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

桌面底部的橫條稱為面板,由以下四部分構成。

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

3. GNOME桌面

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

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

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

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

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

4. Unity桌面

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

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

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

5. 其他桌面

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

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

表3列出了一些可在配置較低的PC和筆記本電腦上運行的輕量級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ā)行版來滿足可能存在的各種運算需求。大多數(shù)發(fā)行版是為某個特定用戶群定制的,比如商業(yè)用戶、多媒體愛好者、軟件開發(fā)人員或者普通家庭用戶。每個定制的發(fā)行版都包含了支持特定功能所需的各種軟件包,比如為多媒體愛好者準備的音頻和視頻編輯軟件,為軟件開發(fā)人員準備的編譯器和集成開發(fā)環(huán)境(IDE)。

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

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

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

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

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

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

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

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

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

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

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

Linux發(fā)行版的一個新子群已經出現(xiàn)了。它們通?;谀硞€主流發(fā)行版,但僅包含主流發(fā)行版中一小部分用于某種特定用途的應用程序。

除了提供特定軟件外(比如僅為商業(yè)用戶提供的辦公應用),定制化發(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)象是可引導的Linux CD發(fā)行版的出現(xiàn)。它無需安裝就可以看到Linux系統(tǒng)是什么樣的。多數(shù)現(xiàn)代PC都能從CD啟動,而不是必須從標準硬盤啟動?;谶@點,一些Linux發(fā)行版創(chuàng)建了含有Linux樣本系統(tǒng)(稱為Linux LiveCD)的可引導CD。由于單張CD容量的限制,這個樣本并非完整的Linux系統(tǒng),不過令人驚喜的是,你可以自己加入各種軟件。結果就是,你可以通過CD來啟動PC,并且無需在硬盤安裝任何東西就能運行Linux發(fā)行版。

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

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

表6 Linux LiveCD發(fā)行版

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

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

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

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

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

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

小結

本文探討了Linux系統(tǒng)及其基本工作原理。Linux內核是系統(tǒng)的核心,控制著內存、程序和硬件之間的交互。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安裝到硬盤就能體驗Linux的發(fā)行版。

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

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


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

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


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

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

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

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

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

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

      2. 操作要嚴謹

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

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

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

      3. 安全不可忽視

      你有沒有這樣的習慣?

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

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

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

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

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

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

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

        2. 善于總結文檔

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

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

        3. 復習很關鍵

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

        4. 舉一反三

        在后面,阿銘會針對性地給出幾個小案例,你不必掌握這些小案例,因為就算你背熟書中的所有案例,也不代表你就多么厲害了,阿銘只要求你學會一種技能——舉一反三。

        記得高三時,數(shù)學老師給我們買了好幾套模擬題,這些題和高考題很像,因為它們考查的知識點是一致的。我們做這些模擬題的目的不是為了把題和答案記住,而是要掌握這道題考查的知識點。只要掌握了這些知識點,再難的題我們也都可以迎刃而解。

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

        希望你學習愉快~

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

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

        廣告

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

        h5響應式網(wǎng)站建設