Linux基礎-15day-Linux系統目錄結構

Linux系統目錄結構

1、目錄介紹

當在使用Linux系統時,可通過ls–l/就會發現,在/下包涵很多的目錄,而在這些目錄中,依舊存在很多目錄或文件。文件系統在Linux下看上去就象樹形結構,所以我們可以把文件系統的結構形象的稱爲樹形結構。

文件系統是用來組織和排列文件存取的,在Linux中,我們可通過ls等工具來查看其結構,在Linux系統中,我們見到的全部都是樹形結構。比如操作系統安裝在一個文件系統中,它表現爲由/起始的樹形結構。linux文件系統的最頂端是/,我們稱/爲Linux的root,也就是Linux操作系統的文件系統。Linux的文件系統的入口就是/,所有的目錄、文件、設備都在/之下,/就是Linux文件系統的組織者。Linux系統一切皆文件。

File system Hierarchy Standard(文件系統目錄標準)的縮寫,多數Linux版本採用這種文件組織形式,類似於Windows操作系統中c盤的文件目錄,FHS採用樹形結構組織文件。FHS定義了系統中每個區域的用途、所需要的最小構成的文件和目錄,同時還給出了例外處理與矛盾處理。

FHS針對目錄樹架構僅定義出三層目錄底下應該放置什麼數據而已,分別是:

1)/(root,根目錄):與開機系統有關;

2)/usr(unix softwar eresource):與軟件安裝/執行有關;

3)/var(variable):與系統運作過程有關。

2、目錄特點

1)/(根)是所有目錄的頂點。

2)目錄結構像一顆倒掛的樹。

3)目錄和磁盤分區,默認是沒有關聯的。

4)/(根)下不同的目錄可能會對應不同的分區或磁盤。

5)所有的目錄都是按照一定的類別和規律組成的。

3、目錄說明

3.1/目錄

根目錄是整個系統最重要的一個目錄,因爲不但所有的目錄都是由根目錄衍生出來的,同時根目錄也與開機/還原/系統修復等動作有關。由於系統開機時需要特定的開機軟件、核心文件、開機所需程序、函式庫等等文件數據,若系統出現錯誤時,根目錄也必須要包含有能夠修復文件系統的程序纔行。因爲根目錄是這麼的重要,所以在FHS的要求方面,它希望根目錄不要放在非常大的分區,因爲越大的分區內會放入越多的數據,如此一來根目錄所在分區就可能會有較多發生錯誤的機會。

每一個文件和目錄都從根開始。

3.2/bin目錄

/bin存放二進制可執行命令的目錄,在/bin下的指令可以被root與一般帳號所使用,主要有:cat,chmod(修改權限),chown,date,mv,mkdir,cp,bash等常用的指令。

3.3/sbin目錄

用來存放二進制可執行文件,只是這裏面的命令只供系統管理員,管理系統使用(root用戶)。例如:iptables(防護牆)、ifconfig(查看網卡信息)、init(設置啓動級別)等。

3.4/boot目錄

主要放置開機會使用到的文件,包括Linux核心文件以及開機選單與開機所需設定檔等等。Linux kernel常用的檔名爲:vmlinuz,如果使用的是grub該開機管理程式,則還會存在/boot/grub/該目錄。

3.5/dev目錄

Linux系統上,把所有的硬件用文件的形式存儲。比較重要的文件有/dev/null,/dev/zero,/dev/tty,/dev/lp*,/dev/hd*,/dev/sd*等。

3.6/etc目錄

yum/rpm安裝的軟件配置文件所在的目錄,系統主要的配置文檔幾乎都放置在該目錄內,例如人員的帳號密碼、各種服務的啓動文件等。該目錄下的各文件屬性是可以讓一般使用者查閱的,但是隻有root有權力修改。

3.7/home目錄

普通用戶家目錄(homedirectory),用來存放普通用戶的文件

3.8/lib目錄

存放二進制庫文件,庫文件一般以.so|lib*|ld*。

3.9/media目錄

media是媒體的英文,顧名思義,該/media底下放置的就是可移除的設備。包括軟碟、光碟、DVD等裝置都暫時掛載於此。常見的檔名有:/media/floppy,/media/cdrom等。

3.10/mn目錄

一般用來臨時掛載臨時存儲設備的目錄。

3.11/opt目錄

一般是給第三方廠家開發的程序的安裝目錄。現在一般不用。

3.12/root目錄

