1. 程式人生 > 其它 >Windows 和 Linux檔案系統格式

Windows 和 Linux檔案系統格式

Windows 和 Linux檔案系統格式

Windows 和 Linux檔案系統格式

寫在前面的話

不同作業系統 需要使用 不同型別的檔案系統, 為了與其他作業系統相容, 以相互交換資料, 通常作業系統都能支援 多種型別的 檔案系統

比如 Windows2000 Server, 系統預設或推薦採用的檔案系統是 NTFS,

但也同時支援 FAT32 或 FAT16,

DOS 和 Windows 9x 一般採用 FAT16 或 FAT32, 不支援 NTFS檔案系統

Windows

FAT

FAT, File Allocation Table, 檔案配置表

FAT檔案系統誕生於1977年, 最初是為 軟盤設計的 檔案系統,

但是後來隨著微軟推出 dos 和 Win 9x系統, FAT檔案系統, 經過適配, 被逐漸用到了 硬碟上

並且在那時的20年中, 一直是 主流的檔案系統

後來隨著硬體技術的進步, 硬碟的容量也 越來越大, 這種檔案格式逐漸被擴充套件了, 出現了 FAT12, FAT16, FAT32等檔案系統,

在今天, FAT已經不是Windows系統的主流檔案系統了, Win10現在是 NTFS檔案系統

但是它在U盤, 快閃記憶體, 以及很多嵌入式裝置上, 還是很常見的

最通用的是 FAT32, 很多U盤都是 FAT32格式, 有時候, 我們向U盤拷貝大檔案時, 會發現拷貝不進去, 實際上就是因為 U盤是 FAT32格式的, 單個檔案最大為 4G

這個時候可以把 U盤格式化為 NTFS檔案系統, 就可以了

NTFS

NTFS, New Technology File System, 新技術檔案系統

NTFS 是 WindowsNT 環境的檔案系統, NTFS取代了 老式的 FAT檔案系統, 是一種比 FAT32功能更加強大的 檔案系統

從 Windows2000之後的 Windows系統 的 預設檔案系統都是 NTFS, 而且這些 Windows系統只能安裝在 NTFS格式的磁碟上

(有時間, 查一下是不是, Windows2000, 就開始, 都是 NTFS了嗎)

NTFS, 是一個 日誌性 的 檔案系統, 系統中對 檔案的 操作, 都可以被記錄下來, 當系統崩潰之後, 利用日誌功能 可以恢復資料

我們熟悉的 WindowsXP, Win7, Win8, Win10, 包括 Windows Server 都是 WindowsNT系列的

exFAT

exFAT, Extended File Allocation Table , 擴充套件檔案分配表

exFAT, 又叫 FAT64, 看名字就知道它是對 FAT檔案系統的 擴充套件,

是 微軟專門為 快閃記憶體盤設計的 檔案系統, 單個檔案突破了 4G的限制

對於快閃記憶體, NTFS檔案系統不適合使用, exFAT更為使用, 對於磁碟則不太適用

exFAT在 Windows, Linux 以及 Mac系統上, 都可以讀寫, 作為U盤 或者是 行動硬碟的格式, 還是比較合適的

FAT格式 和 FAT32 沒有考慮對 安全性方面的 更高要求, 例如無法設定 使用者訪問許可權等

NTFS檔案系統, 是 Windows作業系統中的 一種安全的 檔案系統, 管理員 或 使用者 可以設定每個資料夾的 訪問許可權, 從而限制一些使用者 和 使用者組 的 訪問, 以保障資料的安全

Linux

ext2

ext3

ext2的升級版, 帶 日誌功能

ext4

目前主流的 Linux檔案系統

Linux核心支援十多種不同型別的檔案系統,

對於Red Hat Linux,系統預設使用 ext2 或 ext3 和 swap 檔案系統,下面對Linux常用的 檔案系統 作一個簡單介紹。

ext2

1、ext2 與 ext3 檔案系統 ext 是第一個專門為 Linux 設計的檔案系統型別,稱為擴充套件檔案系統,在Linux發展的早期,起過重要的作用。

由於穩定性,速度 和 相容性 方面存在許多 缺陷,ext 現已很少使用。

ext2 是為解決 ext檔案系統 存在的缺陷而設計的 可擴充套件、高效能 的 檔案系統,稱為 二級擴充套件檔案系統。

ext2於1993年釋出,在 速度 和 CPU利用率 上具有較突出的優勢,

是 GNU/Linux 系統中 標準的 檔案系統,支援 256個位元組 的 長檔名,檔案 存取效能 極好。

ext3

ext3 是 ext2 的升級版本,相容 ext2,在 ext2 的基礎上,增加了 檔案系統 日誌記錄 功能,稱為 日誌式檔案系統,

是目前 Linux 預設採用的 檔案系統。

日誌 式檔案系統在因 斷電 或 其他 異常事件而 停機重啟 後,作業系統會根據檔案系統的 日誌,快速檢測 並 恢復檔案系統到正常的狀態,

並可提高系統的恢復時間,提高資料 的安全性。若對資料有 較高安全性要求,建議使用 ext3檔案系統。

日誌檔案系統是目前 Linux檔案系統發展的方向,常用的還用 reiserfs 和 jfs 等 日誌檔案系統。

