文件系統層級結構標準
文件系統層次結構標準(英語:Filesystem Hierarchy Standard,FHS)定義了Linux操作系統中的主要目錄及目錄內容。在大多數情況下,它是一個傳統BSD文件系統層次結構的形式化與擴充。
FHS由Linux基金會維護,這是一個由主要軟件或硬件供應商組成的非營利組織,例如HP、Red Hat、IBM、和Dell。
當前的版本是2.3,在2004年1月29日公布。
歷史:
開發一套文件系統層次結構標準的進程始于1993年8月,標準努力重整Linux的文件和目錄結構。FSSTND (英文Filesystem Standard),一個針對Linux操作系統的文件系統層次結構標準在1994年2月14日發布。 后續的修正版本分別在1994年10月9日和1995年3月28日發布。
在1996年初, 開發一個更加全面的、不僅解決Linux,而且解決其他類Unix系統目錄層次結構問題的FSSTND的計劃在BSD開發社區成員的協助下正式被采納。因此,計劃重點解決在類Unix系統上普遍存在的問題。 為了適應標準范圍的擴充,標準的名稱修改為文件系統層次結構標準。
目錄結構:
在FHS中,所有的文件和目錄都出現在根目錄"/"下,即使他們存儲在不同的物理設備中。但是請注意,這些目錄中的一些可能或可能不會在Unix系統上出現,這取決于系統是否含有某些子系統,例如 X Window系統 的安裝與否。
這些目錄中的絕大多數都在所有的UNIX操作系統中存在,并且一般都以大致類似的方法使用;然而,這里的描述是針對于FHS的,并未考慮除了Linux平臺以外的權威性。
/:
初級層次的根和根目錄整個文件系統層次結構
/bin:
所有用戶可用的基本命令程序文件。(可執行文件)例如:cat,ls,cp。
/sbin:
供系統管理使用的工具程序文件。(可執行文件)例如:init,ip,mount。
/boot:
引導加載器必須用到的各靜態文件,例如:kernel,initramfs(initrd),grub等。
/dev:
存儲特殊文件或設備文件。例如:/dev/null。
設備有兩種類型:字符設備(線性設備)
塊設備(隨即設備)
/etc:
系統程序的配置文件,只能為靜態的文件。
/etc/opt:/opt/的配置文件。
/etc/X11:X windos(版本11)的配置文件。
/etc/sgml:SGML的配置文件。
/etc/xml:XML的配置文件。
/home:
普通用戶的家目錄的集中位置;(一般每個普通用戶的家目錄默認為此目錄與用戶名同名的目錄,/home/username),一般單獨分區。
/lib:
為系統啟動或根文件系統上的應用程序(/bin,/snin等)提供共享庫,以及為內核提供內核模塊。
libc.so.*: 動態鏈接的C庫。
ld*: 運行時鏈接器/加載器。
modules:用于存儲內核模塊的目錄。
/lib64:
64位系統特有的存放共享庫的路徑。
/media:
便攜設式備掛載點,cdrom,floppy等。
/mnt:
其他文件系統的臨時掛載點。
/opt:
附加應用程序的安裝位置。
/root:
管理員的家目錄。
/srv:
當前主機為服務提供的數據。
/tmp:
Temporary file ,為那些會產生臨時文件的程序提供的用于存儲臨時文件的目錄??晒┧杏脩魣绦袑懭氩僮?;有特殊權限。在系統重啟時目錄文件不會被保留。
/usr:
Usr Hierarchy,全局共享的只讀數據路徑,包含絕大多數用戶工具和應用程序。
/usr/bin:非必要可執行文件(在單用戶中不需要);面向所有用戶。
/usr/sbin:非必要二進制可執行文件。
/usr/lib:/usr/bin/和/usr/sbin/中二進制文件的共享庫。
/usr/lib64:64位系統特有的存放共享庫的路徑。
/usr/include:c程序頭文件。
/usr/share;命令手冊頁和自帶文檔等架構特有的文件的存儲位置。
/usr/local: Local Hierarchy 系統管理員安裝本地應用程序,也是常用與安裝第三方程序。
/usr/xllR6:X window程序的安裝位置。
/usr/src:程序源碼文件的存儲位置。
/var:
存儲常發生變化的數據的目錄。變量文件如:日志,脫機文件和臨時電子郵件
/var/cache:應用程序緩存數據
/var/lib:狀態信息。由程序在運行時維護的持久性文件
/var/lock:鎖文件。一類跟蹤當前使用資源的文件
/var/log:日志文件
/var/spool:等待處理的任務的文件,例如打印隊列和未讀郵件
/var/tmp:在系統重啟過程中可以保留的臨時文件。
/var/run:自最后一次啟動以來運行中的系統信息,現已被/run替代
/proc:
虛擬文件系統,用于內核及進程存儲其相關信息;它們多為內核參數。
/sys:
Sysfs虛擬文件系統提供了一種比proc更為理想的訪問內核數據的途徑;其主要作用在于為管理linux設備提供了一種統一模型的借口。
/run:
運行時間變量數據。
自最后一次啟動以來運行中的系統信息。替代/var/run.
小結:
盡管LINUX有諸多的發行版,但是所有的版本都遵從同樣的文件目錄層次結構,即FHS(Filesystem Hierarchy Standard)。有了這個統一的標準,我們在使用不同版本的LINUX時就不會由于版本的不同而找不到相關系統文件的位置,了解FHS有助于我們更好的掌握LINUX的基礎構架和文件系統管理。
原創文章,作者:征(_少,如若轉載,請注明出處:http://www.www58058.com/52136