系統管理員(root)的家目錄。如果進入單人維護模式而僅掛載根目錄時,該目錄就能夠擁有root的家目錄,所以我們會希望root的家目錄與根目錄放置在同一個分區中。

3.13/srv目錄

srv可以視爲service的縮寫,是一些網路服務啓動之後,這些服務所需要取用的資料目錄。常見的服務例如WWW,FTP等。

3.14/tmp目錄

臨時文件存放的地方,由於該目錄的權限爲1777,所有用戶對該目錄都有可讀可寫可執行的權限,所以其他人也可以刪除你的文件。

3.15/lost+found目錄

該目錄使用標準的ext2/ext3文件系統格式纔會產生的一個目錄,目的在於當文件系統發生錯誤時,將一些遺失的片段放置到該目錄下。該目錄通常會在分割槽的最頂層存在,例如你加裝一個硬盤於/disk中,那在該系統下就會自動產生一個這樣的目錄/disk/lost+found。

3.16/proc目錄

該目錄本身是一個虛擬文件系統(virtual file system)。它只存在內存當中,而不佔用外部空間。它以文件系統的方式爲訪問系統內核數據的操作提供接口。

3.17/sys目錄

該目錄與/proc類似,也是一個虛擬的文件系統,主要也是記錄與核心相關的信息。包括目前已載入的核心模組與核心偵測到的硬件信息等,該目錄同樣不佔硬盤容量。

3.18/usr目錄

該目錄是集成到主文件系統中的單獨文件系統的掛載點,用來存放系統數據,包含大量標準子目錄。/usr目的是用來存放靜態數據(不隨時間改變的數據),沒有系統管理員的干涉不會改變的數據。

3.19/usr/bin目錄

絕大部分的用戶可使用指令都放在這裏。

3.20/usr/include目錄

c/c++等程序語言的頭文件(header)與包含文件(include)放置處。

3.21/usr/lib目錄

包含各應用軟件的函式庫、目標文件(objectfile),以及不被一般使用者慣用的執行文件或腳本(script)。

3.22/usr/local目錄

統管理員在本機自行安裝自己下載的軟件,建議安裝到此目錄。

3.23/usr/sbin目錄

由超級用戶運行的非基本系統管理程序。

3.24/usr/share目錄

放置共享文件的目錄。/usr/share/doc:軟件雜項的文件說明;/usr/share/zoneinfo:與時區有關的時區文件。

3.25/usr/src目錄

一般原始碼建議放置到這裏,src有source的意思。至於核心原始碼則建議放置到/usr/src/linux/目錄下。

3.26/var

目錄如果/usr是安裝時會佔用較大硬盤容量的目錄,那麼/var就是在系統運作後纔會漸漸佔用硬盤容量的目錄。因爲/var目錄主要針對常態性變動的文件,包括緩存(cache)、登錄檔(logfile)以及某些軟件運作所產生的文件,包括程序文件(lockfile,runfile),或者例如MySQL數據庫的文件等。

3.27/var/cache目錄

應用程序本身運作過程中會產生的一些緩存文件。

3.28/var/lib目錄

程序本身執行的過程中,需要用到的數據文件存放目錄。比如,MySQL的數據庫放置到/var/lib/mysql/。

3.29/var/lock目錄

某些配置或文件資源一次只能被一個應用程序所使用,如果同時有兩個程序使用該裝置時,就可能產生一些錯誤,因此就要將該資源上鎖(lock),以確保該資源只會給單一程序所使用。

3.30/var/log目錄

這是登錄文件放置的目錄。主要存放日誌等信息。

3.31/var/mail目錄

放置個人電子郵件信箱的目錄,不過該目錄也被放置到/var/spool/mail/目錄中,通常這兩個目錄是互爲鏈接文件。

3.32/var/run目錄

某些程序或者是服務啓動後,會將它們的PID放置在該目錄下。

3.33/var/spool目錄

該目錄通常放置一些隊列數據,所謂的“隊列”就是排隊等待其它程序使用的數據。這些數據被使用後通常都會被刪除。舉例來說,系統收到郵件信息會放置到/var/spool/mail/中,但使用者收下該信件後該封信原則上就會被刪除。信件如果暫時寄不出去會被放到/var/spool/mqueue/中,等到被送出後就被刪除。如果是工作排程數據(crontab),就會被放置到/var/spool/cron/目錄中。

 個人公衆號:

image.png


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章