第3章-Linux文件系統(tǒng)與磁盤管理_第1頁
第3章-Linux文件系統(tǒng)與磁盤管理_第2頁
第3章-Linux文件系統(tǒng)與磁盤管理_第3頁
第3章-Linux文件系統(tǒng)與磁盤管理_第4頁
第3章-Linux文件系統(tǒng)與磁盤管理_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Linux操作系統(tǒng)基礎(chǔ)教程

人民郵電出版社安俊秀編著

目錄CONTENTS第1章Linux概述第2章Linux的基本操作第3章Linux文件系統(tǒng)與磁盤管理第4章Linux用戶及權(quán)限機(jī)制第5章Linux文本處理第6章Linux多命令協(xié)作第7章Shell編程第8章進(jìn)程與設(shè)備管理第3章Linux文件系統(tǒng)與磁盤管理《Linux操作系統(tǒng)基礎(chǔ)教程》

第3章Linux文件系統(tǒng)與磁盤管理3.1

Linux文件系統(tǒng)簡(jiǎn)介3.1.1

Linux目錄結(jié)構(gòu)3.1.2

Linux文件類型3.1.3Linux文件系統(tǒng)結(jié)構(gòu)3.2文件與目錄的基本操作3.2.1工作目錄與目錄的切換3.2.2

ls命令3.2.3目錄的創(chuàng)建和刪除3.2.4文件的創(chuàng)建、復(fù)制、移動(dòng)和刪除命令3.2.5其他操作 第3章Linux文件系統(tǒng)與磁盤管理3.3

查找文件3.3.1

文件內(nèi)容查找命令3.3.2

find命令3.3.3

locate命令3.3.4whereis命令3.4

歸檔與壓縮3.4.1

tar命令3.4.2

zip命令3.4.3常用壓縮格式第3章Linux文件系統(tǒng)與磁盤管理3.5

Linux文件鏈接3.5.1硬鏈接3.5.2

符號(hào)鏈接3.6

磁盤管理3.6.1

文件系統(tǒng)3.6.2

磁盤分區(qū)3.6.3磁盤檢驗(yàn)3.6.4磁盤掛載和卸載3.6.5交換空間3.1.1Linux目錄結(jié)構(gòu)

Linux系統(tǒng)以文件目錄的方式組織和管理系統(tǒng)中的所有文件。所謂文件目錄,就是將所有文件的說明信息采用樹形結(jié)構(gòu)組織起來。整個(gè)文件系統(tǒng)有一個(gè)“根(root)”,然后在根上分“杈(directory)”,任何一個(gè)分杈上都可以再分杈,杈上也可以長出“葉子”?!案焙汀拌尽痹贚inux中被稱為“目錄”或者“文件夾”。而“葉子”則是文件。這種結(jié)構(gòu)的文件系統(tǒng)效率高,現(xiàn)代操作系統(tǒng)基本都采用這種結(jié)構(gòu)方式。通常Linux系統(tǒng)在安裝后都會(huì)默認(rèn)創(chuàng)建一些系統(tǒng)目錄,以存放和整個(gè)操作系統(tǒng)相關(guān)的文件。Linux系統(tǒng)樹狀目錄結(jié)構(gòu)如圖所示。3.1.1Linux目錄結(jié)構(gòu)系統(tǒng)目錄及其說明如下。

1./根目錄root即超級(jí)用戶的主目錄是/root。位于linux文件系統(tǒng)目錄結(jié)構(gòu)的頂層,它是整個(gè)系統(tǒng)最重要的目錄,因?yàn)樗械哪夸浂际怯筛夸浹苌鰜恚荓inux文件系統(tǒng)的入口,是最高一級(jí)的目錄。

2./dev/dev是device的縮寫,這個(gè)目錄下保存所有的設(shè)備文件,用戶可以通過這些文件訪問外部設(shè)備,如sda文件表示硬盤設(shè)備。并且該目錄下有一些由Linux內(nèi)核創(chuàng)建的用來控制硬件設(shè)備的特殊文件。

3./boot/boot叫作引導(dǎo)目錄,主要放置開機(jī)時(shí)會(huì)使用到的文檔,即該目錄下存放系統(tǒng)的內(nèi)核文件和引導(dǎo)裝載程序文件,例如,系統(tǒng)中非常重要的Linux內(nèi)核vmlinux就放在該目錄下。

