亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

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

時(shí)間:2023-02-27 08:59:44 Linux認(rèn)證 我要投稿
  • 相關(guān)推薦

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

  Linux和Windows操作系統(tǒng)中的文件系統(tǒng)些不同,在學(xué)習(xí)使用Linux之前,能夠了解這個(gè)不同之處助于后續(xù)的學(xué)習(xí)。下面是小編整理的關(guān)于Linux文件系統(tǒng)簡(jiǎn)介,希望可以幫助大家!

  一、Linux和Windows文件系統(tǒng)

  下面分別簡(jiǎn)單介紹一下啟動(dòng)Windows和Linux之后,它們是怎樣看待自己世界的。著重介紹Linux。

  1、Window上面的文件系統(tǒng)

  Windows系統(tǒng)中一切東西都是存放在硬盤上的。啟動(dòng)系統(tǒng)后,先硬盤,再硬盤上的分區(qū)和每個(gè)分區(qū)所對(duì)應(yīng)的文件系統(tǒng),最后是存放在某個(gè)分區(qū)特定的文件系統(tǒng)中的文件,也就是說(shuō),Windows是通過(guò)“某個(gè)硬盤-硬盤上的某個(gè)分區(qū)-分區(qū)上的特定文件系統(tǒng)-特定文件系統(tǒng)中的文件”這樣的順序來(lái)訪問(wèn)到一個(gè)文件的。

  具體點(diǎn)說(shuō),假設(shè)我們的機(jī)器上面一個(gè)硬盤,硬盤分為個(gè)區(qū),那么我們啟動(dòng)系統(tǒng)之后就會(huì)看到C,D,E個(gè)分區(qū)(也就是我們啟動(dòng)系統(tǒng)后看到的”C”盤,”D”盤等),每個(gè)分區(qū)可以被格式化為各自不同的文件系統(tǒng)(例如NTFS格式,F(xiàn)AT32格式等,文件系統(tǒng)的基本功能就是為了存放文件的,不同文件系統(tǒng)區(qū)別一般在于管理其中存放的文件的功能的強(qiáng)弱,分區(qū)被格式化成指定格式的文件系統(tǒng)之后,就可以存放任何文件和目錄了。這里,我們可以把文件大體分為兩種:系統(tǒng)文件和用戶文件。一般來(lái)說(shuō)系統(tǒng)文件(例如Windows操作系統(tǒng)本身,一些系統(tǒng)程序,程序運(yùn)行所需的庫(kù)文件,以及一些系統(tǒng)配置文件等)存放的默認(rèn)位置在C盤,當(dāng)然也可以在安裝時(shí)候指定在其他盤;其它用戶文件,包含用戶后來(lái)安裝的程序以及一些數(shù)據(jù)文件等,用戶可以把它們隨意存放在任意的分區(qū)。

  這樣組織優(yōu)點(diǎn)更缺點(diǎn)。優(yōu)點(diǎn)是:用戶存放東西的位置比較自由,系統(tǒng)結(jié)構(gòu)簡(jiǎn)單便于新用戶上手。缺點(diǎn)很多這里只列出幾種:(1由于對(duì)“系統(tǒng)文件”和“用戶文件”存放位置缺乏細(xì)致的規(guī)定,數(shù)據(jù)組織的方式顯得比較凌亂,并且兩種文件之間很容易相互干擾(例如數(shù)據(jù)文。(2用戶的使用經(jīng)驗(yàn)對(duì)系統(tǒng)的使用效率影響很大。一般來(lái)說(shuō),我們使用Windows時(shí)候合理使用分區(qū)會(huì)提升的系統(tǒng)效率。例如根據(jù)需要設(shè)置合理的系統(tǒng)分區(qū)(C分區(qū)的大小,盡量少往C盤存放數(shù)據(jù)文件,根據(jù)具體情況可以將一些“重要并且常用的” 程序安裝在C分區(qū),隨時(shí)保持系統(tǒng)目錄的清潔和大小助于提升系統(tǒng)的運(yùn)行速度,用戶安裝的一般軟件盡量不要安裝在C盤,安裝軟件時(shí)候指定的位置最好采用默認(rèn)標(biāo)準(zhǔn)目錄名稱(例如X:Program Files目錄,這里X表示盤符而不要自己定義一些奇怪名字的目錄,這樣便于軟件的維護(hù)等等。(3共享不便。Windows上經(jīng)驗(yàn)的用戶們會(huì)將自己的目錄結(jié)構(gòu)組織好,但是每個(gè)用戶組織自己內(nèi)容的方式是不一樣的,所以他的機(jī)器上哪里存放了什么內(nèi)容,別人很難知道,為共享帶來(lái)了麻煩。但是這些在Linux系統(tǒng)中,情況就所不同了。

  2、Linux上面的文件系統(tǒng)

  在Linux系統(tǒng)中,正好相反,一切東西都是存放在一個(gè)唯一的“虛擬文件系統(tǒng)”中的,這個(gè)“虛擬文件系統(tǒng)”是樹狀的結(jié)構(gòu)以一個(gè)根目錄開(kāi)始。啟動(dòng)系統(tǒng)后,先有這個(gè)虛擬文件系統(tǒng),再硬盤,再把某個(gè)硬盤的某個(gè)分區(qū)做為這個(gè)虛擬文件系統(tǒng)的一部分(用某個(gè)子目錄表示這個(gè)分區(qū),再通過(guò)這個(gè)虛擬文件系統(tǒng)中對(duì)應(yīng)硬盤分區(qū)的那個(gè)子目錄確定硬盤分區(qū)中的特定文件系統(tǒng),最后的文件就存放在這個(gè)特定的文件系統(tǒng)中,也就是說(shuō),Linux系統(tǒng)是通過(guò)“虛擬文件系統(tǒng)-硬盤-硬盤上的分區(qū)-分區(qū)上的特定文件系統(tǒng)-特定文件系統(tǒng)中的文件”這樣的順序來(lái)訪問(wèn)一個(gè)文件的。

  可能對(duì)習(xí)慣了使用Windows的用戶來(lái)說(shuō),這樣的組織點(diǎn)不太適應(yīng),這里的“虛擬文件系統(tǒng)”,實(shí)質(zhì)就是一顆目錄樹,最開(kāi)始的目錄叫做根目錄,根目錄中又有每一級(jí)子目錄,或者文件,子目錄又有子子目錄和文件,其中每個(gè)子目錄都特定的功能這個(gè)功能是約定俗成了的后面會(huì)詳細(xì)說(shuō)明……和Windows中把硬盤分成的C,D,E分區(qū)的概念不同了,Linux中最開(kāi)始根本就沒(méi)有硬盤的概念,就只有一個(gè)純粹的“虛擬文件系統(tǒng)”。如果想要使用哪個(gè)硬盤的某個(gè)分區(qū),就把那個(gè)分區(qū)“掛載”到某個(gè)子目錄之下,這樣硬盤中的分區(qū),文件系統(tǒng),目錄等內(nèi)容就呈現(xiàn)到了那個(gè)子目錄里面。也就是說(shuō),在Linux中,我們使用硬盤中的數(shù)據(jù),實(shí)際是先把硬盤“掛載”到某個(gè)子目錄下,然后通過(guò)那個(gè)子目錄來(lái)訪問(wèn)硬盤的。硬盤中原的數(shù)據(jù)組織結(jié)構(gòu)都反映到了子目錄上,成為了整個(gè)“虛擬文件系統(tǒng)”根目錄下的一顆子樹。

  也許人會(huì)問(wèn),沒(méi)這個(gè)“虛擬文件系統(tǒng)”就無(wú)法使用硬盤,但是最開(kāi)始沒(méi)有硬盤,那么這個(gè)“虛擬文件系統(tǒng)”以及相應(yīng)的組織結(jié)構(gòu)是怎么存放起來(lái)的呢?這個(gè)問(wèn)題,就像先雞還是先蛋這個(gè)問(wèn)題一樣看似簡(jiǎn)單實(shí)則……但是在Linux中,很輕易地跳出了這個(gè)思維循環(huán),問(wèn)題的答案并沒(méi)在“虛擬文件系統(tǒng)”和“硬盤”這兩者之間徘徊,而是第者——“內(nèi)存”,Linux系統(tǒng)啟動(dòng)起來(lái)之后,整個(gè)“虛擬文件系統(tǒng)”的組織結(jié)構(gòu),都是隨著每次系統(tǒng)的啟動(dòng)自動(dòng)在內(nèi)存中建立好了的,根本就不需要硬盤。

  Linux這樣組織它的目錄結(jié)構(gòu),缺點(diǎn)當(dāng)然更多的是優(yōu)點(diǎn)。缺點(diǎn)就是,最開(kāi)始“虛擬文件系統(tǒng)”中的每個(gè)子目錄的功能是事先規(guī)定好了的,我們需要事先知道那些目錄存放哪些文件,然后在相應(yīng)的位置中創(chuàng)建自己的內(nèi)容(當(dāng)然最開(kāi)始的新手,也可以像Windows那樣隨意地創(chuàng)建目錄和文件,實(shí)際上最開(kāi)始的目錄也不多,主要就那么幾個(gè),花不了多長(zhǎng)時(shí)間就會(huì)明白它們的作用的,本文后面著重對(duì)這些目錄進(jìn)行介紹。而它的優(yōu)點(diǎn)這里只說(shuō)幾點(diǎn):(1當(dāng)我們了解了這些目錄的功能之后,我們對(duì)整個(gè)Linux操作系統(tǒng)的運(yùn)行機(jī)理也會(huì)一個(gè)大致的了解。(2助于我們以一種最高效的方式組織自己的數(shù)據(jù),分類清晰并且不會(huì)對(duì)系統(tǒng)運(yùn)行有任何影響,規(guī)定了最開(kāi)始每個(gè)目錄的功能,并沒(méi)有限制我們的自由,因?yàn)槲覀冎牢覀兛梢栽谀睦飫?chuàng)建自己的子目錄并且在子目錄中任意創(chuàng)建自己的文件。(3由于一個(gè)統(tǒng)一性的目錄組織結(jié)構(gòu),所以Linux上面的用戶在共享數(shù)據(jù)的時(shí)候,能夠很容易地猜測(cè)出他所需要的數(shù)據(jù)大致存放在什么位置,同時(shí)也不會(huì)影響到私有數(shù)據(jù)的保密性(怎么存放自己的私有數(shù)據(jù),那是用戶自己決定的。

  3、Linux文件系統(tǒng)在操作系統(tǒng)中的位置

  在Linux系統(tǒng)中,主要兩個(gè)東西:“虛擬文件系統(tǒng)”中的文件和Linux操作系統(tǒng)內(nèi)核本身。邏輯上可以認(rèn)為前者屬于上層,后者在下層,前者基于后者,后者依賴前者而存在。

  Linux把除了它本身(Linux操作系統(tǒng)內(nèi)核以外的一切事物都看作是在“虛擬文件系統(tǒng)”中的文件了。無(wú)論是鍵盤,鼠標(biāo),數(shù)據(jù),程序,CPU,內(nèi)存,網(wǎng)卡……無(wú)論是硬件、軟件、數(shù)據(jù)還是內(nèi)存中的東西,我們都可以在虛擬文件系統(tǒng)中的相應(yīng)子目錄對(duì)他們進(jìn)行訪問(wèn)和操作,操作統(tǒng)一。而實(shí)現(xiàn)這些管理的幕后就是Linux操作系統(tǒng)內(nèi)核本身:?jiǎn)?dòng)Linux系統(tǒng)的時(shí)候,首先電腦把操作系統(tǒng)內(nèi)核加載到內(nèi)存中,內(nèi)核本身提供了文件管理,設(shè)備管理,內(nèi)存管理,CPU進(jìn)程調(diào)度管理,網(wǎng)絡(luò)管理等功能,等內(nèi)核運(yùn)行起來(lái)之后,就在內(nèi)存中建立起相應(yīng)的“虛擬文件系統(tǒng)”,最后就是內(nèi)核利用它提供的那些功能,來(lái)管理虛擬文件系統(tǒng)中的硬件軟件等各種資源了。

  Linux把提供操作系統(tǒng)本身功能(管理計(jì)算機(jī)軟硬件資源的那些部分劃給了操作系統(tǒng)內(nèi)核,使得操作系統(tǒng)內(nèi)核成為一個(gè)獨(dú)立的部分,有它自己的源代碼;其他的一切(軟件,硬件,數(shù)據(jù))都根據(jù)其特性有自己的源代碼或者自由地組織并且存放在那個(gè)“虛擬文件系統(tǒng)中”由操作系統(tǒng)內(nèi)核來(lái)管理。這樣,將系統(tǒng)本身和系統(tǒng)所管理的資源分開(kāi),有助于對(duì)系統(tǒng)或者系統(tǒng)所管理的資源進(jìn)行靈活的定制和擴(kuò)展,還能按需快速建立起只適合自己使用的操作系統(tǒng)(實(shí)際Ubuntu,F(xiàn)edora,RedHat等各種不同的Linux操作系統(tǒng)簡(jiǎn)單來(lái)說(shuō)就是對(duì)其文件系統(tǒng)和內(nèi)核進(jìn)行了不同的配置而產(chǎn)生的“大眾化”的操作系統(tǒng),相比之下,Windows就顯得非常地零亂復(fù)雜,將系統(tǒng)、軟件、硬件都混在了一起。

  另外,我們還要注意個(gè)問(wèn)題,就是在我們的角度上,是使用路徑來(lái)訪問(wèn)一個(gè)文件的。表示文件的路徑由“文件所在的目錄+各級(jí)目錄的分隔符+文件”個(gè)部分組成,這無(wú)論在Windows還是Linux上面,都是一樣的,所不同的是,Windows下面目錄分隔符是“”,Linux下面是“/”,也許這也是兩者之間為了表示其各自立場(chǎng)不同的一個(gè)原因吧?^_^

  例如:

  Window系統(tǒng)上的文件:D:Program FilesPPStreamPPStream.exe

  Linux系統(tǒng)上的文件:/usr/bin/screen

  二、Linux上面的虛擬文件系統(tǒng)目錄組織

  實(shí)質(zhì)上,我們啟動(dòng)系統(tǒng)所看到的“根目錄”,邏輯上是Linux虛擬文件系統(tǒng)的根目錄中的一個(gè)子目錄,我們看不到除了這個(gè)“根目錄”以外的其他的目錄,那些目錄和操作系統(tǒng)的具體實(shí)現(xiàn)相關(guān)是被控制系統(tǒng)內(nèi)核隱藏起來(lái)了的,所以這里就介紹我們所能看到的文件系統(tǒng)中的“根目錄”的各個(gè)子目錄中的作用吧。

  在Linux文件系統(tǒng)中的每一個(gè)子目錄都有特定的目的和用途。一般都是根據(jù)FHS標(biāo)準(zhǔn)定義一個(gè)正式的文件系統(tǒng)結(jié)構(gòu)的,這個(gè)標(biāo)準(zhǔn)規(guī)定了哪些目錄應(yīng)該哪些作用。這里我們先介紹一些日常經(jīng)常用到的目錄,然后給出FHS相關(guān)的內(nèi)容。

  1、常用的重要目錄

  這里,根據(jù)本人的使用經(jīng)驗(yàn),給出比較常見(jiàn)重要的一些目錄,最開(kāi)始我們對(duì)它們有所了解就可以了。隨著對(duì)Linux使用的經(jīng)驗(yàn)的加深,我們會(huì)了解越來(lái)越多的目錄。對(duì)目錄的功能知道得越多,我們對(duì)Linux系統(tǒng)的工作原理就理解的越深刻,理解操作系統(tǒng)的工作原理,更助于我們更為規(guī)范地使用和理解系統(tǒng)中每個(gè)目錄存在的意義,直至最后幾乎知道系統(tǒng)中的每個(gè)文件……

  /

  根目錄。

  包含了幾乎所的文件目錄。相當(dāng)于中央系統(tǒng)。進(jìn)入的最簡(jiǎn)單方法是:cd /。

  /boot

  引導(dǎo)程序,內(nèi)核等存放的目錄。

  這個(gè)目錄,包括了在引導(dǎo)過(guò)程中所必需的文件,引導(dǎo)程序的相關(guān)文件(例如grub,lilo以及相應(yīng)的配置文件以及Linux操作系統(tǒng)內(nèi)核相關(guān)文件(例如vmlinuz等一般都存放在這里。在最開(kāi)始的啟動(dòng)階段,通過(guò)引導(dǎo)程序?qū)?nèi)核加載到內(nèi)存,完成內(nèi)核的啟動(dòng)(這個(gè)時(shí)候,虛擬文件系統(tǒng)還不存在,加載的內(nèi)核雖然是從硬盤讀取的,但是沒(méi)經(jīng)過(guò)Linux的虛擬文件系統(tǒng),這是比較底層的東西來(lái)實(shí)現(xiàn)的。然后內(nèi)核自己創(chuàng)建好虛擬文件系統(tǒng),并且從虛擬文件系統(tǒng)的其他子目錄中(例如/sbin 和 /etc加載需要在開(kāi)機(jī)啟動(dòng)的其他程序或者服務(wù)或者特定的動(dòng)作(部分可以由用戶自己在相應(yīng)的目錄中修改相應(yīng)的文件來(lái)配制。如果我們的機(jī)器中包含多個(gè)操作系統(tǒng),那么可以通過(guò)修改這個(gè)目錄中的某個(gè)配置文件(例如grub.conf來(lái)調(diào)整啟動(dòng)的默認(rèn)操作系統(tǒng),系統(tǒng)啟動(dòng)的擇菜單,以及啟動(dòng)延遲等參數(shù)。

  /sbin

  超級(jí)用戶可以使用的命令的存放目錄。

  存放大多涉及系統(tǒng)管理的命令(例如引導(dǎo)系統(tǒng)的init程序,是超級(jí)權(quán)限用戶root的可執(zhí)行命令存放地,普通用戶無(wú)權(quán)限執(zhí)行這個(gè)目錄下的命令(但是時(shí)普通用戶也可能會(huì)用到。這個(gè)目錄和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin等目錄是相似的,我們要記住,凡是目錄sbin中包含的都是root權(quán)限才能執(zhí)行的,這樣就行了。后面會(huì)具體區(qū)分。

  /bin

  普通用戶可以使用的命令的存放目錄。

  系統(tǒng)所需要的那些命令位于此目錄,比如ls、cp、mkdir等命令;類似的目錄還/usr/bin,/usr/local/bin等等。這個(gè)目錄中的文件都是可執(zhí)行的、普通用戶都可以使用的命令。作為基礎(chǔ)系統(tǒng)所需要的最基礎(chǔ)的命令就是放在這里。

  /lib

  根目錄下的所程序的共享庫(kù)目錄。

  此目錄下包含系統(tǒng)引導(dǎo)和在根用戶執(zhí)行命令時(shí)候所必需用到的共享庫(kù)。做個(gè)不太好但是比較形象的比喻,點(diǎn)類似于Windows上面的system32目錄。理說(shuō),這里存放的文件應(yīng)該是/bin目錄下程序所需要的庫(kù)文件的存放地,也不排除一些例外的情況。類似的目錄還/usr/lib,/usr/local/lib等等。

  /dev

  設(shè)備文件目錄。

  在Linux中設(shè)備都是以文件形式出現(xiàn),這里的設(shè)備可以是硬盤,鍵盤,鼠標(biāo),網(wǎng)卡,終端,等設(shè)備,通過(guò)訪問(wèn)這些文件可以訪問(wèn)到相應(yīng)的設(shè)備。設(shè)備文件可以使用mknod命令來(lái)創(chuàng)建,具體參見(jiàn)相應(yīng)的命令;而為了將對(duì)這些設(shè)備文件的訪問(wèn)轉(zhuǎn)化為對(duì)設(shè)備的訪問(wèn),需要向相應(yīng)的設(shè)備提供設(shè)備驅(qū)動(dòng)模塊(一般將設(shè)備驅(qū)動(dòng)編譯之后,生成的結(jié)果是一個(gè)*.ko類型的二進(jìn)制文件,在內(nèi)核啟動(dòng)之后,再通過(guò)insmod等命令加載相應(yīng)的設(shè)備驅(qū)動(dòng)之后,我們就可以通過(guò)設(shè)備文件來(lái)訪問(wèn)設(shè)備了。一般來(lái)說(shuō),想要Linux系統(tǒng)支持某個(gè)設(shè)備,只要個(gè)東西:相應(yīng)的硬件設(shè)備,支持硬件的驅(qū)動(dòng)模塊,以及相應(yīng)的設(shè)備文件。

  /home

  普通用戶的家目錄($HOME目錄。

  在Linux機(jī)器上,用戶主目錄通常直接或間接地置在此目錄下。其結(jié)構(gòu)通常由本地機(jī)的管理員來(lái)決定。通常而言,系統(tǒng)的每個(gè)用戶都自己的家目錄,目錄以用戶名作為名字存放在/home下面(例如quietheart用戶,其家目錄的名字為/home/quietheart。該目錄中保存了絕大多數(shù)的用戶文件(用戶自己的配置文件,定制文件,文檔,數(shù)據(jù)等),root用戶除外(參見(jiàn)后面的/root目錄。由于這個(gè)目錄包含了用戶實(shí)際的數(shù)據(jù),通常系統(tǒng)管理員為這個(gè)目錄單獨(dú)掛載一個(gè)獨(dú)立的磁盤分區(qū),這樣這個(gè)目錄的文件系統(tǒng)格式就可能和其他目錄不一樣了(盡管表面上看,這個(gè)目錄還是屬于根目錄的一棵子樹上),有利于數(shù)據(jù)的維護(hù)。

  /root

  用戶root的$HOME目錄

  系統(tǒng)管理員(就是root用戶或超級(jí)用戶)的主目錄比較特殊,不存放在/home中,而是直接放在/root目錄下了。

  /etc

  全局的配置文件存放目錄。

  系統(tǒng)和程序一般都可以通過(guò)修改相應(yīng)的配置文件,來(lái)進(jìn)行配置。例如,要配置系統(tǒng)開(kāi)機(jī)的時(shí)候啟動(dòng)那些程序,配置某個(gè)程序啟動(dòng)的時(shí)候顯示什么樣的風(fēng)格等等。通常這些配置文件都集中存放在/etc目錄中,所以想要配置什么東西的話,可以在/etc下面尋找我們可能需要修改的文件。一些大型套件,如X11,在 /etc 下它們自己的子目錄。系統(tǒng)配置文件可以放在這里或在 /usr/etc。 不過(guò)所程序總是在 /etc 目錄下查找所需的配置文件,你也可以將這些文件鏈接到目錄 /usr/etc。另外,還一個(gè)需要注意的常見(jiàn)現(xiàn)象就是,當(dāng)某個(gè)程序在某個(gè)用戶下運(yùn)行的時(shí)候,可能會(huì)在該用戶的家目錄中生成一個(gè)配置文件(一般這個(gè)文件最開(kāi)始就是/etc下相應(yīng)配置文件的拷貝,存放相應(yīng)于“當(dāng)前用戶”的配置,這樣當(dāng)前用戶可以通過(guò)配置這個(gè)家目錄的配置文件,來(lái)改變程序的行為,并且這個(gè)行為只是該用戶特的。原因就是:一般來(lái)說(shuō)一個(gè)程序啟動(dòng),如果需要讀取一些配置文件的話,它會(huì)首先讀取當(dāng)前用戶家目錄的配置文件,如果存在就使用;如果不存在它就到/etc下讀取全局的配置文件進(jìn)而啟動(dòng)程序。就是這個(gè)配置文件不自動(dòng)生成,我們手動(dòng)在自己的家目錄中創(chuàng)建一個(gè)文件的話,也有許多程序會(huì)首先讀取到這個(gè)家目錄的文件并且以它的配置作為啟動(dòng)的選項(xiàng)(例如我們可以在家目錄中創(chuàng)建vim程序的配置文件.vimrc,來(lái)配置自己的vim程序。

  /usr

  這個(gè)目錄中包含了命令庫(kù)文件和在通常操作中不會(huì)修改的文件。

  這個(gè)目錄對(duì)于系統(tǒng)來(lái)說(shuō)也是一個(gè)非常重要的目錄,其地位類似Windows上面的”Program Files”目錄(請(qǐng)?jiān)徫铱赡苓@樣做比較不太恰當(dāng)^_^。安裝程序的時(shí)候,默認(rèn)就是安裝在此文件內(nèi)部某個(gè)子文件夾內(nèi)。輸入命令后系統(tǒng)默認(rèn)執(zhí)行/usr/bin下的程序(當(dāng)然,前提是這個(gè)目錄的路徑已經(jīng)被添加到了系統(tǒng)的環(huán)境變量中。此目錄通常也會(huì)掛載一個(gè)獨(dú)立的磁盤分區(qū),它應(yīng)保存共享只讀類文件,這樣它可以被運(yùn)行Linux的不同主機(jī)掛載。

  /usr/lib

  目標(biāo)庫(kù)文件,包括動(dòng)態(tài)連接庫(kù)加上一些通常不是直接調(diào)用的可執(zhí)行文件的存放位置。

  這個(gè)目錄功能類似/lib目錄,理說(shuō),這里存放的文件應(yīng)該是/bin目錄下程序所需要的庫(kù)文件的存放地,也不排除一些例外的情況。

  /usr/bin

  一般使用者使用并且不是系統(tǒng)自檢等所必需可執(zhí)行文件的目錄。

  此目錄相當(dāng)于根文件系統(tǒng)下的對(duì)應(yīng)目錄(/bin,非啟動(dòng)系統(tǒng),非修復(fù)系統(tǒng)以及非本地安裝的程序一般都放在此目錄下。

  /usr/sbin

  管理員使用的非系統(tǒng)必須的可執(zhí)行文件存放目錄。

  此目錄相當(dāng)于根文件系統(tǒng)下的對(duì)應(yīng)目錄(/sbin,保存系統(tǒng)管理程序的二進(jìn)制文件,并且這些文件不是系統(tǒng)啟動(dòng)或文件系統(tǒng)掛載 /usr 目錄或修復(fù)系統(tǒng)所必需的。

  /usr/share

  存放共享文件的目錄。

  在此目錄下不同的子目錄中保存了同一個(gè)操作系統(tǒng)在不同構(gòu)架下工作時(shí)特定應(yīng)用程序的共享數(shù)據(jù)(例如程序文檔信息)。使用者可以找到通常放在 /usr/doc 或 /usr/lib 或 /usr/man 目錄下的這些類似數(shù)據(jù)。

  /usr/include

  C程序語(yǔ)言編譯使用的頭文件。

  linux下開(kāi)發(fā)和編譯應(yīng)用程序所需要的頭文件一般都存放在這里,通過(guò)頭文件來(lái)使用某些庫(kù)函數(shù)。默認(rèn)來(lái)說(shuō)這個(gè)路徑被添加到了環(huán)境變量中,這樣編譯開(kāi)發(fā)程序的時(shí)候編譯器會(huì)自動(dòng)搜索這個(gè)路徑,從中找到你的程序中可能包含的頭文件。

  /usr/local

  安裝本地程序的一般默認(rèn)路徑。

  當(dāng)我們下載一個(gè)程序源代碼,編譯并且安裝的時(shí)候,如果不特別指定安裝的程序路徑,那么默認(rèn)會(huì)將程序相關(guān)的文件安裝到這個(gè)目錄的對(duì)應(yīng)目錄下。例如,安裝的程序可執(zhí)行文件被安裝(安裝實(shí)質(zhì)就是復(fù)制到了/usr/local/bin下面,此程序(可執(zhí)行文件所需要依賴的庫(kù)文件被安裝到了/usr/local/lib目錄下,被安裝的軟件如果是某個(gè)開(kāi)發(fā)庫(kù)(例如Qt,Gtk等那么相應(yīng)的頭文件可能就被安裝到了/usr/local/include中等等。也就是說(shuō),這個(gè)目錄存放的內(nèi)容,一般都是我們后來(lái)自己安裝的軟件的默認(rèn)路徑,如果擇了這個(gè)默認(rèn)路徑作為軟件的安裝路徑,被安裝的軟件的所文件都限制在這個(gè)目錄中,其中的子目錄就相應(yīng)于根目錄的子目錄。

  /proc

  特殊文件目錄。

  這個(gè)目錄采用一種特殊的文件系統(tǒng)格式(proc格式,內(nèi)核支持這種格式。其中包含了全部虛擬文件。它們并不保存在磁盤中,也不占據(jù)磁盤空間(盡管命令ls -c會(huì)顯示它們的大小)。當(dāng)您查看它們時(shí),您實(shí)際上看到的是內(nèi)存里的信息,這些文件助于我們了解系統(tǒng)內(nèi)部信息。例如:

  ├1/ 關(guān)于進(jìn)程1的信息目錄。每個(gè)進(jìn)程在/proc 下一個(gè)名為其進(jìn)程號(hào)的目錄。

  ├cpuinfo 處理器信息,如類型、制造商、型號(hào)和性能。

  ├devices 當(dāng)前運(yùn)行的核心配置的設(shè)備驅(qū)動(dòng)的列表。

  ├dma 顯示當(dāng)前使用的DMA通道。

  ├filesystems 核心配置的文件系統(tǒng)。

  ├interrupts 顯示使用的中斷,and how many of each there have been.

  ├ioports 當(dāng)前使用的I/O端口。

  ├kcore 系統(tǒng)物理內(nèi)存映象。與物理內(nèi)存大小一樣,但實(shí)際不占這么多內(nèi)存;

  ├kmsg 核心輸出的消息。也被送到syslog 。

  ├ksyms 核心符號(hào)表。

  ├loadavg 系統(tǒng)”平均負(fù)載”;3個(gè)沒(méi)意義的指示器指出系統(tǒng)當(dāng)前的工作量。

  ├m(xù)eminfo 存儲(chǔ)器使用信息,包括物理內(nèi)存和swap。

  ├m(xù)odules 當(dāng)前加載了哪些核心模塊。

  ├net 網(wǎng)絡(luò)協(xié)議狀態(tài)信息。

  ├self 到查看/proc 的程序的進(jìn)程目錄的符號(hào)連接。

  ├stat 系統(tǒng)的不同狀態(tài)

  ├uptime 系統(tǒng)啟動(dòng)的時(shí)間長(zhǎng)度。

  └version 核心版本。

  /opt

  可擇的文件目錄。

  這個(gè)目錄表示的是可擇的意思,些自定義軟件包或者第方工具,就可以安裝在這里。比如在Fedora Core 5.0中,OpenOffice就是安裝在這里。些我們自己編譯的軟件包,就可以安裝在這個(gè)目錄中;通過(guò)源碼包安裝的軟件,可以把它們的安裝路徑設(shè)置成/opt這樣來(lái)安裝。這個(gè)目錄的作用一點(diǎn)類似/usr/local。

  /mnt

  臨時(shí)掛載目錄。

  這個(gè)目錄一般是用于存放掛載儲(chǔ)存設(shè)備的掛載目錄的,比如磁盤,光驅(qū),網(wǎng)絡(luò)文件系統(tǒng)等,當(dāng)我們需要掛載某個(gè)磁盤設(shè)備的時(shí)候,可以把磁盤設(shè)備掛載到這個(gè)目錄上去,這樣我們可以直接通過(guò)訪問(wèn)這個(gè)目錄來(lái)訪問(wèn)那個(gè)磁盤了。一般來(lái)說(shuō),我們最好在/mnt目錄下面多建立幾個(gè)子目錄,掛載的時(shí)候掛載到這些子目錄上面,因?yàn)橥ǔN覀兛赡懿粌H僅是掛載一個(gè)設(shè)備吧?

  /media

  掛載的媒體設(shè)備目錄。

  掛載的媒體設(shè)備目錄,一般外部設(shè)備掛載到這里,例如cdrom等。比如我們插入一個(gè)U盤,我們一般會(huì)發(fā)現(xiàn),Linux自動(dòng)在這個(gè)目錄下建立一個(gè)disk目錄,然后把U盤掛載到這個(gè)disk目錄上,通過(guò)訪問(wèn)這個(gè)disk來(lái)訪問(wèn)U盤。

  /var

  內(nèi)容經(jīng)常變化的目錄。

  此目錄下文件的大小可能會(huì)改變,如緩沖文件,日志文件,緩存文件,等一般都存放在這里。

  /tmp

  臨時(shí)文件目錄。

  該目錄存放系統(tǒng)中的一些臨時(shí)文件,文件可能會(huì)被系統(tǒng)自動(dòng)清空。的系統(tǒng)直接把tmpfs類型的文件系統(tǒng)掛載到這個(gè)目錄上,tmpfs文件系統(tǒng)由Linux內(nèi)核支持,在這個(gè)文件系統(tǒng)中的數(shù)據(jù),實(shí)際上是內(nèi)存中的,由于內(nèi)存的數(shù)據(jù)斷電易失,當(dāng)系統(tǒng)重新啟動(dòng)的時(shí)候我們就會(huì)發(fā)現(xiàn)這個(gè)目錄被清空了。

  /lost+found

  恢復(fù)文件存放的位置。

  當(dāng)系統(tǒng)崩潰的時(shí)候,在系統(tǒng)修復(fù)過(guò)程中需要恢復(fù)的文件,可能就會(huì)在這里被找到了,這個(gè)目錄一般為空。

  以上目錄,是最常見(jiàn)的重要目錄。其中,有些目錄初學(xué)者容易混淆,這里簡(jiǎn)單區(qū)分一下:

  /bin,/sbin與/usr/bin,/usr/sbin:

  /bin一般存放對(duì)于用戶和系統(tǒng)來(lái)說(shuō)“必須”的程序(二進(jìn)制文件。

  /sbin一般存放用于系統(tǒng)管理的“必需”的程序(二進(jìn)制文件,一般普通用戶不會(huì)使用,根用戶使用。

  /usr/bin一般存放的只是對(duì)用戶和系統(tǒng)來(lái)說(shuō)“不是必需的”程序(二進(jìn)制文件。

  /usr/sbin一般存放用于系統(tǒng)管理的系統(tǒng)管理的不是必需的程序(二進(jìn)制文件)。

  /lib與/usr/lib:

  /lib和/usr/lib的區(qū)別類似/bin,/sbin與/usr/bin,/usr/sbin。

  /lib一般存放對(duì)于用戶和系統(tǒng)來(lái)說(shuō)“必須”的庫(kù)(二進(jìn)制文件。

  /usr/lib一般存放的只是對(duì)用戶和系統(tǒng)來(lái)說(shuō)“不是必需的”庫(kù)(二進(jìn)制文件。

  其他還一些目錄例如/home/user/bin,/home/user/opt,/home/user/etc,/usr/local/etc等等,其作用都是類似于/etc,/bin等目錄的,可能只是層次概念不同了,使用Linux時(shí)間長(zhǎng)了,會(huì)逐漸體會(huì)到其中的含義。

  當(dāng)然,我們可以無(wú)視這些目錄,像使用Windows那樣自由的,不管啥文件,想往哪存就往哪存,還是那句話,使用Linux時(shí)間長(zhǎng)了,會(huì)逐漸體會(huì)到其中的含義,到時(shí)候也許我們想要亂來(lái)都不行了呢。^_^

  2、對(duì)文件系統(tǒng)目錄的分類標(biāo)準(zhǔn)

  在大多數(shù)Linux系統(tǒng)上面,我們可以使用一個(gè)命令:“man hier”,通過(guò)這個(gè)命令的輸出,就知道“根目錄”中所子目錄的作用了。這個(gè)命令含義我不多說(shuō)了,總之這里的hier就是對(duì)Linux文件系統(tǒng)中各級(jí)目錄的標(biāo)準(zhǔn)功能,是一個(gè)大家都約定俗成了的東西。想要了解每個(gè)目錄更詳細(xì)的信息,需要仔細(xì)參考”man hier”的輸出。下面就是一個(gè)比較簡(jiǎn)短的中文描述的對(duì)文件系統(tǒng)目錄分類的FHS標(biāo)準(zhǔn),也就是對(duì)”man hier”的簡(jiǎn)單翻譯。

  NAME 名稱

  hier - 文件系統(tǒng)描述

  DESCRIPTION 描述

  一個(gè)典型的Linux系統(tǒng)具以下幾個(gè)目錄結(jié)構(gòu):

  /

  根目錄是所目錄樹開(kāi)始的地方。

  /bin

  此目錄下包括了單用戶方式及系統(tǒng)啟動(dòng)或修復(fù)所用到的所執(zhí)行程序。

  /boot

  包括了引導(dǎo)程序的靜態(tài)文件。此目錄下包括了在引導(dǎo)過(guò)程中所必需的文件。系統(tǒng)裝載程序及配制文件在 /sbin 和 /etc 目錄中找到。

  /dev

  對(duì)應(yīng)物理設(shè)備的指定文件或驅(qū)動(dòng)程序。參見(jiàn)mknod(1)。

  /dos

  如果MS-DOS和Linux共存于一臺(tái)計(jì)算機(jī)時(shí),這里通常用于存放DOS 文件系統(tǒng)。

  /etc

  用于存放本地機(jī)的配置文件。一些大型套件,如X11,在 /etc 下它們自己的子目錄。系統(tǒng)配置文件可以放在這里或在 /usr/etc。 不過(guò)所程序總是在 /etc 目錄下查找所需的配置文件,你也可以將這些文件鏈接到目錄 /usr/etc.

  /etc/skel

  當(dāng)建立一個(gè)新用戶賬號(hào)時(shí),此目錄下的文件通常被復(fù)制到用戶的主目錄下。

  /etc/X11X11

  window system所需的配置文件。

  /home

  在Linux機(jī)器上,用戶主目錄通常直接或間接地置在此目錄下。其結(jié)構(gòu)通常由本地機(jī)的管理員來(lái)決定。

  /lib

  此目錄下包含系統(tǒng)引導(dǎo)和在根用戶執(zhí)行命令所必需用到的共享庫(kù)。

  /mnt

  掛載臨時(shí)文件系統(tǒng)的掛載點(diǎn)。

  /proc

  這是提供運(yùn)行過(guò)程和核心文件系統(tǒng) proc 掛載點(diǎn)。這一”偽”文件系統(tǒng)在以下章節(jié)中詳細(xì)敘述 proc(5)。

  /sbin

  類似于 /bin 此目錄保存了系統(tǒng)引導(dǎo)所需的命令,但這些命令一般使用者不能執(zhí)行。

  /tmp

  此目錄用于保存臨時(shí)文件,臨時(shí)文件在日常維護(hù)或在系統(tǒng)啟動(dòng)時(shí)無(wú)需通知便可刪除

  /usr

  此目錄通常用于從一個(gè)獨(dú)立的分區(qū)上掛載文件。它應(yīng)保存共享只讀類文件,這樣它可以被運(yùn)行Linux的不同主機(jī)掛載。

  /usr/X11R6

  X-Window系統(tǒng) Version 11 release 6.

  /usr/X11R6/bin

  X-Windows系統(tǒng)使用的二進(jìn)制文件;通常是在對(duì)更傳統(tǒng)的 /usr/bin/X11 中文件的符號(hào)連接。

  /usr/X11R6/lib

  保存與X-Windows系統(tǒng)關(guān)數(shù)據(jù)文件。

  /usr/X11R6/lib/X11

  此目錄保存與運(yùn)行X-Windows系統(tǒng)關(guān)其他文件。通常是對(duì)來(lái)自 /usr/lib/X11 中文件的符號(hào)連接。

  /usr/X11R6/include/X11

  此目錄保存包括使用X11窗口系統(tǒng)進(jìn)行編譯程序所需的文件。通常是對(duì)來(lái) /usr/lib/X11 中文件的符號(hào)連接。

  /usr/bin

  這是執(zhí)行程序的主要目錄,其中的絕大多數(shù)為一般使用者使用,除了那些啟動(dòng)系統(tǒng)或修復(fù)系統(tǒng)或不是本地安裝的程序一般都放在此目錄下。

  /usr/bin/X11

  X11執(zhí)行文件放置的地方;在Linux系統(tǒng)中,它通常是對(duì) /usr/X11R6/bin. 符號(hào)連接表

  /usr/dict

  此目錄保存拼寫檢查器所使用的詞匯表文件。

  /usr/doc

  此目錄下應(yīng)可以找到那些已安裝的軟件文件。

  /usr/etc

  此目錄可用來(lái)那些存放整個(gè)網(wǎng)共享的配置文件。然而那可執(zhí)行命令指向總是使用參照使用 /etc 目錄下的文件。 /etc 目錄下連接文件應(yīng)指向 /usr/etc. 目錄下適當(dāng)?shù)奈募?/p>

  /usr/include

  C程序語(yǔ)言編譯使用的Include”包括”文件。

  /usr/include/X11

  C程序語(yǔ)言編譯和X-Windows系統(tǒng)使用的 Include”包括”文件。它通常中指向 /usr/X11R6/include/X11. 符號(hào)連接表。

  /usr/include/asm

  申明匯編函數(shù)的Include”包括”文件,它通常是指向 /usr/src/linux/include/asm 目錄的符號(hào)連接

  /usr/include/linux

  包含系統(tǒng)變更的信息通常是指向 /usr/src/linux/include/linux 目錄的符號(hào)連接表,來(lái)獲得操作系統(tǒng)特定信息。

  (注:使用者應(yīng)在此自行包含那些保證自己開(kāi)發(fā)的程序正常運(yùn)行所需的libc 函數(shù)庫(kù)。不管怎樣,Linux核心系統(tǒng)不是設(shè)計(jì)用來(lái)執(zhí)行直接運(yùn)行用戶程序的,它并不知道用戶程序需要使用哪個(gè)版本的libc庫(kù) 。如果你隨意將 /usr/include/asm 和 /usr/include/linux 指向一個(gè)系統(tǒng)核心,系統(tǒng)很可能崩潰。Debian系統(tǒng)不這么做。它使用 libc*-dev運(yùn)行包中提供的核心系統(tǒng)標(biāo)識(shí),以保證啟動(dòng)所正確的文件。)

  /usr/include/g++

  GNU C++編譯程序所使用的Include”包括”文件。

  /usr/lib

  目標(biāo)庫(kù)文件,包括動(dòng)態(tài)連接庫(kù)加上一些通常不是直接調(diào)用的可執(zhí)行文件案。一些復(fù)雜的程序可能在此占用整個(gè)子目錄。

  /usr/lib/X11

  存放X系統(tǒng)數(shù)據(jù)文件及系統(tǒng)配置文件的地方。 Linux中通常是指向 /usr/X11R6/lib/X11 目錄的符號(hào)連接表。

  /usr/lib/gcc-lib

  GNU C 編譯程序所使用的可執(zhí)行文件案和”包括”文件。 gcc(1).

  /usr/lib/groff

  GNU groff 文件格式系統(tǒng)所使用的文件。

  /usr/lib/uucp

  uucp(1) 所使用的文件。

  /usr/lib/zoneinfo

  關(guān)時(shí)區(qū)信息文件文件。

  /usr/local

  安裝在本地執(zhí)行程序的地方。

  /usr/local/bin

  在此地放置本地執(zhí)行程序的二進(jìn)制文件。

  /usr/local/doc

  放置本地文件。

  /usr/local/etc

  安裝在本地程序的配置文件。

  /usr/local/lib

  安裝在本地程序的庫(kù)文件。

  /usr/local/info

  安裝在本地程序關(guān)信息文件。

  /usr/local/man

  安裝在本地程序使用手冊(cè)。

  /usr/local/sbin

  安裝在本地的系統(tǒng)管理程序。

  /usr/local/src

  安裝在本地程序的原始碼。

  /usr/man

  手冊(cè)頁(yè)通常放在此目錄,或相關(guān)子目錄下。

  /usr/man//man[1-9]

  此目錄在指定的地方以原始碼形式存放手冊(cè)頁(yè)。系統(tǒng)在所的手冊(cè)頁(yè)中使用自己獨(dú)特的語(yǔ)言及代碼集,可能會(huì)省略 substring 子字符串。

  /usr/sbin

  此目錄保存系統(tǒng)管理程序的二進(jìn)制碼,這些文件不是系統(tǒng)啟動(dòng)或文件系統(tǒng)掛載 /usr 目錄或修復(fù)系統(tǒng)所必需的。

  /usr/share

  在此目錄下不同的子目錄中保存了同一個(gè)操作系統(tǒng)在不同構(gòu)架下工作時(shí)特定應(yīng)用程序的共享數(shù)據(jù)。使用者可以找到通常放在 /usr/doc 或 /usr/lib 或 /usr/man 目錄下的這些數(shù)據(jù)。

  /usr/src

  系統(tǒng)不同組成部份的源文件包括參考數(shù)據(jù)報(bào)。不要將你自己與項(xiàng)目關(guān)的文件放這里,因?yàn)樵诎惭b軟件外,/usr下的文件屬性除通常設(shè)為只讀。

  /usr/src/linux

  系統(tǒng)核心資源通常拆包安裝于此。這是系統(tǒng)中重要的一環(huán),因?yàn)?/usr/include/linux 符號(hào)連接表指向此目錄。你應(yīng)當(dāng)使用其他目錄來(lái)來(lái)編譯建立新核心。

  /usr/tmp

  此目錄不再使用了。它應(yīng)指向目錄 /var/tmp。 這個(gè)鏈接只是出于系統(tǒng)兼容的目的,一般不再使用。

  /var

  此目錄下文件的大小可能會(huì)改變,如緩沖文件可日志文件。

  /var/adm

  此目錄為 /var/log 甩替代,通常是指向 /var/log 的符號(hào)連接表。

  /var/backups

  此目錄用來(lái)存放重要系統(tǒng)文件的后備文件

  /var/catman/cat[1-9] or /var/cache/man/cat[1-9]

  此目錄存儲(chǔ)根據(jù)手冊(cè)分類預(yù)先格式化的參考手冊(cè)頁(yè)。(這些參考手冊(cè)頁(yè)是相互獨(dú)立的)

  /var/lock

  此目錄存儲(chǔ)鎖定文件。依據(jù)命名習(xí)慣,設(shè)備鎖定文件是 LCKxxxxx xxxxx與在文件系統(tǒng)中該設(shè)備名相同,使用的格式是HDU UUCP鎖定文件,例如包含進(jìn)程標(biāo)識(shí)PID的鎖定文件是一個(gè)10字節(jié)的ASCII格式的數(shù)字,后面跟一個(gè)換行符。

  /var/log

  各種日志文件。

  /var/preserve

  這是 vi(1) 存放正在編輯中的文件,以便以后可以恢復(fù)。

  /var/run

  運(yùn)行時(shí)的變量文件,如存放進(jìn)程標(biāo)識(shí)和登入使用者信息的文件。 (utmp) 此目錄下文件在系統(tǒng)啟動(dòng)時(shí)被自動(dòng)清除。

  /var/spool

  各種程序產(chǎn)生的緩沖或排除等待的文件

  /var/spool/at

  at(1) 的作業(yè)存緩區(qū)

  /var/spool/cron

  cron(1) 的作業(yè)存緩區(qū)

  /var/spool/lpd

  打印緩存文件。

  /var/spool/mail

  使用者郵箱。

  /var/spool/smail

  存放 smail(1) 郵件發(fā)送程序的緩沖文件。

  /var/spool/news

  新聞子系統(tǒng)的緩沖目錄

  /var/spool/uucp

  uucp(1) 的緩沖文件

  /var/tmp

  類似 /tmp, 此目錄保存未指定持續(xù)時(shí)間的臨時(shí)文件。

【Linux文件系統(tǒng)簡(jiǎn)介】相關(guān)文章:

Linux btrfs文件系統(tǒng)及管理08-12

Linux文件系統(tǒng)操作命令大全08-28

linux文件系統(tǒng)基礎(chǔ)知識(shí)匯總08-28

Linux用戶/文件系統(tǒng)管理詳解08-13

Linux認(rèn)證系統(tǒng)管理:linux下搭建ftp08-26

Linux cpuinfo系統(tǒng)詳解07-29

Linux基本指令大全11-23

Linux認(rèn)證賬戶映射06-21

Linux文件權(quán)限詳解05-11