Linux系統(tǒng)介紹(二)文件系統(tǒng)結(jié)構(gòu)

概述

多數(shù)Linux發(fā)行版本都是遵循文件系統(tǒng)結(jié)構(gòu)標(biāo)準(zhǔn)(Filesystem Hierarchy Standard, 簡稱FHS),可以在這里找到該標(biāo)準(zhǔn)。本文對Linux的文件系統(tǒng)結(jié)構(gòu)進(jìn)行簡單的介紹。

根目錄/

所有的Linux系統(tǒng)都有根目錄,由/表示。Linux系統(tǒng)的所有內(nèi)容都在該目錄下。

二進(jìn)制目錄

目錄 說明
/bin 包括了可執(zhí)行的二進(jìn)制文件,通常這些二進(jìn)制文件可以被所有用戶訪問。FHS規(guī)定,該目錄至少包括/bin/cat/bin/date文件
/sbin 包括了系統(tǒng)的二進(jìn)制文件,通過需要root權(quán)限,用來配置系統(tǒng)
/lib 包括了/bin所依賴的庫
/lib/modules Linux將從/lib/modules/$kernel-version/目錄下載入內(nèi)核模塊
/lib32和/lib64 顧名思義,分別存放不同位數(shù)的庫
/opt 該目錄用來存放一些可選的軟件,通常情況下,很多第三方的客戶軟件會(huì)選擇安裝在該目錄下

配置文件目錄

目錄 說明
/boot 顧名思義,用來存放系統(tǒng)啟動(dòng)的配置文件,如grub引導(dǎo)的配置文件/boot/grub/grub.cfg
/etc 幾乎大部分配置文件都放在改目錄下。歷史上etc的全稱是etcetera,不過,現(xiàn)在一般認(rèn)為是Editable Text Configuration的縮寫
/etc/init.d 存放daemon啟動(dòng)、停止等的腳本文件。不過在引入systemd之后,啟動(dòng)腳本有所變化
/etc/skel 存放創(chuàng)建新用戶之后所需的配置文件的模板,如.bashrc文件,默認(rèn)會(huì)從該目錄拷貝到用戶目錄
/etc/sysconfig 一般出現(xiàn)在RedHat系列的Linux系統(tǒng)中,存放系統(tǒng)有關(guān)配置,如IP的配置文件等

數(shù)據(jù)目錄

目錄 說明
/home 當(dāng)創(chuàng)建一個(gè)新用戶的時(shí)候,默認(rèn)情況下,系統(tǒng)會(huì)為用戶創(chuàng)建一個(gè)/home/<username>的目錄用來存放個(gè)人數(shù)據(jù)。
/root 該目錄被很多Linux系統(tǒng)用來存放root用戶的個(gè)人數(shù)據(jù)
/srv 可以被解釋為served by your system。FHS允許rsync,ftp,www等數(shù)據(jù)存放在改目錄
/media 該目錄通常被用來掛載可移除設(shè)備,如CD-ROM,U盤等
/mnt 根據(jù)FHS,該目錄通常被用來作為短期的掛載點(diǎn)
/tmp 該目錄用來存放一些短期的文件,不要再該目錄下存放重要文件,該目錄下的文件有可能會(huì)被系統(tǒng)回收

內(nèi)存目錄

Linux系統(tǒng)中,幾乎所有的東西都被映射成文件,文件有的是對應(yīng)著硬盤、設(shè)備(CD-ROM等)等,有的則被Linux映射到內(nèi)存中。這一節(jié)介紹映射到內(nèi)存中的目錄。

/dev目錄

/dev目錄映射了各種設(shè)備文件,這些文件由系統(tǒng)啟動(dòng)的時(shí)候掃描硬件生成。

物理設(shè)備文件

物理設(shè)備包括很多種,如硬盤,CD-ROM等。不同的物理設(shè)備映射為/dev目錄下不同的文件。如SATA/SCSI設(shè)備或USB通常被映射為/dev/sd*,其中*可以為[a-z]中的任意字符;而IDE設(shè)備通常被映射為/dev/hd*,其中*[a-z]中任意字符。

/dev/tty跟/dev/pts

首先需要搞清楚tty設(shè)備跟pts設(shè)備的區(qū)別。這兩者都是終端設(shè)備,所謂終端設(shè)備通常指的是能夠接受命令輸入,并可能同時(shí)能夠輸出的設(shè)備,但是這兩者是有本質(zhì)的不同的:

  • tty設(shè)備

    ttyTeletype的簡稱,表示原生的終端設(shè)備,通常指的是物理終端設(shè)備如串口,鍵鼠接口等,以及系統(tǒng)內(nèi)核模擬的終端設(shè)備。

  • pts設(shè)備

    ptsPseudo Terminal Slave的簡稱,表示偽終端設(shè)備,通常由應(yīng)用進(jìn)程模擬出來,如ssh開啟的終端等。