swap

swap檔案系統

swap檔案系統用於 Linux 的交換分割槽。在Linux中,使用整個 交換分割槽 來提供虛擬記憶體,其分割槽大小一般應是 系統實體記憶體 的2倍,

在安裝 Linux 作業系統時,就應建立 交換分割槽,它是Linux正常執行所必需的,

其型別必須是 swap,交換分割槽 由 作業系統 自行管理。

vfat

vfat檔案系統
vfat是 Linux 對 DOS,Windows系統下的 FAT(包括fat16和Fat32)檔案系統的一個統稱。

NTFS

NFS檔案系統
NFS即 網路檔案系統,用於在 UNIX系統間通過 網路進行 檔案共享,

使用者可將網路中 NFS伺服器 提供的 共享目錄 掛載到 本地的 檔案目錄中,從而實現 操作 和 訪問NFS檔案系統 中的內容。

ISO 9660檔案系統

ISO 9660檔案系統

該檔案系統中光碟所使用的標準檔案系統,

Linux對該檔案系統也有很好的支援,不僅能 讀取光碟 和 光碟ISO映像檔案,而且還支援在Linux環境中燒錄光碟。

Red Hat Linux支援的檔案系統很多,在些就不逐一介紹,要想了解其支援的檔案系統型別,可通過以下命令來檢視:

ls /lib/modules/2.4.20.8/kernel/fs

Linux支援的檔案系統彙總

1, minix:

是Minix作業系統使用的檔案系統,是Linux最先使用的檔案系統。

它有許多缺點:分割槽只能小於64MB,只支援短檔名,單一的時間戳,等等。在 軟盤 和 動態磁碟 領域仍然有用。

2, ext
是對 Minix 的擴充套件。已完全被 ext2 取代,核心 最終將不會支援它。

3, ext2
是Linux使用的,效能很好的檔案系統,用於 固定檔案系統 和 可活動檔案系統。

它是作為ext檔案系統的擴充套件而設計的。

ext2在Linux所支援的檔案系統中,提供最好的效能(在速度和CPU使用方面),簡短的說,ext2是Linux的主要檔案系統。

4, ext3
是對ext2增加日誌功能後的擴充套件。

它向前,向後相容ext2。

意為ext2不用丟失資料和格式化就可以轉換為ext3,ext3也可以轉換為ext2 而不用丟失資料(只要重新安裝該分割槽就行了)。

在RedHat7.2和Mandrake8.0,中作 為一個選項。強烈推薦使用這種檔案系統。

5, xiafs
作為Minix檔案系統的一個穩定,安全的擴充套件,提供基本的最常用的特點。

目前已經停止開發和維護了。不太常使用。

6, msdos
是DOS, Windows和一些os/2計算機使用的檔案系統。

檔名不能超過8個字元,然後跟一個3個字元的字尾。

7, umsdos
是Linux使用的擴充套件的DOS檔案系統。

增加了長檔名支援,UID/GID,POSIX許可權,特殊檔案等而依然保持和DOS檔案系統相容。

8, vfat
是Windows95,Windows NT使用的擴充套件的DOS檔案系統。增加長檔名支援。

9, proc
是一種假的檔案系統,用於和核心資料結構介面, 它不佔用磁碟空間,參考 man proc。

10, iso9660
是一種針對ISO9660標準的CD-ROM檔案系統。自動支援兩種擴充套件(看下面)。

11, High Sierra
是ISO9660標準的前身,

Linux自動支援它。Rock Ridge 是Rock Ridge interchange Protocol協議的一個產品,用於進一步向Unix系統描述ISO9660檔案系統下的檔案。

另外提供諸如長檔名,UID/GID,POSIX權 限,等資訊。Linux自動支援它。

12, hpfs

是OS/2使用的高效能的檔案系統。在Linux系統中是隻讀的,因為缺乏相應的文件資料。

13, sysv

是SystemV/Coherent檔案系統在Linux上的實現。它實現了所有的Xenix,SystemV/386,和 Coherent檔案系統。

14, nfs
是用於存取遠方計算機硬碟的檔案系統。

15, smb
是支援SMB協議的網路檔案系統,Windows用它來實現工作組共享。

16, ncpfs
是Novell NetWare使用的,支援NCP協議的網路檔案系統。

17, Devpts
是一個虛擬的檔案系統,一般安裝在/dev/pts。為了得到一個虛擬終端,程序開啟/dev/ptmx,然後就可使用虛擬終端。

18, fat
不是一個單獨的檔案系統,而是msdos, umsdos 和vfat 檔案系統的常用部分。

19, UFS
是一個廣泛使用於各種作業系統的檔案系統

20, swap
是一種特殊的分割槽,用於在記憶體和硬碟間交換資料的檔案系統。

21, raiserfs
是Linux核心2.4.1以後(2001年1 月)支援的,一種全新的日誌檔案系統。

22, hfs
hfs(=hierarchical files system)是蘋果檔案系統。

23, ntfs
Windows NT檔案系統。

參考連結

https://blog.csdn.net/hxxjxw/article/details/90136804

http://www.360doc.com/content/20/0313/13/48508641_898875967.shtml

http://www.360doc.com/content/11/0520/17/3038654_118172937.shtml