Ext2文件系統
Linux的正規文件系統為Ext2(Linux second extended file system),它主要由以下三個部分組成:
1)super block:記錄此文件系統的整體信息,包括inode/block的總量、使用量、剩余量,以及文件系統的格式與相關信息等。
2)inode:記錄文件的屬性和權限(元數據metadata),一個文件占用一個inode,同時記錄文件數據所在的block號
3)block:存放實際數據的地方
由於Ext2是索引式文件系統,基本上不太需要經常進行碎片整理,而Windows的FAT文件系統不是索引式文件系統,故經常需要碎片整理。
Ext3文件系統
如今主流的Linux大都采用Ext2文件系統,Ext3是Ext2的升級版,主要添加了日志支持(Journaling),是為了能快速修復文件系統。
df, du
df:列出文件系統的整體磁盤使用情況
df [ahikHTm] [目錄或文件名]
-a:列出所有的文件系統,包括特殊的如/proc
-k:以KB顯示
-m:以MB顯示
-h:以人們較容易閱讀的GB、MB、KB等格式顯示
-H:已M=1000K替代M=1024K的進位方式
-T:顯示文件系統類型(如ext3)
-i:用inode數量顯示,而不是磁盤容量
最常用:df -h 或 df -hT
df讀取的是superblock裡的內容,所以速度非常快。
du:評估文件系統的磁盤使用量(常用於評估目錄所占空間)
du [0ahskm] 文件或目錄名稱
-a:列出所有文件和目錄
-h:以人類較容易閱讀的格式顯示
-s:只列出總量,而不列出各個子目錄
-k:以KB顯示
-m:以MB顯示
最常用:du -sh
du會直接到文件系統內查找所有的文件數據,故執行需要一定時間。