Ict-創新/LPI/104.2
考生應該能夠維護標準檔案系統,以及與日誌檔案系統相關的額外資料。
關鍵知識領域
- 驗證檔案系統的完整性。
- 監控可用空間和 inode[檢查拼寫]。
- 修復簡單的檔案系統問題。
在塊裝置上建立檔案系統後,您將需要了解如何監控檔案系統並檢查其是否存在錯誤,並在可能的情況下從錯誤中恢復。幸運的是,檔案系統提供了一些命令和工具來幫助您完成此過程。
df(磁碟剩餘空間)和磁碟使用情況(du)命令可用於報告磁碟剩餘空間量,並查詢目錄和檔案使用了多少空間。df 在裝置級別執行,而不是目錄級別。
df 工具顯示已使用和可用的磁碟空間。預設情況下,此資訊以 1K 塊為單位給出。
|
$ df -h 檔案系統 大小 已用 可用 使用% 掛載點 /dev/hda9 289M 254M 20M 93% / /dev/hda2 23M 7.5M 14M 35% /boot 無 62M 0 61M 0% /dev/shm /dev/hda5 1.4G 181M 1.1G 13% /share /dev/hda7 787M 79M 669M 11% /tmp /dev/hda3 4.3G 3.4G 813M 81% /usr /dev/hda6 787M 121M 627M 17% /var //192.168.123.2/share12G 8.8G 3.7G 71% /mnt/smb |
du 命令將顯示磁碟使用情況。這是在每個目錄的基礎上完成的。du 不能顯示可用空間,因為此資訊僅在裝置級別可用。
以下命令將列出/etc 目錄的當前使用情況,以人類可讀的單位(使用-h 開關)顯示,並且只會列印總計(使用-s 開關)。
|
# du -sh /etc 62M /etc/ |
與檔案系統監控一樣,也有許多工具可以維護 Linux 檔案系統,這些工具由各個檔案系統的建立者提供。
如果檔案系統損壞或已損壞,則應針對分割槽執行 fsck 實用程式(最低要求是檔案系統未掛載或以只讀方式掛載)。
fsck 充當前端,自動檢測分割槽的檔案系統型別。然後,與 mkfs 一樣,將相應地呼叫工具 fsck.ext2、fsck.ext3 fsck.ext4 或 fsck.xfs 來執行系統檢查,並在必要時進行修復。由於 ext3 是 Linux 的主要檔案系統型別,因此有一個 e2fsck 命令專門處理此檔案系統型別。您可以使用以下語法明確指定檔案系統型別來呼叫檔案系統檢查
fsck –t <fstype> <device>
示例:檢查 /dev/sdb10 裝置上的 reiserfs 檔案系統
|
# fsck –t reiserfs /dev/sdb10 # fsck.reiserfs /dev/sdb10 |
Ext 檔案系統維護工具
由於擴充套件檔案系統是 Linux 上使用最廣泛和部署最廣泛的檔案系統,因此與其他檔案系統相比,ext 檔案系統支援的工具更多,也更全面。
Ext 檔案系統除錯命令
debugfs 和 dumpe2fs 很少使用,但可以用來提供有關 ext2、ext3 或 ext4 檔案系統的低階資訊。
debugfs [ -b blocksize ] [ -s superblock ] [ -f cmd_file ] [ -R request ] [ -V ] [ [ -w ] [ -c ] [ -i ] [ device ] ]
debugfs 程式是一個互動式檔案系統偵錯程式。它可用於檢查和更改 ext2/3/4 檔案系統狀態。
進入 debugfs shell 後,就可以使用內部命令來更改目錄、檢查 inode 資料、刪除檔案、建立連結、轉儲 ext3 日誌日誌等。雖然這是一個非常強大的命令,但應謹慎使用,一般僅在 fsck 命令未能取得進展後使用。
dumpe2fs [ -bfhixV ] [ -ob superblock ] [ -oB blocksize ] device
dumpe2fs 列印 device 上存在的檔案系統超級塊和塊組資訊。
| dumpe2fs /dev/hda1 dumpe2fs 1.35 (2004 年 2 月 28 日) 檔案系統卷名稱:/boot1 上次掛載點:<不可用> 檔案系統 UUID:d741042c-3eaf-49ee-94c1-7dd8c5459764 檔案系統魔數:0xEF53 檔案系統修訂版號:1(動態) 檔案系統功能:has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super 預設掛載選項:(無) 檔案系統狀態:乾淨 錯誤行為:繼續 檔案系統作業系統型別:Linux inode 計數:25584 塊計數:102280 保留塊計數:5114 空閒塊:80564 空閒 inode:25537 第一個塊:1 塊大小:1024 碎片大小:1024 保留 GDT 塊:256 每組塊:8192 每組碎片:8192 每組 inode:1968 每組 inode 塊:246 檔案系統建立日期:2005 年 5 月 7 日 星期六 10:40:51 上次掛載時間:2005 年 5 月 29 日 星期日 04:08:01 上次寫入時間:2005 年 5 月 29 日 星期日 04:08:01 掛載計數:10 最大掛載計數:-1 上次檢查時間:2005 年 5 月 7 日 星期六 10:40:51 檢查間隔:0(<無>) 保留塊 uid:0(使用者 root) 保留塊 gid:0(組 root) 第一個 inode:11 inode 大小:128 日誌 inode:8 預設目錄雜湊:tea 目錄雜湊種子:50108791-6a0a-41ff-9608-0485c993eaf9 日誌備份:inode 塊
主超級塊在 1,組描述符在 2-2 塊點陣圖在 259 (+258),inode 點陣圖在 260 (+259) inode 表在 261-506 (+260) 0 個空閒塊,1942 個空閒 inode,2 個目錄 空閒塊 空閒 inode:27-1968 [....] |
tune2fs
tune2fs 允許您調整 Linux 擴充套件檔案系統上的各種檔案系統引數。以下是調整擴充套件檔案系統設定的最常用引數列表
- -c 設定在強制執行檔案系統檢查之前,檔案系統將被掛載的次數。這通常在下次啟動時進行,但可以在手動解除安裝檔案系統時執行。
- -C 設定自上次檢查後,檔案系統被掛載的次數。
- -L 設定卷標籤,這曾經用於唯一標識硬碟分割槽,但現在正被 UUID 替換。
- -i 設定檔案系統檢查之間的最大時間。當時間到期或掛載次數超過最大次數時,將強制執行檔案系統檢查,以先到者為準。
- -j 將日誌記錄新增到 ext2 檔案系統中,使其成為 ext3 檔案系統。
執行 tune2fs -l 將打印出檔案系統的當前設定。
| tune2fs 1.41.11 (2010 年 3 月 14 日) 檔案系統卷名稱:<無> 上次掛載點:/ 檔案系統 UUID:6f4746c6-777e-4937-92ee-de98cf8f5aa4 檔案系統魔數:0xEF53 檔案系統修訂版號:1(動態) 檔案系統功能: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 檔案系統標誌:signed_directory_hash 預設掛載選項:(無) 檔案系統狀態:乾淨 錯誤行為:繼續 檔案系統作業系統型別:Linux inode 計數:26558464 塊計數:106205707 保留塊計數:5310285 空閒塊:62912050 空閒 inode:25721258 第一個塊:0 塊大小:4096 碎片大小:4096 保留 GDT 塊:998 每組塊:32768 每組碎片:32768 每組 inode:8192 每組 inode 塊:512 RAID 步長:32747 靈活塊組大小:16 檔案系統建立日期:2010 年 2 月 13 日 星期六 00:48:21 上次掛載時間:2010 年 9 月 28 日 星期二 07:27:39 上次寫入時間:2010 年 9 月 21 日 星期二 09:14:03 掛載計數:22 最大掛載計數:25 上次檢查時間:2010 年 9 月 21 日 星期二 09:14:03 檢查間隔:15552000(6 個月) 下次檢查時間:2011 年 3 月 20 日 星期日 09:14:03 生命週期寫入:709 GB 保留塊 uid:0(使用者 root) 保留塊 gid:0(組 root) 第一個 inode:11 inode 大小:256 所需額外 isize:28 理想額外 isize:28 日誌 inode:8 第一個孤兒 inode:404853 預設目錄雜湊:half_md4 目錄雜湊種子:982f8e6c-db49-49b0-8f65-bce3725b5196 日誌備份:inode 塊 |
XFS 檔案系統維護工具
隨 XFS 提供的檔案系統完整性檢查工具為 xfs_info 和 xfs_metadump。
xfs_metdump 是一款檔案系統除錯工具,它可以將 xfs 檔案系統元資料轉儲到檔案中。該檔案可用於除錯檔案或作為備份。之後,可以使用 xfs_restore 工具恢復元資料。
使用檔案、術語和工具:* du
- df
- fsck
- e2fsck
- mke2fs
- debugfs
- dumpe2fs
- tune2fs
- xfs 工具(例如 xfs_metdump 和 xfs_info)