4./etc/etc保存絕大部分的系統(tǒng)配置文件,基本都是純文本的,一般以擴(kuò)展名.conf或.cnf結(jié)尾,如passwd、inittab、group等。3.1.1Linux目錄結(jié)構(gòu)5./home家目錄,即用戶的主目錄,每一個(gè)用戶都有一個(gè)文件夾,保存該用戶的私有數(shù)據(jù)。默認(rèn)情況下,除root外的用戶,主目錄都會(huì)放在這個(gè)目錄下。在Linux下,可以通過#cd~來切換至自己的主目錄。

6./usr該目錄是系統(tǒng)存放程序的目錄,其空間比較大。例如,/usr/src中存放著Linux內(nèi)核的源代碼,/usr/include中存放著Linux下開發(fā)和編譯應(yīng)用程序需要的頭文件。這個(gè)目錄下有很多文件和目錄,當(dāng)我們安裝一個(gè)Linux官方提供的發(fā)行版軟件包時(shí),大多文件都安裝在這里。

7./var存放系統(tǒng)產(chǎn)生的文件,該目錄的內(nèi)容經(jīng)常變動(dòng)。例如,/var/tmp就是用來存儲(chǔ)臨時(shí)文件的。還有很多其他的進(jìn)程和模塊把它們的記錄文件也放在這個(gè)地方,包括如下一些重要的子目錄。8./lib/lib是library的縮寫,啟動(dòng)時(shí)需要用到的庫文件都放在該目錄下,相當(dāng)于Windows下的.dll文件。而非啟動(dòng)用的庫文件都會(huì)放在/usr/lib目錄下。內(nèi)核模塊是放在/lib/modules(內(nèi)核版本)下的。3.1.1Linux目錄結(jié)構(gòu)

9./proc這個(gè)目錄在磁盤中是不存在的,它是存放在內(nèi)存中的一個(gè)虛擬的文件夾,是啟動(dòng)Linux系統(tǒng)時(shí)創(chuàng)建的,里面的文件都是關(guān)于當(dāng)前系統(tǒng)的實(shí)時(shí)狀態(tài)信息,包括正在運(yùn)行的進(jìn)程、硬件狀態(tài)、內(nèi)存使用信息等。

10./tmp臨時(shí)文件目錄,有時(shí)用戶運(yùn)行程序時(shí),會(huì)產(chǎn)生臨時(shí)文件。因?yàn)?tmp會(huì)自動(dòng)刪除文件,所以有用的文件不要放在該目錄下。/var/tmp目錄和這個(gè)目錄相似。

11./mnt該目錄一般用于存放掛載儲(chǔ)存設(shè)備的掛載目錄(一個(gè)分區(qū)掛載在一個(gè)已存在的目錄上,這個(gè)目錄可以不為空,但掛載后,這個(gè)目錄下以前的內(nèi)容將不可用),它是安裝軟盤、光盤、U盤的掛載點(diǎn)(掛載點(diǎn)實(shí)際上就是Linux中的磁盤文件系統(tǒng)的入口目錄,類似于Windows中的用來訪問不同分區(qū)的C、D、E等盤符)。/media是自動(dòng)掛載,與/mnt相同,但有些Linux系統(tǒng)沒有/media,而所有Linux系統(tǒng)都有/mnt。3.1.1Linux目錄結(jié)構(gòu)12./bin/bin是binary的縮寫,二進(jìn)制文件,即可執(zhí)行程序。里面保存的是基礎(chǔ)系統(tǒng)所需的最基礎(chǔ)的、最常用的命令,如ls、cp、mkdir等命令,功能和/usr/bin類似。這個(gè)目錄中的文件都是可執(zhí)行的,并且是普通用戶都可以使用的命令。

13./sbin/sbin是superbinary的縮寫,存放的大多是涉及系統(tǒng)管理的命令,存儲(chǔ)的也是二進(jìn)制文件,但只有超級(jí)用戶root才可以使用,普通用戶無權(quán)執(zhí)行這個(gè)目錄下的命令,這個(gè)目錄和/usr/sbin、/usr/lib/debug/sbin或/usr/local/sbin目錄相似。目錄sbin中包含的命令只有具有root權(quán)限才能執(zhí)行的。3.1.2Linux文件類型Linux中常用的文件類型有5種:普通文件、目錄文件、鏈接文件、設(shè)備文件和管道文件。

