FlossDoc: 請協力 GPLv3 的中文翻譯工作。

顯示 Ext2/Ext3/Ext4 檔案系統資訊

FlossDoc,自由中文開源知識庫

Jump to: navigation, search

要顯示一個 Ext2/Ext3/Ext4 檔案系統的資訊,可以使用 e2fsprogs 中的 dumpe2fstune2fs -l 命令,例如:

dumpe2fs /dev/sda6

或者

tune2fs -l /dev/sdb7

dumpe2fs 會顯示 superblock 上的檔案系統資訊和每個區塊組 (block group) 的資訊,在一般擁有很多區塊組檔案系統,會佔據很長的畫面。而 tune2fs -l 只會顯示 superblock 上的資訊。如果您只想看 superblock 上關整個檔案系統的資訊,除了使用 tune2fs -l 外,亦可以在 dumpe2fs 加上 -h 選項:

dumpe2fs -h /dev/sda6

目录

dumpe2fs/tune2fs -l 畫面

以下是一個典型的 dumpe2fs 畫面:

Filesystem volume name:   /home
Last mounted on:          <not available>
Filesystem UUID:          d7a9f647-3364-4ed9-824e-63cd748458bc
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags:         signed_directory_hash 
Default mount options:    (none)
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS type:       Linux
Inode count:              524288
Block count:              2096466
Reserved block count:     104823
Free blocks:              1426242
Free inodes:              518632
First block:              0
Block size:               4096
Fragment size:            4096
Reserved GDT blocks:      511
Blocks per group:         32768
Fragments per group:      32768
Inodes per group:         8192
Inode blocks per group:   512
Flex block group size:    16
Filesystem created:       Mon Dec 15 12:53:47 2008
Last mount time:          n/a
Last write time:          Wed Dec 31 23:15:43 2008
Mount count:              0
Maximum mount count:      23
Last checked:             Sun Dec 28 10:21:57 2008
Check interval:           15552000 (6 months)
Next check after:         Fri Jun 26 10:21:57 2009
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:               256
Required extra isize:     28
Desired extra isize:      28
Journal inode:            8
Default directory hash:   half_md4
Directory Hash Seed:      17e9c71d-5a16-47ad-b478-7c6bc3178f1d
Journal backup:           inode blocks
Journal size:             128M


Group 0: (Blocks 0-32767) [ITABLE_ZEROED]
  Checksum 0x5ca1, unused inodes 8181
  Primary superblock at 0, Group descriptors at 1-1
  Reserved GDT blocks at 2-512
  Block bitmap at 513 (+513), Inode bitmap at 529 (+529)
  Inode table at 545-1056 (+545)
  24025 free blocks, 8181 free inodes, 2 directories, 8181 unused inodes
  Free blocks: 8743-32767
  Free inodes: 12-8192
Group 1: (Blocks 32768-65535) [INODE_UNINIT, ITABLE_ZEROED]
  Checksum 0xa83d, unused inodes 8192
  Backup superblock at 32768, Group descriptors at 32769-32769
  Reserved GDT blocks at 32770-33280
  Block bitmap at 514, Inode bitmap at 530
  Inode table at 1057-1568
  32255 free blocks, 8192 free inodes, 0 directories, 8192 unused inodes
  Free blocks: 33281-65535
  Free inodes: 
...
Group 63: (Blocks 2064384-2096465) [INODE_UNINIT, ITABLE_ZEROED]
  Checksum 0x1f29, unused inodes 8192
  Block bitmap at 1572879, Inode bitmap at 1572895
  Inode table at 1580576-1581087
  32082 free blocks, 8192 free inodes, 0 directories, 8192 unused inodes
  Free blocks: 2064384-2096465
  Free inodes:

