博客 > Linux 知識:Linux文件系統(tǒng)
瀏覽量:1845次評論:0次
作者:銳成網(wǎng)絡(luò)整理時間:2024-08-08 17:14:10
在 Linux 系統(tǒng)中一切皆文件,所有文件都被按照 FHS 的標準劃分到不同的目錄中,這和 Windows 操作系統(tǒng)有很大的不同之處。在 Windows 操作系統(tǒng)中,訪問系統(tǒng)文件是要通過例如C盤,D盤之類的盤符來訪問的,因為Windows 系統(tǒng)是按照設(shè)備標識符來劃分目錄的。
Linux 文件系統(tǒng)中的文件是數(shù)據(jù)的集合,文件系統(tǒng)不僅包含著文件中的數(shù)據(jù)而且還有文件系統(tǒng)的結(jié)構(gòu),所有 Linux 用戶和程序看到的文件、目錄、軟連接及文件保護信息等都存儲在其中。
最早的 Linux 系統(tǒng)文件系統(tǒng)是和內(nèi)核整合在一起的,使用的是 Minix 文件系統(tǒng)。因其局限性,后來 Linux 開始采用專為其設(shè)計的 EXT,目前最新的 EXT 文件系統(tǒng)是 EXT4。
Linux 支持的常見文件系統(tǒng)
EXT 并不是 Linux 系統(tǒng)唯一支持的文件系統(tǒng),目前常見 Linux 支持的文件系統(tǒng)包括:
文件系統(tǒng) |
描 述 |
Ext |
Linux 中最早的文件系統(tǒng),由于在性能和兼容性上具有很多缺陷,現(xiàn)在已經(jīng)很少使用 |
Ext2 |
是 Ext 文件系統(tǒng)的升級版本,Red Hat Linux 7.2 版本以前的系統(tǒng)默認都是 Ext2 文件系統(tǒng)。于 1993 年發(fā)布,支持最大 16TB 的分區(qū)和最大 2TB 的文件(1TB=1024GB=1024x1024KB) |
Ext3 |
是 Ext2 文件系統(tǒng)的升級版本,最大的區(qū)別就是帶日志功能,以便在系統(tǒng)突然停止時提高文件系統(tǒng)的可靠性。支持最大 16TB 的分區(qū)和最大 2TB 的文件 |
Ext4 |
是 Ext3 文件系統(tǒng)的升級版。Ext4 在性能、伸縮性和可靠性方面進行了大量改進。Ext4 的變化可以說是翻天覆地的,比如向下兼容 Ext3、最大 1EB 文件系統(tǒng)和 16TB 文件、無限數(shù)量子目錄、Extents 連續(xù)數(shù)據(jù)塊 概念、多塊分配、延遲分配、持久預(yù)分配、快速 FSCK、日志校驗、無日志模式、在線碎片整理、inode 增強、默認啟用 barrier 等。它是 CentOS 6.3 的默認文件系統(tǒng) |
xfs |
被業(yè)界稱為最先進、最具有可升級性的文件系統(tǒng)技術(shù),由 SGI 公司設(shè)計,目前最新的 CentOS 7 版本默認使用的就是此文件系統(tǒng)。 |
swap |
swap 是 Linux 中用于交換分區(qū)的文件系統(tǒng)(類似于 Windows 中的虛擬內(nèi)存),當內(nèi)存不夠用時,使用交換分區(qū)暫時替代內(nèi)存。一般大小為內(nèi)存的 2 倍,但是不要超過 2GB。它是 Linux 的必需分區(qū) |
NFS |
NFS 是網(wǎng)絡(luò)文件系統(tǒng)(Network File System)的縮寫,是用來實現(xiàn)不同主機之間文件共享的一種網(wǎng)絡(luò)服務(wù),本地主機可以通過掛載的方式使用遠程共享的資源 |
iso9660 |
光盤的標準文件系統(tǒng)。Linux 要想使用光盤,必須支持 iso9660 文件系統(tǒng) |
fat |
就是 Windows 下的 fatl6 文件系統(tǒng),在 Linux 中識別為 fat |
vfat |
就是 Windows 下的 fat32 文件系統(tǒng),在 Linux 中識別為 vfat。支持最大 32GB 的分區(qū)和最大 4GB 的文件 |
NTFS |
就是 Windows 下的 NTFS 文件系統(tǒng),不過 Linux 默認是不能識別 NTFS 文件系統(tǒng)的,如果需要識別,則需要重新編譯內(nèi)核才能支持。它比 fat32 文件系統(tǒng)更加安全,速度更快,支持最大 2TB 的分區(qū)和最大 64GB 的文件 |
ufs |
Sun 公司的操作系統(tǒng) Solaris 和 SunOS 所采用的文件系統(tǒng) |
proc |
Linux 中基于內(nèi)存的虛擬文件系統(tǒng),用來管理內(nèi)存存儲目錄 /proc |
sysfs |
和 proc —樣,也是基于內(nèi)存的虛擬文件系統(tǒng),用來管理內(nèi)存存儲目錄 /sysfs |
tmpfs |
也是一種基于內(nèi)存的虛擬文件系統(tǒng),不過也可以使用 swap 交換分區(qū) |
虛擬文件系統(tǒng)
上一節(jié)中,我們看到Linux支持很多中類型的文件系統(tǒng),那么 Linux 系統(tǒng)是怎么樣支持多文件系統(tǒng)的?這就不得不說一下Linux的虛擬文件系統(tǒng),簡稱 VFS (Virtual File System)了。
Linux為了支持多種不同的文件系統(tǒng),采用了在Unix操作系統(tǒng)中廣泛采用的設(shè)計思想,通過 VFS 來屏蔽底層文件系統(tǒng)的實現(xiàn)細節(jié)和差異,即為各類文件系統(tǒng)提供了一個統(tǒng)一的操作界面和應(yīng)用編程接口,形成一個抽象層。
對上層用戶程序而言,VFS 提供了文件系統(tǒng)的系統(tǒng)調(diào)用接口。而對具體的文件分區(qū)格式而言,VFS 通過一系列統(tǒng)一的外部調(diào)用接口來屏蔽實現(xiàn)細節(jié),使得文件系統(tǒng)的調(diào)用不用關(guān)心底層的存儲介質(zhì)和文件系統(tǒng)類型。這是 Linux 文件系統(tǒng)對外的接口,任何要使用文件系統(tǒng)的程序都必須經(jīng)由這層接口來使用它。
本文對 Linux 文件系統(tǒng)進行了一個大概解說,通過本文你會對文件系統(tǒng)有個初步的認知
重要聲明:本文來自Linux265,經(jīng)授權(quán)轉(zhuǎn)載,版權(quán)歸原作者所有,不代表銳成觀點,轉(zhuǎn)載的目的在于傳遞更多知識和信息。
相關(guān)文章推薦
2025-05-27 11:53:22
2024-08-20 17:58:16
2024-08-19 17:49:29
2024-08-19 10:23:28
2024-08-16 17:06:33
熱門工具
標簽選擇
閱讀排行
我的評論
還未登錄?點擊登錄