1.普通文件一般來說,Linux的普通文件是指以字節(jié)為單位的數(shù)據(jù)流類型文件,它是最常用的一類文件,其特點(diǎn)是不包含文件系統(tǒng)的結(jié)構(gòu)信息。通常用戶接觸到的文件,如圖形文件、數(shù)據(jù)文件、文檔文件、聲音文件等都屬于普通文件。這種類型的文件按其內(nèi)部結(jié)構(gòu)又可細(xì)分為文本文件和二進(jìn)制文件。

2.目錄文件目錄文件不存放常規(guī)數(shù)據(jù),它是用來組織、訪問其他文件的。它是內(nèi)核組織文件系統(tǒng)的基本節(jié)點(diǎn)。目錄文件可以包含下一級(jí)目錄文件或普通文件。在Linux中,目錄文件是一種文件,與其他操作系統(tǒng)中“目錄”的概念不同,它是Linux文件中的一種。3.鏈接文件鏈接文件是一種特殊的文件,實(shí)際上是指向一個(gè)真實(shí)存在的文件鏈接,類似于Windows下的快捷方式。根據(jù)鏈接文件的不同,又可以細(xì)分為硬鏈接(HardLink)文件和符號(hào)鏈接(SymbolicLink,又稱為軟鏈接)文件。3.1.2Linux文件類型

4.設(shè)備文件設(shè)備文件是Linux中最特殊的文件。正是由于它的存在,Linux系統(tǒng)可以十分方便地訪問外部設(shè)備。Linux系統(tǒng)為外部設(shè)備提供一種標(biāo)準(zhǔn)接口,將外部設(shè)備視為一種特殊的文件。用戶可以像訪問普通文件一樣訪問任何外部設(shè)備,使Linux系統(tǒng)可以很方便地適應(yīng)不斷變化的外部設(shè)備。通常Linux系統(tǒng)將設(shè)備文件放在/dev目錄下,設(shè)備文件使用設(shè)備的主設(shè)備號(hào)和次設(shè)備號(hào)來指定某外部設(shè)備。根據(jù)訪問數(shù)據(jù)方式的不同,設(shè)備文件又可以分為塊設(shè)備和字符設(shè)備文件。5.管道文件管道文件是一種很特殊的文件,主要用于不同進(jìn)程的信息傳遞。當(dāng)兩個(gè)進(jìn)程間需要傳遞數(shù)據(jù)或信息時(shí),可以使用管道文件。一個(gè)進(jìn)程將需傳遞的數(shù)據(jù)或信息寫入管道的一端,另一進(jìn)程則從管道的另一端取得所需的數(shù)據(jù)或信息。3.1.3Linux文件系統(tǒng)結(jié)構(gòu)Linux文件系統(tǒng)是一個(gè)倒轉(zhuǎn)的單根樹狀結(jié)構(gòu)。在Linux系統(tǒng)中,任何軟件和I/O設(shè)備都被視為文件,而所有的文件及文件夾都是存在于一個(gè)根目錄root下,如圖所示。為了理解Linux文件系統(tǒng)結(jié)構(gòu),需要掌握幾個(gè)概念。

1.當(dāng)前工作目錄在Linux文件系統(tǒng)中,每一個(gè)Shell或系統(tǒng)進(jìn)程都有一個(gè)當(dāng)前工作目錄,使用pwd命令可以顯示當(dāng)前的工作目錄。每當(dāng)在終端進(jìn)行操作時(shí),都會(huì)有一個(gè)當(dāng)前工作目錄。3.1.3Linux文件系統(tǒng)結(jié)構(gòu)