檔案系統資訊

  • 檔案系統 volume 名稱 (Filesystem volume name) - 即是檔案系統標簽 (Filesystem label),用作簡述該檔案系統的用途或其儲存數據。現時 GNU/Linux 都會用 USB 手指/IEEE1394 硬碟等可移除儲存裝置的檔案系統標簽作為其掛載目錄的名稱,方便使用者識別。而個別 GNU/Linux distributionFedoraRHELCentOS 等亦在 fstab 取代傳統裝置檔案名稱 (即 /dev/sda1 和 /dev/hdc5 等) 的指定開機時要掛載的檔案系統,避免偶然因為 BIOS 設定或插入次序的改變而引起的混亂。可以使用命令 e2labeltune2fs -L 改變
  • 上一次掛載於 (Last mounted on)' - 上一次掛載檔案系統的掛載點路徑,此欄一般為空,很少使用。可以使用命令 tune2fs -M 設定。
  • 檔案系統 UUID (Filesystem UUID) - 一個一般由亂數產生的識別碼,可以用來識別檔案系統。個別 GNU/Linux distributionUbuntu] 等亦在 fstab 取代傳統裝置檔案名稱 (即 /dev/sda1 和 /dev/hdc5 等) 的指定開機時要掛載的檔案系統,避免偶然因為 BIOS 設定或插入次序的改變而引起的混亂。可以使用命令 tune2fs -U 改變
  • (Filesystem magic number) - 用來識別此檔案系統為 Ext2/Ext3/Ext4 的簽名,位置在檔案系統的 0x0438 - 0x0439 (Superblock 的 0x38-0x39),現時必定是 0xEF53。
  • 檔案系統版本編號 (Filesystem revision #) - 檔案系統微版本編號,只可以在格式化時使用 mke2fs -r 設定。現在只支援[1]
    • 0 - 原始格式,Linux 1.2 或以前只支援此格式[2]
    • 1 (dymanic) - V2 格式支援動態 inode 大小 (現時一般都使用此版本)
  • 檔案系統功能 (Filesystem features) - 開啟了的檔案系統功能,可以使用合令 tune2fs -O 改變。現在可以有以下功能:
    • has_journal - 有日誌 (journal),亦代表此檔案系統必為 Ext3Ext4
    • ext_attr - 支援 extended attribute
    • resize_inode - resize2fs 可以加大檔案系統大小
    • dir_index - 支援目錄索引,可以加快在大目錄中搜索檔案。
    • filetype - 目錄項目為否記錄檔案類型
    • needs_recovery - e2fsck 檢查 Ext3/Ext4 檔案系統時用來決定是否需要完成日誌紀錄中未完成的工作,快速自動修復檔案系統
    • extent - 支援 Ext4 extent 功能,可以加快檔案系系效能和減少 external fragmentation
    • flex_bg
    • sparse_super - 只有少數 superblock 備份,而不是每個區塊組都有 superblock 備份,節省空間。
    • large_file - 支援大於 2GiB 的檔案
    • huge_file
    • uninit_bg
    • dir_nlink
    • extra_isize
  • 檔案系統旗號 (Filesystem flags) - signed_directory_hash
  • 預設掛載選項 (Default mount options) - 掛載此檔案系統預設會使用的選項
  • 檔案系統狀態 (Filesystem state) - 可以為 clean (檔案系統已成功地被卸載)、not-clean (表示檔案系統掛載成讀寫模式後,仍未被卸載) 或 erroneous (檔案系統被發現有問題)
  • 錯誤處理方案 (Errors behavior) - 檔案系統發生問題時的處理方案,可以為 continue (繼續正常運作) 、remount-ro (重新掛載成只讀模式) 或 panic (即時當掉系統)。可以使用 tune2fs -e 改變
  • 作業系統類型 (Filesystem OS type) - 建立檔案系統的作業系統,可以為 Linux/Hurd/MASIX/FreeBSD/Lites[1]
  • Inode 數目 (Inode count) - 檔案系統的總 inode 數目,亦是整個檔案系統所可能擁有檔案數目的上限
  • 區塊數目 (Block count) - 檔案系統的總區塊數目
  • 保留區塊數目 (Reserved block count) - 保留給系統管理員工作之用的區塊數目
  • 未使用區塊數目 (Free blocks) - 未使用區塊數目
  • 未使用 inode 數目 (Free inodes) - 未使用 inode 數目
  • 第一個區塊編數 (First block) - Superblock 或第一個區塊組開始的區塊編數。此值在 1 KiB 區塊大小的檔案系統為 1,大於1 KiB 區塊大小的檔案系統為 0。(Superblock/第一個區塊組一般都在檔案系統 0x0400 (1024) 開始)[1]
  • 區塊大小 (Block size) - 區塊大小,可以為 1024, 2048 或 4096 位元組 (Compaq Alpha 系統可以使用 8192 位元組的區塊)
  • Fragment 大小 (Fragment size) - 實際上 Ext2/Ext3/Ext4 未有支援 Fragment,所以此值一般和區塊大小一樣
  • 保留 GDT 區塊數目 (Reserved GDT blocks) - 保留作線上 (online) 改變檔案系統大小的區塊數目。若此值為 0,只可以先卸載才可離線改變檔案系統大小[3]
  • 區塊/組 (Blocks per group) - 每個區塊組的區塊數目
  • Fragments/組 (Fragments per group) - 每個區塊組的 fragment 數目,亦用來計算每個區塊組中 block bitmap 的大小
  • Inodes/組 (Inodes per group) - 每個區塊組的 inode 數目
  • Inode 區塊/組 (Inode blocks per group) - 每個區塊組的 inode 區塊數目
  • (Flex block group size) - 16
  • 檔案系統建立時間 (Filesystem created) - 格式化此檔案系統的時間
  • 最後掛載時間 (Last mount time) - 上一次掛載此檔案系統的時間
  • 最後改動時間 (Last write time) - 上一次改變此檔案系統內容的時間
  • 掛載次數 (Mount count) - 距上一次作完整檔案系統檢查後檔案系統被掛載的次數,讓 fsck 決定是否應進行另一次完整檔案系統檢查
  • 最大掛載次數 (Maximum mount count) - 檔案系統進行另一次完整檢查可以被掛載的次數,若掛載次數 (Mount count) 大於此值,fsck 會進行另一次完整檔案系統檢查
  • 最後檢查時間 (Last checked) - 上一次檔案系統作完整檢查的時間
  • 檢查間距 (Check interval) - 檔案系統應該進行另一次完整檢查的最大時間距
  • 下次檢查時間 (Next check after) - 下一次檔案系統應該進行另一次完整檢查的時間
  • 保留區塊使用者識別碼 (Reserved blocks uid) - 0 (user root)
  • 保留區塊群組識別碼 (Reserved blocks gid) - 0 (group root)
  • 第一個 inode (First inode) - 第一個可以用作存放正常檔案屬性的 inode 編號,在原格式此值一定為 11, V2 格式亦可以改變此值[1]
  • Inode 大小 (Inode size) - Inode 大小,傳統為 128 位元組,新系統會使用 256 位元組的 inode 令擴充功能更方便
  • (Required extra isize) - 28
  • (Desired extra isize) - 28
  • 日誌 inode (Journal inode) - 日誌檔案的 inode 編號
  • 預設目錄 hash 演算法 (Default directory hash) - half_md4
  • 目錄 hash 種子 (Directory Hash Seed) - 17e9c71d-5a16-47ad-b478-7c6bc3178f1d
  • 日誌備份 (Journal backup) - inode blocks
  • 日誌大小 (Journal size) - 日誌檔案的大小

參考資料

  1. 1.0 1.1 1.2 1.3 Poirier, Dave (2001) The Second Extended File System: Internal Layout.
  2. e2fsprogs. “mke2fs(8): create an ext2/ext3 filesystem”. Linux.
  3. Ts’o, Theodore (May 8, 2006) “Re: Fedora Core 4 and FC5's NEW EXT3 file system: "Reserved GDT blocks" ???”. Ext3 User Mailing List.

相關頁面

相關連結

Personal tools