?文件系統層級結構標準

多數Linux發行版遵從FHS標準并且聲明其自身政策以維護FHS的要求。 [1] [2] [3] [4] 然而,包括由自由標準小組成員在內開發的絕大多數發行版(截至2009年),并不完全執行建議的標準。
當FHS創建之時,其他的UNIX和類Unix操作系統已經有了自己的標準,尤其是hier(7)文件系統布局描述。 自從第七版Unix(于1979年)發布以來已經存在,或是SunOS filesystem(7), [5] 和之后的Solaris filesystem(5)。 例如,Mac OS X使用如 /Library、 /Applications和/Users 等長名與傳統UNIX目錄層次保持一致。
現在的Linux發行版包含一個/sys目錄作為虛擬文件系統(sysfs,類似于 /proc,一個procfs),它存儲且允許修改連接到系統的設備,然而許多傳統UNIX和類Unix操作系統使用/sys作為內核代碼樹的符號鏈接。
一些Linux系統如GoboLinux和Syllable Server使用了和FHS完全不同的文件系統層次組織方法。

文件系統層級結構標準

  文件系統層次結構標準英語:Filesystem Hierarchy Standard,FHS定義了Linux操作系統中的主要目錄及目錄內容。在大多數情況下,它是一個傳統BSD文件系統層次結構的形式化與擴充。

FHSLinux基金會維護,這是一個由主要軟件或硬件供應商組成的非營利組織,例如HP、Red Hat、IBM、和Dell

當前的版本是2.3,在2004129日公布。

歷史:

開發一套文件系統層次結構標準的進程始于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/lib6464位系統特有的存放共享庫的路徑。

/usr/include:c程序頭文件。

      /usr/share命令手冊頁和自帶文檔等架構特有的文件的存儲位置。

/usr/local: Local Hierarchy 系統管理員安裝本地應用程序,也是常用與安裝第三方程序。

/usr/xllR6X 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

(1)
征(_少征(_少
上一篇 2016-10-17 08:35
下一篇 2016-10-17 08:35

相關推薦

  • httpd 安裝配置

    web 服務介紹 web服務時一種應用程序的服務,它所提供的最主要的信息是一種超文本標記語言(HTML)、多媒體資源(如:視頻、圖片、音樂等)。HTML是一種純文字的文本信息,通過所謂的標簽來規范所要顯示的內容格式,在客戶端通過瀏覽器的形式對HTML及多媒體資源進行解析,然后呈現在終端上。主要由http和https協議實現 http協議 HTTP是一個屬于應…

    Linux干貨 2016-11-01
  • Bash Shell腳本基礎-變量類型-位置變量

    Bash Shell腳本基礎–變量類型–位置變量   §·bash shell腳本編程概述: 1 §·bash shell腳本中的變量 2     *什么是變量 2     *變量的類型 2     *ba…

    Linux干貨 2016-08-12
  • bash功能特性一 變量

    一、什么是shell     shell是為了使用戶能夠操作應用程序的接口程序。如經常使用的圖形界面及命令行界面都是shell。下面來介紹一下bash這個shell的功能。 二、變量的概念     被命名的內存空間即為變量,Linux中內置了許多變量,我們可以通過修改這些變量的值…

    Linux干貨 2015-04-19
  • 磁盤管理

    磁盤管理 本文將按順序以實例演示磁盤管理的所有操作,讓我們開始吧! 一,磁盤的添加 ① 先來查看linux系統總共有幾個磁盤,由圖可知是兩個,分別是sda,sdb。我們再加一個,按照磁盤命名順序,應是sdc,他們都在/dev目錄下。 補充: 1,磁盤命名規則: 不同磁盤,按照a-z依次標識,如sda,sdb,sdc 同一磁盤的不同分區,按照1,2,&#823…

    2017-08-19
  • 第二天作業

    一、Linux 文件管理類命令   cd、pwd、mkdir、rmdir、ls、cp、rm、mv、cat、tac、more、less、head、tail、touch     1、目錄類相關命令     cd:change directory 切換目錄     pwd:print …

    Linux干貨 2016-08-22
欧美性久久久久