2.文件名稱Linux文件名稱最多可使用255個(gè)字符,除了正斜線“/”外,都是有效字符,如可用A~Z、a~z、0~9等字符來命名。建議文件名稱最好能體現(xiàn)文件的功能。和Windows系統(tǒng)不同,Linux文件系統(tǒng)嚴(yán)格區(qū)分大小寫。以“.”開頭的文件是隱藏文件。注意:在Linux文件系統(tǒng)中,文件和文件夾是沒有區(qū)別的,都統(tǒng)稱為文件。3.絕對(duì)路徑與相對(duì)路徑如何到達(dá)一個(gè)文件或者目錄有兩種方式:絕對(duì)路徑和相對(duì)路徑,這是Linux文件系統(tǒng)管理中一個(gè)很重要的概念。絕對(duì)路徑是以根目錄“/”開始,遞歸每級(jí)目錄直到目標(biāo)路徑;相對(duì)路徑是以當(dāng)前目錄為起點(diǎn),到達(dá)目標(biāo)的路徑。從以上定義可以看出,絕對(duì)路徑不受當(dāng)前所在目錄限制,而相對(duì)路徑受當(dāng)前所在目錄的限制。3.2.1工作目錄與目錄的切換Linux系統(tǒng)使用cd(changedirectory)命令來切換工作目錄,作用是改變當(dāng)前工作目錄。cd的命令格式為:cd[directory]該命令將當(dāng)前目錄改變?yōu)閐irectory指定的目錄。若沒有制定directory,則回到用戶的主目錄,“~”是home目錄的意思。主目錄是當(dāng)前用戶的home目錄,是添加用戶時(shí)指定的。一般用戶默認(rèn)的home目錄是/home/xxx(xxx是用戶名),root的默認(rèn)home目錄是/root。要改變到指定目錄,用戶必須擁有對(duì)指定目錄的執(zhí)行和讀權(quán)限。該命令可以使用通配符。例如,假設(shè)用戶當(dāng)前的目錄是/root/working,要更換到/user/src目錄下,可使用如下命令。[root@localhostworking]#cd/user/src若在usr目錄下有子目錄abc,要更換到/usr/abc目錄中,可采用更改相對(duì)路徑的方法,命令操作如下。[root@localhostworking]#cd../abc跳到自己的home目錄:[root@localhostworking]#cd~3.2.2ls命令ls(list)命令是用戶最常用的命令之一。對(duì)于目錄,ls命令將輸出該目錄下的所有子目錄與文件;對(duì)于文件,ls命令將輸出其文件名以及要求的其他信息。該命令類似于DOS下的dir命令。默認(rèn)情況下,輸出條目按字母順序排序。ls的命令格式為:ls[option][names]其中,option選項(xiàng)可以省略,常用的參數(shù)如表所示。

3.2.3目錄的創(chuàng)建和刪除下面介紹Linux系統(tǒng)中的目錄創(chuàng)建與刪除命令。

1.mkdir命令創(chuàng)建目錄需要使用mkdir命令。mkdir的命令格式為:mkdir[option][dirname]其中,option選項(xiàng)可以省略,dirname是要?jiǎng)?chuàng)建的目錄名稱。

2.rmdir命令rmdir命令只能用來刪除空目錄,若目錄中存在文件,就要使用rm命令刪除文件后再刪除目錄,后面會(huì)詳細(xì)介紹rm命令。rmdir的命令格式為:rmdir[option][dirname]其中,option選項(xiàng)可以省略。dirname表示目錄名。3.2.4文件的創(chuàng)建、復(fù)制、移動(dòng)和刪除命令

文件的創(chuàng)建、復(fù)制、移動(dòng)和刪除操作在Linux系統(tǒng)中使用得相當(dāng)頻繁,下面詳細(xì)介紹這些操作命令。

1.touch命令touch命令有兩個(gè)功能:一是用于把已存在文件的時(shí)間標(biāo)簽更新為系統(tǒng)當(dāng)前的時(shí)間(默認(rèn)方式),它們的數(shù)據(jù)將原封不動(dòng)地保留下來;二是用來創(chuàng)建新的空文件。touch的命令格式為:touch[option]filename其中,option選項(xiàng)可以省略。filename是將要?jiǎng)?chuàng)建的文件的名稱。

2.cp命令該命令的功能是將給出的文件或目錄復(fù)制到另一文件或目錄中,就像DOS下的copy命令一樣,功能十分強(qiáng)大。cp的命令格式為:cp[option]sourcedest其中,option選項(xiàng)可以省略。source表示需要復(fù)制的文件,dest表示需要復(fù)制到的目錄。

3.mv命令用戶可以使用mv命令為文件或目錄改名或者將文件由一個(gè)目錄移動(dòng)到另一個(gè)目錄中。該命令類似于DOS下的ren和move的組合。mv的命令格式為:mv[option]sourcedest3.2.4文件的創(chuàng)建、復(fù)制、移動(dòng)和刪除命令

