
我的驅動器已格式化為 hfs+,但不乾淨。
例如,當我嘗試透過 掛載驅動器時mount -f -o rw
,dmesg
顯示錯誤:
hfs: Filesystem was not cleanly unmounted, running fsck.hfsplus is recommended.
mounting read-only.
因此,當我嘗試透過fsck.hfsplus
(的一部分hfsprogs
)修復它時,它說:
$ fsck -dyf /media/sdd2
** /dev/sdd2
Using cacheBlockSize=32K cacheTotalBlock=1024 cacheSize=32768K.
** Checking HFS Plus volume.
** Detected a case-sensitive catalog.
** Checking Extents Overflow file.
** Checking Catalog file.
Invalid map node linkage
(4, 0)
** Volume check failed.
volume check failed with error 7
volume type is pure HFS+
primary MDB is at block 0 0x00
alternate MDB is at block 0 0x00
primary VHB is at block 2 0x02
alternate VHB is at block 3906291630 0xe8d547ae
sector size = 512 0x200
VolumeObject flags = 0x07
total sectors for volume = 3906291632 0xe8d547b0
total sectors for embedded volume = 0 0x00
儘管使用-y
或-f
,驅動器並未修復。
這是根據這個錯誤的解釋部落格:
檢查完 B*-Tree 後,fsck 就會繼續檢查分配映射。 fsck 如上所述檢查頭節點。然後,它檢查每個節點,確保其將自己標識為映射節點並具有正確數量的記錄。如果節點未通過這些檢查,fsck 將傳回「無效的映射節點」。然後 fsck 檢查以確保節點高度不為 0(“無效節點高度”)。最後,如果它已經到達樹的底部並且mapSize(儲存樹中的記錄總數並且每次處理節點時遞減)不為0,fsck 知道存在孤立節點並傳回「無效的映射節點連結」。
但是,我不知道如何修復該錯誤,因為它不會自動更正,而且我無法將分割區安裝為可寫入。有什麼想法如何修復該錯誤嗎?
PS磁碟工具也有類似的問題。