提到 GNU/Linux 系統的目錄結構,不得不說一下FHS(Filesystem Hierarchy Standard,文件系統層次結構標準),正是這一標準的存在,詳細的定義了類 Unix 操作系統中各種應用軟件,管理工具,開發工具,腳本以及幫助文檔的位置,讓遵循該標準的各種 GNU/Linux 發行版目錄結構幾乎都是一致的。 |
在 FHS 中,根據文件的共享性和文件是否要求被修改的特點,其將文件劃分爲可共享文件/不可共享文件以及可變數據文件/靜態數據文件兩大類。FHS 將不同屬性的文件劃歸到不同的目錄,以便系統管理。
如下表所示:
需要注意,並不是所有在文件系統中的文件都是可共享的,每個擁有本地存儲設備的系統都會有自己不可共享的文件。通過目錄文件性質的劃分,可以很方便的將其他主機上的共享文件目錄掛載到本地系統。
因爲 FHS 目錄規定,你會發現 GNU/Linux 不同的發行版都存在以下目錄結構:
更多關於FHS目錄的規定,可以參看"https://www.pathname.com/fhs/pub/fhs-2.3.pdf"
GNU/Linux 的系統結構包括以下幾部分,如下圖所示:
應用程序:例如文本編輯器,Web瀏覽器,X Winodow,網絡應用程序,系統工具等一系列的應用。這些應用通過系統調用接口與 Linux 內核發生交互。
Shell&函數庫:Shell 是 GNU/Linux 系統的命令解釋器,用於處理輸入,實現和系統的交互。庫函數則爲編程提供接口,實現對系統調用的再次封裝,爲上層程序調用提供更簡便的接口。
Linux內核:操作系統的核心,具有很多最基本功能,它負責管理系統的進程、內存、文件和網絡系統等,決定着系統的性能和穩定性。
設備驅動:設備驅動負責驅動系統的相關硬件,使其正常的發揮作用。
對於 GNU/Linux 這樣一個複雜的操作系統,逐步的明白其目錄結構以及系統結構,對於用戶瞭解 GNU/Linux 系統會有很大的幫助,希望本文能讓大家對 GNU/Linux 系統的目錄結構和系統結構有個初步的認識。
本文地址:https://www.linuxprobe.com/linux-directory-structure.html