視mv命令中第二個(gè)參數(shù)類型的不同(是目標(biāo)文件還是目標(biāo)目錄),mv命令將文件重命名或?qū)⑵湟浦烈粋€(gè)新的目錄中。當(dāng)?shù)诙€(gè)參數(shù)類型是文件時(shí),mv命令完成文件重命名,此時(shí),源文件只能有一個(gè)(也可以是源目錄名),它將所給的源文件或目錄重命名為給定的目標(biāo)文件名。當(dāng)?shù)诙€(gè)參數(shù)是已存在的目錄名稱時(shí),源文件或目錄參數(shù)可以有多個(gè),mv命令將各參數(shù)指定的源文件均移至目標(biāo)目錄中。在跨文件系統(tǒng)移動(dòng)文件時(shí),mv先拷貝,再將原有文件刪除,而鏈接該文件的鏈接也將丟失。例如,將文件test.txt重命名為mv.doc。[user@localhost~]$#mvtest.txtmv.doc4.rm命令在Linux系統(tǒng)中,可以使用rm命令將無用文件刪除。該命令的功能是刪除一個(gè)目錄中的一個(gè)或者多個(gè)文件,也可以將某個(gè)目錄及其下的所有文件及子目錄均刪除。對(duì)于鏈接文件,只是刪除了鏈接,原有文件均保持不變。rm的命令格式為:rm[option]filename3.2.5其他操作下面介紹Linux系統(tǒng)中常用的其他操作命令。

1.sort命令該命令的功能是對(duì)文件中的各行進(jìn)行排序。sort將文件的每一行作為一個(gè)單位,相互比較,比較原則是從首字符向后,依次按ASCII碼值進(jìn)行比較,最后將它們按升序輸出。sort的命令格式為:sort[option]filename其中,option選項(xiàng)可以省略,filename是操作對(duì)象的文件名稱。

2.cat命令該命令的主要功能是用來顯示文件內(nèi)容,依次讀取其后所指文件的內(nèi)容并將其輸出到標(biāo)準(zhǔn)輸出設(shè)備上。另外,還能夠用來連接兩個(gè)或者多個(gè)文件,形成新文件。cat的命令格式為:cat[option]filename其中,option選項(xiàng)可以省略,filename是操作對(duì)象的文件名稱。3.more命令在查看文件的過程中,可以使用more命令一次只顯示一屏文本,并在終端底部打出“--more--”,系統(tǒng)還將同時(shí)顯示已顯示文本占全部文本的百分比。如果要繼續(xù)顯示,可以按回車鍵或空格鍵。more的命令格式為:more[option]filename3.2.5其他操作

4.info命令info是一種文檔格式,也是閱讀此格式文檔的閱讀器,常用它來查看Linux命令的info文檔。它以主題的形式把幾個(gè)命令組織在一起,以便于閱讀。在主題內(nèi)以node(節(jié)點(diǎn))的形式把本主題的幾個(gè)命令串聯(lián)在一起。info的命令格式為:info[option]filename

5.file命令file命令用于辨識(shí)文件類型。file的命令格式為:file[option]filename其中,option選項(xiàng)可以省略,filename是操作對(duì)象的文件名稱。3.3.1文件內(nèi)容查找命令文件內(nèi)容查詢命令主要是指grep、egrep與fgrep命令。這組命令以指定的查找模式搜索文件,通知用戶在什么文件中搜索到與指定模式匹配的字符串,并且打印出所有包含該字符的文本行,該文本行的最前面是該行所在的文件名。這3個(gè)命令的含義分別如下。(1)grep命令:是最早的文本匹配程序,使用POSIX定義的基本正則表達(dá)式(BRE)來匹配文本。該命令一次只能搜索一個(gè)指定的模式。(2)egrep命令:擴(kuò)展式grep,其使用擴(kuò)展式表達(dá)式(ERE)匹配文本。(3)fgrep命令:快速grep,這個(gè)版本匹配固定字符串而非正則表達(dá)式。并且是唯一可以并行匹配多個(gè)字符串的版本。

