tft每日頭條

 > 科技

 > linux常用的文件系統是什麼

linux常用的文件系統是什麼

科技 更新时间:2024-07-23 00:23:21

linux常用的文件系統是什麼?Linux中的文件是什麼?它的文件系統又是什麼?那些配置文件又在哪裡?我下載好的程序保存在哪裡了?在 Linux 中文件系統是标準結構的嗎?好了,上圖簡明地闡釋了Linux的文件系統的層次關系當你苦于尋找配置文件或者二進制文件的時候,這便顯得十分有用了我在下方添加了一些解釋以及例子,不過“篇幅較長,可以有空再看”,下面我們就來聊聊關于linux常用的文件系統是什麼?接下來我們就一起去了解一下吧!

linux常用的文件系統是什麼(文件系統結構介紹)1

linux常用的文件系統是什麼

Linux中的文件是什麼?它的文件系統又是什麼?那些配置文件又在哪裡?我下載好的程序保存在哪裡了?在 Linux 中文件系統是标準結構的嗎?好了,上圖簡明地闡釋了Linux的文件系統的層次關系。當你苦于尋找配置文件或者二進制文件的時候,這便顯得十分有用了。我在下方添加了一些解釋以及例子,不過“篇幅較長,可以有空再看”。

另外一種情況便是當你在系統中獲取配置以及二進制文件時,出現了不一緻性問題,如果你是在一個大型組織中,或者隻是一個終端用戶,這也有可能會破壞你的系統(比如,二進制文件運行在舊的庫文件上了)。若然你在你的Linux系統上做安全審計的話,你将會發現它很容易遭到各種攻擊。所以,保持一個清潔的操作系統(無論是Windows還是Linux)都顯得十分重要。

Linux的文件是什麼?

對于UNIX系統來說(同樣适用于Linux),以下便是對文件簡單的描述:

在UNIX系統中,一切皆為文件;若非文件,則為進程

這種定義是比較正确的,因為有些特殊的文件不僅僅是普通文件(比如命名管道和套接字),不過為了讓事情變的簡單,“一切皆為文件”也是一個可以讓人接受的說法。Linux系統也像UNIX系統一樣,将文件和目錄視如同物,因為目錄隻是一個包含了其他文件名的文件而已。程序、服務、文本、圖片等等,都是文件。對于系統來說,輸入和輸出設備,基本上所有的設備,都被當做是文件。

題圖版本曆史:

Version 2.0 – 17-06-2015

– Improved: 添加标題以及版本曆史

– Improved: 添加/srv,/meida和/proc

– Improved: 更新了反映當前的Linux文件系統的描述

– Fixed: 多處的打印錯誤

– Fixed: 外觀和顔色

Version 1.0 – 14-02-2015

– Created: 基本的圖表

– Note: 摒棄更低的版本

下載鍊接

以下是大圖的下載地址。如果你需要其他格式,請跟原作者聯系,他會嘗試制作并且上傳到某個地方以供下載

注意: PDF格式文件是打印的最好選擇,因為它畫質很高。

Linux 文件系統描述

為了有序地管理那些文件,人們習慣把這些文件當做是硬盤上的有序的樹狀結構,正如我們熟悉的'MS-DOS'(磁盤操作系統)就是一個例子。大的分枝包括更多的分枝,分枝的末梢是樹的葉子或者普通的文件。現在我們将會以這樹形圖為例,但晚點我們會發現為什麼這不是一個完全準确的一幅圖。