tty設(shè)備通常被映射為/dev/tty*,其中*代表數(shù)字,如/dev/tty1等。而pts設(shè)備被映射為/dev/pts/*,其中*表示數(shù)字,如/dev/pts/1。

/dev/null

該文件在Linux中有著特殊的意義,是一個(gè)只有輸入的文件,且文件有無限的大小,你不能從該文件讀出任何東西,任何寫入的內(nèi)容邏輯上相當(dāng)于消失了。從實(shí)現(xiàn)的角度,實(shí)際上任何寫入的內(nèi)容都被系統(tǒng)丟棄了。

/proc目錄

該目錄用來記錄內(nèi)核以及內(nèi)核進(jìn)程的實(shí)時(shí)信息,可以通過它輕而易舉的實(shí)現(xiàn)對內(nèi)核狀態(tài)的獲取甚至改變。

目錄 說明
/proc/<id> 幾乎每個(gè)進(jìn)程都會(huì)在該目錄下有映射的文件/proc/*,其中<id>代表進(jìn)程的ID。該目錄記錄的該進(jìn)程的幾乎所有的狀態(tài)信息。
/proc/cpuinfo 記錄了系統(tǒng)的CPU信息,通常通過該文件可以知道系統(tǒng)有多少個(gè)CPU(核數(shù))。
/proc/meminfo 記錄了系統(tǒng)的內(nèi)存信息,可以通過它知道系統(tǒng)有多少內(nèi)存
/proc/sys /proc目錄下的絕大部分文件都是只讀的文件,但是在該目錄下有些文件是可寫的,可以通過它們改變內(nèi)核狀態(tài)
/proc/interrupts 記錄了當(dāng)前系統(tǒng)的中斷信息
/proc/kcore 這個(gè)文件代表了系統(tǒng)的物理內(nèi)存,其大小就是物理內(nèi)存的大小,因此千萬不要用cat來試圖顯示該文件內(nèi)容

/usr目錄

/usr目錄估計(jì)是被誤解最多的目錄,一般大家都以為它是user的簡寫,感覺應(yīng)該存放的是用戶相關(guān)的東西,但是實(shí)際上完全不是這樣。它其實(shí)是Unix System Resources的簡寫,表示Unix系統(tǒng)資源。通常情況下,該目錄以只讀的權(quán)限被掛載。

目錄 說明
/usr/bin 很多命令都存放在這個(gè)目錄下面,事實(shí)上,在Centos跟Solaris系統(tǒng)中,/bin目錄實(shí)際上只是一個(gè)軟連接,連接到此目錄
/usr/include 存放大量的頭文件,可能會(huì)被C代碼引用
/usr/lib 存放庫文件,同樣,在Centos跟Solaris系統(tǒng)中,/lib其實(shí)就是軟連接到此目錄
/usr/lib64 存放64位的庫文件,在Centos中,/lib64也是軟連接到此目錄
/usr/sbin 很多daemon程序都是放在此目錄下,在Centos中,/sbin也是軟連接到此目錄
/usr/local 此目錄通常用來安裝一些本地的應(yīng)用
/usr/share 此目錄通常用來存放各種體系無關(guān)的數(shù)據(jù)。/usr/share/man就是用來存放man命令用到的幫助文檔
/usr/src 此目錄通常存放內(nèi)核的代碼文件

/var目錄

/var目錄用來存放可變的數(shù)據(jù),如日志,數(shù)據(jù)庫文件等。

目錄 說明
/var/log 此目錄用來存放各種日志文件,包括系統(tǒng)跟應(yīng)用的日志
/var/log/messages 在RedHat系列系統(tǒng)中,此文件用來記錄系統(tǒng)剛剛發(fā)生的事情。在Debian和Ubuntu系統(tǒng)中,對應(yīng)的文件是/var/log/syslog
/var/cache 此目錄存放很多應(yīng)用的緩存數(shù)據(jù),如yum命令可能會(huì)緩存部分?jǐn)?shù)據(jù)在此目錄
/var/spool 一般情況下,該目錄會(huì)存放郵件cron任務(wù)等數(shù)據(jù)
/var/lib 通常此目錄下會(huì)存放應(yīng)用的狀態(tài)信息,如/var/lib/mysql存放mysql數(shù)據(jù)庫,/var/lib/docker存放docker的數(shù)據(jù)

本博文還可以在博主個(gè)人主頁中找到。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容