3.3.2find命令Linux下find命令在目錄結(jié)構(gòu)中搜索文件,并執(zhí)行指定的操作。該命令的功能是從指定的目錄開始,遞歸地搜索其各個(gè)子目錄,查找滿足尋找條件的文件并對(duì)其采取相關(guān)的操作。因?yàn)榇嗣钐峁┝讼喈?dāng)多的查找條件,功能很強(qiáng)大,所以它的選項(xiàng)也很多。find的命令格式為:find[option]filenamefind命令提供的尋找條件可以使一個(gè)用邏輯運(yùn)算符not、and和or組成的復(fù)合條件。邏輯運(yùn)算符not、and和or的含義如下。and:邏輯與,在命令中用“-a”表示,是系統(tǒng)默認(rèn)的選項(xiàng),表示只有當(dāng)所給的條件都滿足時(shí),尋找條件才算滿足。or:邏輯或,在命令中用“-o”表示。該運(yùn)算符表示只要所給的條件中有一個(gè)滿足,尋找條件就算滿足。not:邏輯非,在命令中用“!”表示。該運(yùn)算符表示查找不滿足所給條件的文件。3.3.3locate命令該命令的功能也是查找文件,比find命令的搜索速度快,原因在于它不搜索具體目錄,而是搜索一個(gè)數(shù)據(jù)庫(/var/lib/located),這個(gè)數(shù)據(jù)庫中含有本地所有文件信息。Linux系統(tǒng)自動(dòng)創(chuàng)建這個(gè)數(shù)據(jù)庫,并且每天自動(dòng)更新一次,所以使用locate命令查不到最新變動(dòng)過的文件。為了避免這種情況,可以在使用locate之前,先使用updatedb命令,手動(dòng)更新數(shù)據(jù)庫。locate的命令格式為:locate[option]filename例如,搜索etc目錄下所有以sh開頭的文件,忽略大小寫區(qū)別。[user@localhost~]$locate-i/etc/sh/etc/shadow/etc/shadow-/etc/shells3.3.4whereis命令whereis命令用于查找文件。該指令會(huì)在特定目錄中查找符合條件的文件。這些文件應(yīng)屬于原始代碼、二進(jìn)制文件,或幫助文件。該指令只能用于查找二進(jìn)制文件、源代碼文件和man手冊(cè)頁,一般文件的定位需使用locate命令。whereis的命令格式為:whereis[option]filename例如,使用命令whereis查看bash命令的位置,輸入如下命令。[user@localhost~]$whereisbash上面的指令執(zhí)行后,輸出信息如下。bash:/bin/bash/etc/bash.bashrc/usr/share/man/man1/bash.1.gz3.4.1tar命令tar是一個(gè)歸檔程序,也就是說,tar命令可以將許多文件打包成為一個(gè)歸檔文件或者把它們寫入備份設(shè)備,如一個(gè)磁帶驅(qū)動(dòng)器。所以通常Linux下,保存文件都是先用tar命令將目錄或者文件打成tar歸檔文件(也稱tar包),然后進(jìn)行壓縮。tar的命令格式為:tar[option]filename例如,使用touch命令創(chuàng)建一個(gè)文件名為a.c的文件。[user@localhost~]$toucha.c壓縮a.c文件為test.tar.gz。[user@localhost~]$tar-czvftest.tar.gza.c列出壓縮文件內(nèi)容。[user@localhost~]$tar-tzvftest.tar.gz-rw-r--r--root/root02017-02-1516:51:59a.c3.4.2zip命令zip命令可以用來解壓縮文件,或者對(duì)文件進(jìn)行打包操作。zip是個(gè)使用廣泛的壓縮程序,文件經(jīng)它壓縮后會(huì)另外產(chǎn)生具有“.zip”擴(kuò)展名的壓縮文件。zip的命令格式為:zip[option]filename例如,將/home/Blinux/html/目錄下的所有文件和文件夾打包為當(dāng)前目錄下的html.zip。[user@localhost~]$zip-q-rhtml.zip/home/Blinux/html3.4.3常用壓縮格式

1.文件壓縮——gzip命令gzip命令用于壓縮一個(gè)或更多文件。執(zhí)行命令后,原文件會(huì)被其壓縮文件取代。

gzip的命令格式為:gzip[option]filename例如,壓縮hello.c,壓縮后,文件以gz結(jié)尾,原始文件已刪除。[user@localhost~]$gziphello.c[user@localhost~]$lshello.c.gz

2.文件壓縮——bzip2命令bzip2命令由JulianSeward開發(fā),與gzip命令功能相仿,但是使用不同的壓縮算法。該算法具有高質(zhì)量的數(shù)據(jù)壓縮能力,但降低了壓縮速度。多數(shù)情況下,其用法與gzip類似,只是用bzip2壓縮后,文件的后綴為.bz2。bzip2的命令格式為:bzip2[option]filename例如,解壓.bz2文件。[user@localhost~]$bzip2-vtemp.bz23.5.1硬鏈接硬鏈接是最初UNIX用來創(chuàng)建鏈接的方式,符號(hào)鏈接較之更為先進(jìn)。默認(rèn)情況下,每個(gè)文件有一個(gè)硬鏈接,該硬鏈接會(huì)給文件起名字。創(chuàng)建一個(gè)硬鏈接時(shí),也為這個(gè)文件創(chuàng)建了一個(gè)額外的目錄條目。硬鏈接有以下兩個(gè)重要的局限性。(1)硬鏈接不能引用自身文件系統(tǒng)之外的文件。也就是說,鏈接不能引用與該鏈接不在同一磁盤分區(qū)的文件。(2)硬鏈接無法引用目錄。硬鏈接和文件本身沒有什么區(qū)別。與包含符號(hào)鏈接的目錄列表不同,包含硬鏈接的目錄列表沒有特別的鏈接指示說明。當(dāng)硬鏈接被刪除時(shí),只是刪除了這個(gè)鏈接,但是文件本身的內(nèi)容依然存在(也就是說,該空間沒有釋放),除非該文件的所有鏈接都被刪除了。3.5.2符號(hào)鏈接符號(hào)鏈接是為了克服硬鏈接的局限性而創(chuàng)建的。符號(hào)鏈接是通過創(chuàng)建一個(gè)特殊類型的文件來起作用的,該文件包含了指向引用文件或目錄的文本指針。就這點(diǎn)來看,符號(hào)鏈接與Windows系統(tǒng)下的快捷方式非常相似,但是,符號(hào)鏈接要早與Windows的快捷方式很多年出現(xiàn)。

符號(hào)鏈接指向的文件與符號(hào)鏈接自身幾乎沒有區(qū)別。例如,將一些東西寫進(jìn)符號(hào)鏈接里,這些東西同樣也寫進(jìn)了引用文件。而當(dāng)刪除一個(gè)符號(hào)鏈接時(shí),刪除的只是符號(hào)鏈接而沒有刪除文件本身。如果先于符號(hào)鏈接之前刪除文件,那么這個(gè)鏈接依然存在,但不指向任何文件。此時(shí),這個(gè)鏈接就稱為壞鏈接。在很多實(shí)現(xiàn)中,ls命令會(huì)用不同的顏色來顯示壞鏈接,如紅色。3.6.1文件系統(tǒng)隨著Linux的不斷發(fā)展,其支持的文件格式系統(tǒng)也在迅速擴(kuò)展。特別是Linux2.6內(nèi)核正式推出后,出現(xiàn)了大量新的文件系統(tǒng),其中包括日志文件系統(tǒng)Ext4、Ext3、ReiserFS、XFS、JFS和其他文件系統(tǒng)。Linux系統(tǒng)核心可以支持十多種文件系統(tǒng)類型:JFS、ReiserFS、Ext、Ext2、Ext3、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等。其中,使用較為普遍的有如下幾種。(1)Minix:是Linux支持的第一個(gè)文件系統(tǒng),對(duì)用戶有很多限制,性能低下,有些沒有時(shí)間標(biāo)記,文件名最長為14個(gè)字符。(2)Xia:是Minix文件系統(tǒng)修正后的版本,在一定程度上解決了文件名和文件系統(tǒng)大小的局限。(3)NFS(NetworkFileSystem):是Sun公司推出的網(wǎng)絡(luò)文件系統(tǒng),允許在多臺(tái)計(jì)算機(jī)之間共享同一文件系統(tǒng),易于從所有這些計(jì)算機(jī)上存取文件。(4)擴(kuò)展文件系統(tǒng)(ExtFileSystem):是隨著Linux的不斷成熟而引入的,它包含了幾個(gè)重要的擴(kuò)展,但提供的性能令人不滿意。1994年人們引入了第二擴(kuò)展文件系統(tǒng)(secondExtendedFilesystem,Ext2)以代替過時(shí)的Ext文件系統(tǒng)。3.6.1文件系統(tǒng)