目錄描述
/主層次的根,也是整個文件系統層次結構的根目錄
/bin存放在單用戶模式可用的必要命令二進制文件,所有用戶都可用,如 cat、ls、cp等等
/boot存放引導加載程序文件,例如kernels、initrd等
/dev存放必要的設備文件,例如/dev/null
/etc存放主機特定的系統級配置文件。其實這裡有個關于它名字本身意義上的的争議。在貝爾實驗室的UNIX實施文檔的早期版本中,/etc表示是“其他(etcetera)目錄”,因為從曆史上看,這個目錄是存放各種不屬于其他目錄的文件(然而,文件系統目錄标準 FSH 限定 /etc 用于存放靜态配置文件,這裡不該存有二進制文件)。早期文檔出版後,這個目錄名又重新定義成不同的形式。近期的解釋中包含着諸如“可編輯文本配置”或者“額外的工具箱”這樣的重定義
/etc/opt存儲着新增包的配置文件 /opt/.
/etc/sgml存放配置文件,比如 catalogs,用于那些處理SGML(譯者注:标準通用标記語言)的軟件的配置文件
/etc/X11X Window 系統11版本的的配置文件
/etc/xml配置文件,比如catalogs,用于那些處理XML(譯者注:可擴展标記語言)的軟件的配置文件
/home用戶的主目錄,包括保存的文件,個人配置,等等
/lib/bin//sbin/中的二進制文件的必需的庫文件
/lib<架構位數>備用格式的必要的庫文件。 這樣的目錄是可選的,但如果他們存在的話肯定是有需要用到它們的程序
/media可移動的多媒體(如CD-ROMs)的挂載點。(出現于 FHS-2.3)
/mnt臨時挂載的文件系統
/opt可選的應用程序軟件包
/proc以文件形式提供進程以及内核信息的虛拟文件系統,在Linux中,對應進程文件系統(procfs )的挂載點
/root根用戶的主目錄
/sbin必要的系統級二進制文件,比如, init, ip, mount
/srv系統提供的站點特定數據
/tmp臨時文件 (另見 /var/tmp). 通常在系統重啟後删除
/usr二級層級存儲用戶的隻讀數據; 包含(多)用戶主要的公共文件以及應用程序
/usr/bin非必要的命令二進制文件 (在單用戶模式中不需要用到的);用于所有用戶
/usr/include标準的包含文件
/usr/lib庫文件,用于/usr/bin//usr/sbin/中的二進制文件
/usr/lib<架構位數>備用格式庫(可選的)
/usr/local三級層次用于本地數據,具體到該主機上的。通常會有下一個子目錄,比如,bin/,lib/,share/.
/usr/local/sbin非必要系統的二進制文件,比如用于不同網絡服務的守護進程
/usr/share架構無關的 (共享) 數據.
/usr/src源代碼,比如内核源文件以及與它相關的頭文件
/usr/X11R6X Window系統,版本号:11,發行版本:6
/var各式各樣的(Variable)文件,一些随着系統常規操作而持續改變的文件就放在這裡,比如日志文件,脫機文件,還有臨時的電子郵件文件
/var/cache應用程序緩存數據. 這些數據是由耗時的I/O(輸入/輸出)的或者是運算本地生成的結果。這些應用程序是可以重新生成或者恢複數據的。當沒有數據丢失的時候,可以删除緩存文件
/var/lib狀态信息。這些信息随着程序的運行而不停地改變,比如,數據庫,軟件包系統的元數據等等
/var/lock鎖文件。這些文件用于跟蹤正在使用的資源
/var/log日志文件。包含各種日志。
/var/mail内含用戶郵箱的相關文件
/var/opt來自附加包的各種數據都會存儲在 /var/opt/.
/var/run存放當前系統上次啟動以來的相關信息,例如當前登入的用戶以及當前運行的daemons(守護進程).
/var/spool該spool主要用于存放将要被處理的任務,比如打印隊列以及郵件外發隊列
/var/mail過時的位置,用于放置用戶郵箱文件
/var/tmp存放重啟後保留的臨時文件

Linux的文件類型

大多數文件僅僅是普通文件,他們被稱為regular文件;他們包含普通數據,比如,文本、可執行文件、或者程序、程序的輸入或輸出等等

雖然你可以認為“在Linux中,一切你看到的皆為文件”這個觀點相當保險,但這裡仍有着一些例外。

目錄:由其他文件組成的文件

特殊文件:用于輸入和輸出的途徑。大多數特殊文件都儲存在/dev中,我們将會在後面讨論這個問題。

鍊接文件:讓文件或者目錄出現在系統文件樹結構上多個地方的機制。我們将詳細地讨論這個鍊接文件。

(域)套接字:特殊的文件類型,和TCP/IP協議中的套接字有點像,提供進程間網絡通訊,并受文件系統的訪問控制機制保護。

命名管道: 或多或少有點像sockets(套接字),提供一個進程間的通信機制,而不用網絡套接字協議。

現實中的文件系統

對于大多數用戶和常規系統管理任務而言,“文件和目錄是一個有序的類樹結構”是可以接受的。然而,對于電腦而言,它是不會理解什麼是樹,或者什麼是樹結構。

每個分區都有它自己的文件系統。想象一下,如果把那些文件系統想成一個整體,我們可以構思一個關于整個系統的樹結構,不過這并沒有這麼簡單。在文件系統中,一個文件代表着一個inode(索引節點),這是一種包含着構建文件的實際數據信息的序列号:這些數據表示文件是屬于誰的,還有它在硬盤中的位置。

每個分區都有一套屬于他們自己的inode,在一個系統的不同分區中,可以存在有相同inode的文件。

每個inode都表示着一種在硬盤上的數據結構,保存着文件的屬性,包括文件數據的物理地址。當硬盤被格式化并用來存儲數據時(通常發生在初始系統安裝過程,或者是在一個已經存在的系統中添加額外的硬盤),每個分區都會創建固定數量的inode。這個值表示這個分區能夠同時存儲各類文件的最大數量。我們通常用一個inode去映射2-8k的數據塊。當一個新的文件生成後,它就會獲得一個空閑的inode。在這個inode裡面存儲着以下信息:

文件屬主和組屬主

文件類型(常規文件,目錄文件......)

文件權限

創建、最近一次讀文件和修改文件的時間

inode裡該信息被修改的時間

文件的鍊接數(詳見下一章)

文件大小

文件數據的實際地址

唯一不在inode的信息是文件名和目錄。它們存儲在特殊的目錄文件。通過比較文件名和inode的數目,系統能夠構造出一個便于用戶理解的樹結構。用戶可以通過ls -i查看inode的數目。在硬盤上,inodes有他們獨立的空間。

譯者:tnuoccalanosrep校對:wxy

本文由 LCTT原創翻譯,Linux中國榮譽推出

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved