Linux操作系統(tǒng)的發(fā)行版眾多,為了統(tǒng)一不同發(fā)行版系統(tǒng)中的目錄結(jié)構(gòu),F(xiàn)HS(Filesystem Hierarchy Standard)標準應(yīng)運而生。
FHS的重點在于規(guī)范每個特定的目錄下應(yīng)該放置什么樣的數(shù)據(jù),其中最重要的就是下面三個目錄:
- / (root):與系統(tǒng)啟動有關(guān);
- /usr (unix software resource):與軟件安裝和執(zhí)行有關(guān);
- /var (variable):與系統(tǒng)運行過程有關(guān)。
根目錄(/)
根目錄是整個系統(tǒng)最重要的目錄,因為不但所有的目錄都是由根目錄衍生出來,同時根目錄也與系統(tǒng)啟動、還原等操作有關(guān)。所以 不要將根目錄放在非常大的分區(qū)內(nèi),也不要將其它應(yīng)用程序與根目錄放在同一個分區(qū)內(nèi) 。這樣不僅可以獲取更好的系統(tǒng)性能,且根目錄所在的分區(qū)也更加不容易發(fā)生問題。
/usr目錄
usr可不是user的縮寫,usr是UNIX Software Resource
的縮寫,也就是UNIX操作系統(tǒng)軟件資源放置的目錄。
所有系統(tǒng)默認的軟件都會放置到/usr下面,系統(tǒng)安裝完畢時,這個目錄會占用最多的硬盤空間。
/usr/bin
一般用戶能夠使用的命令都放在該目錄下,這些命令可以被root賬號與一般賬號共同使用。主要包括:cat、chmod、chown、date、mv、cp、mkdir、bash等常用命令。
/bin
目錄是指向它的一個鏈接文件,也就是說,/usr/bin
與/bin
是一摸一樣的。
/usr/sbin
Linux中有很多命令是用來設(shè)置系統(tǒng)環(huán)境的,這些命令只有root用戶才能執(zhí)行設(shè)置,其它用戶最多只能用來查詢,這類命令會放置在該目錄下。該目錄包括的命令有fdisk、fsck、mkfs等。
/sbin
是鏈接到此目錄的一個鏈接文件。
/usr/lib
系統(tǒng)中的函數(shù)庫非常多,而/lib
目錄下放置的是在系統(tǒng)啟動時會用到的函數(shù)庫,以及在/bin
或/sbin
下面的命令會調(diào)用的函數(shù)庫而已。
/lib
是鏈接到此目錄的一個鏈接文件。
/usr/local
用戶在本機安裝自己下載的軟件會安裝到此目錄。/usr/local下也是有bin、etc、lib等子目錄。
/usr/share
主要放置只讀數(shù)據(jù)文件,像在線幫助文檔/usr/share/man
,軟件說明文檔/usr/share/doc
等。
/var目錄
/var
目錄主要存放的是一些經(jīng)常變動的文件,如緩存文件、日志文件、程序運行時產(chǎn)生的文件等。例如MySQL的數(shù)據(jù)文件,或軟件程序的日志文件(log file)等。
/var/cache
應(yīng)用程序運行過程中產(chǎn)生的一些緩存。
/var/lib
軟件執(zhí)行過程中使用到的一些數(shù)據(jù)文件會放置在此目錄。在此目錄下,每個軟件都擁有屬于自己的子目錄。例如,MySQL的數(shù)據(jù)庫文件放置到/var/lib/mysql
中,而rpm的數(shù)據(jù)庫文件則放置到/usr/lib/rpm
中。
/var/log
日志文件放置的目錄。通常,各個軟件也會在這個目錄下為自己創(chuàng)建對應(yīng)的子目錄用于存放日志。
/var/mail
放置個人電子郵箱的目錄。
/var/run
該目錄是用內(nèi)存模擬的目錄,系統(tǒng)啟動后所產(chǎn)生的各項信息會放置到該目錄下。
比較常見的用途是daemon進程會將自己的pid保存到這個目錄下。
/var/run
是鏈接到/run
目錄的一個鏈接文件。也就是說,/var/run
與/run
是一摸一樣的。
其它目錄
/etc
系統(tǒng)主要的配置文件幾乎都放置在這個目錄內(nèi),例如人員的賬號密碼文件,各種服務(wù)的配置文件等。
不要放置可執(zhí)行文件在這個目錄中。
/dev
在Linux系統(tǒng)中,任何設(shè)備都以文件的形式存在于這個目錄當中,通過讀寫這個目錄下面的某個文件,就等于讀寫了某個設(shè)備。
常用的文件有/dev/null
、/dev/zero
、/dev/tty
等。
/boot
系統(tǒng)啟動會使用到的文件會放在這個目錄中,包括Linux內(nèi)核文件以及boot loader相關(guān)配置文件。
Linux內(nèi)核的文件名為vmlinuz。如果使用的是grub這個boot loader,則還會存在/boot/grub
這個目錄。
/opt
該目錄用來安裝附加軟件包,是用戶級的程序目錄,可以理解為D:/Software
。
opt有可選的意思,這里可以用于放置第三方輔助軟件,當你不需要時,直接rm掉即可。
/tmp
暫時存放文件的地方,任何人都能夠讀寫該目錄下的文件,重要的文件不要放在此目錄。
/lost+found
這個目錄一般情況下是空的,當文件系統(tǒng)發(fā)生錯誤時,會將一些遺失的片段放置在這個目錄下。
/proc
這個目錄本身是一個虛擬文件系統(tǒng),它放置的數(shù)據(jù)都是在內(nèi)存當中,例如系統(tǒng)內(nèi)核、進程信息、外接設(shè)備的狀態(tài)及網(wǎng)絡(luò)狀態(tài)等。
重要的文件包括:/proc/cpuinfo
、 /proc/net/*
和 /proc/ioports
等。
/sys
這個目錄根/proc
非常類似,也是一個虛擬文件系統(tǒng),主要也是記錄內(nèi)核與系統(tǒng)硬件信息相關(guān)的內(nèi)容。
-
Linux
+關(guān)注
關(guān)注
87文章
11457瀏覽量
212770 -
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
7081瀏覽量
124940 -
FHS
+關(guān)注
關(guān)注
0文章
3瀏覽量
6702
發(fā)布評論請先 登錄
Linux目錄結(jié)構(gòu)及文件操作
Linux的目錄文件結(jié)構(gòu)
linux目錄結(jié)構(gòu)
linux目錄結(jié)構(gòu)
詳解Linux目錄結(jié)構(gòu)
Linux內(nèi)核源碼目錄結(jié)構(gòu)
Linux系統(tǒng)移植篇7:STM32MP1微處理器之Linux內(nèi)核目錄結(jié)構(gòu)
Linux目錄結(jié)構(gòu)
Linux基礎(chǔ)之目錄結(jié)構(gòu)相關(guān)資料推薦
以linux 5.4.31為例來介紹一下linux內(nèi)核目錄結(jié)構(gòu)
Linux快速入門之安裝Linux操作系統(tǒng)及小結(jié)
Windows和Linux的區(qū)別以及Linux系統(tǒng)的目錄結(jié)構(gòu)

嵌入式Linux開發(fā)之文件系統(tǒng)目錄結(jié)構(gòu)介紹

嵌入式Linux系統(tǒng)編程學(xué)習(xí)之一目錄結(jié)構(gòu)

STM32MP157 Linux系統(tǒng)移植開發(fā)篇7:Linux內(nèi)核目錄結(jié)構(gòu)詳解

評論