(5)Ext3(thirdExtendedFilesystem):是由開放資源社區(qū)開發(fā)的日志文件系統(tǒng),被設(shè)計(jì)成Ext2的升級(jí)版本,盡可能地方便用戶從Ext2向Ext3遷移。(6)Ext4(Thefourthextendedfilesystem):是一種針對(duì)Ext3系統(tǒng)的擴(kuò)展日志式文件系統(tǒng),是專門為Linux開發(fā)的原始擴(kuò)展文件系統(tǒng)(ext或extfs)的第4版。(7)Reiser:是另一套專為Linux設(shè)計(jì)的日志文件系統(tǒng),目前最新的版本是Reiser4。Reiser文件系統(tǒng)在處理小文件上比Ext3文件系統(tǒng)更有優(yōu)勢(shì),效率更高,碎片也更少。(8)XFS:是一種高級(jí)日志文件系統(tǒng),XFS具備較強(qiáng)的伸縮性,非常健壯。其數(shù)據(jù)完整性、傳輸特性、可擴(kuò)展性等諸多指標(biāo)都非常突出。(9)ISO9660標(biāo)準(zhǔn)CDROM文件系統(tǒng),通用的RockRidge增強(qiáng)系統(tǒng),允許長文件名。除了上述這些Linux支持的文件系統(tǒng)外,Linux還可以支持基于Windows和Netware的文件系統(tǒng),如UMSDOS、MSDOS、VFAT、HPFS、SMB和NCPFS等。3.6.2磁盤分區(qū)

1.磁盤分區(qū)命名方式在Linux中,每一個(gè)硬件設(shè)備都映射到一個(gè)系統(tǒng)的文件,包括硬盤、光驅(qū)等IDE或SCSI(SmallComputerSystemInterface,設(shè)備小型計(jì)算機(jī)系統(tǒng)接口,一種用于計(jì)算機(jī)和智能設(shè)備之間(硬盤、軟驅(qū)、光驅(qū)、打印機(jī)、掃描儀等)系統(tǒng)級(jí)接口的獨(dú)立處理器標(biāo)準(zhǔn),SCSI是一種智能的通用接口標(biāo)準(zhǔn))設(shè)備。Linux為各種IDE設(shè)備分配了一個(gè)由hd前綴組成的文件。各種SCSI設(shè)備,則被分配了一個(gè)由sd前綴組成的文件,編號(hào)方法為拉丁字母表順序。如第一個(gè)IDE設(shè)備(如IDE硬盤或IDE光驅(qū)),Linux定義為hda;第二個(gè)IDE設(shè)備就定義為hdb;下面以此類推。而SCSI設(shè)備就應(yīng)該是sda、sdb、sdc等。USB磁盤通常會(huì)被識(shí)別為SCSI設(shè)備,因此其設(shè)備名可能是sda。常見的Linux磁盤命名規(guī)則為hdXY(或者sdXY),其中X為小寫拉丁字母,Y為阿拉伯?dāng)?shù)字。個(gè)別系統(tǒng)可能命名略有差異。2.磁盤分區(qū)方法對(duì)于一個(gè)新硬盤,首先需要對(duì)其進(jìn)行分區(qū)。和Windows一樣,在Linux下用于磁盤分區(qū)的工具也是fdisk命令。除此之外,還可以通過parted、cfdisk等可視化工具進(jìn)行分區(qū)。3.6.2磁盤分區(qū)

3.分區(qū)的格式化分區(qū)完成后,需要格式化文件系統(tǒng)才能正常使用。格式化磁盤的主要命令是mkfs。mkfs的命令格式為:mkfs-ttypedevice[block_size]其中,選項(xiàng)-t的參數(shù)type為文件系統(tǒng)格式,如ext4、vfat、ntfs等;參數(shù)device為設(shè)備名稱,如/dev/hda1、/dev/sdb1等;參數(shù)[block_size]為block大小,可選。如果需要把/dev/sda1格式化為FAT32格式,則可以使用如下命令。mkfs-tvfat/dev/sda1格式化交換分區(qū)的命令略有不同,不是mkfs,而是mkswap。例如,將/dev/hda8格式化為swap分區(qū),可以使用如下命令。mkswap/dev/hda83.6.3磁盤檢驗(yàn)

對(duì)于沒有正常卸載的磁盤,如遇到斷電等突發(fā)情況,可能損壞文件系統(tǒng)目錄結(jié)構(gòu)或其中的文件。因此,遇到這種情況需要檢查和修復(fù)磁盤分區(qū)。檢查和修復(fù)磁盤分區(qū)的命令為fsck。fsck的命令格式為:fsck[option]device其中,option選項(xiàng)可以省略,參數(shù)device為設(shè)備名稱,如/dev/hda1、/dev/sdb1等。和mkfs一樣,fsck也有很多別名,如fsck.ext4、fsck.reiserfs、fsck.vfat等。fsck.fstype形式的別名還有e2fsck、reiserfsck等類型。例如,檢測(cè)Reiserfs格式的分區(qū)/dev/hda5,以下3個(gè)命令均可。fsck-treiserfs/dev/hda5

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論