Linux 檔案系統核心在於索引節點,ext3 在 ext2 基礎上新增日誌功能,大幅提升可用性與資料完整性。本文詳細解析架構原理、ext3 五大特性、建立/轉換/掛載/修復實戰指令。
ls -i 顯示 inode 號,stat 檔案 顯示完整 inode 資訊。| 特性 | ext2 | ext3 |
|---|---|---|
| 檔案系統類型 | 非日誌式 | 日誌式 |
| 非正常關機後 | 需執行 fsck 完整掃描,耗時長 | 僅回放日誌,**數十秒完成恢復** |
| 資料完整性 | 易受損,產生垃圾檔 | 極大提升,可選「資料+中繼資料」雙重日誌 |
| 效能 | 基準 | 日誌優化磁頭移動,**整體效能不降反增** |
| 相容性 | - | **完全相容 ext2**,可雙向無縫切換 |
| 轉換難度 | - | 兩條指令、無需卸載/備份/格式化 |
可在 /etc/fstab 掛載選項指定,或 tune2fs -o journal_data /dev/sdX 修改預設值。
mke2fs -j /dev/sdX # 將分區格式化為 ext3(-j 表啟用日誌) # 範例:mke2fs -j /dev/sda8
tune2fs -j /dev/sdX # 為現有 ext2 分區加入日誌 # 範例:tune2fs -j /dev/sda9 # 轉換後務必修改 /etc/fstab 將該分區 fs type 改為 ext3
mkdir /mnt/data mount -t ext3 /dev/sdX /mnt/data # 或指定日誌模式:mount -t ext3 -o data=journal /dev/sdX /mnt/data
mkdir /mnt/iso mount -o loop /path/to/image.iso /mnt/iso # 同樣適用 *.img 檔案
# 1. 必先卸載 umount /dev/sdX # 2. 執行修復 (-f 強制, -y 自動回答 yes) e2fsck -fy /dev/sdX
可將日誌放在獨立分區/裝置(如 SSD 上)提升效能:
mke2fs -J device=/dev/sdY /dev/sdX # 在 sdX 建立 ext3,日誌存放於 sdY
ordered 模式;資料極度關鍵(資料庫、財務)改 journal;極致效能場景可考慮 writeback。