web-dev-qa-db-ja.com

HFS +拡張属性ファイルを修復する方法は?

拡張属性ファイルを修復/再構築できるツールはありますか?

今のところ、Mac OS X 10.6.3 RetailDVDのfsck_hfs、GParted 0.5.2livecdおよびParagonPartition Manager11のfsck.hfsplusを試しましたが、すべて成功しませんでした。

このマニュアルページfsck_hfsには再構築が必要なBツリーを指定する-Rオプションがあると記載されていますが、fsck_hfsを受け入れるバイナリはどこにも見つかりませんでしたこのオプション。

現在SATA-USBアダプターがないため、VirtualBox over network(FreeBSDのGEOMゲート経由)のVM)にHFS +が壊れたHDDが接続されています。

2
gelraen

オプションを次のように指定します

-Re

オプションなしでfsck_hfsにコマンドを実行すると、「usage」の下に表示されるオプションのリストが、実際に受け入れられるオプションよりも少なくなる可能性があります。これは、私が信じている、 ドキュメンテーション バグ。

更新— 2011-07-30

Mac OS X 10.6.3のfsck_hfsで-Rオプションが認識されない場合は、10.6.xの新しいバージョンで導入されたと想定してください。冒頭の投稿で参照されているマニュアルページでは、10.5から10.6.6の間には何もありません。

Apple Store(UK)のSnow Leopardは10.6.3のままです したがって、より高性能なバージョンのfsck_hfsを備えた起動可能なメディアが必要な場合は、次のいずれかをお勧めします:

参考までに、10.7(ビルド11A511)のトランスクリプトを次に示します。

[macbookpro08-centrim:~] gjp22% date
Sat 30 Jul 2011 08:25:39 BST
[macbookpro08-centrim:~] gjp22% uname -a
Darwin macbookpro08-centrim.home 11.0.0 Darwin Kernel Version 11.0.0: Sat Jun 18 12:56:35 PDT 2011; root:xnu-1699.22.73~1/RELEASE_X86_64 x86_64
[macbookpro08-centrim:~] gjp22% diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *320.1 GB   disk0
   1:                        EFI                         209.7 MB   disk0s1
   2:          Apple_CoreStorage                         318.1 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
   4:              Apple_Journal                         536.9 MB   disk0s4
   5:                  Apple_HFS scratchy                536.9 MB   disk0s5
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS speedy                 *317.8 GB   disk1
[macbookpro08-centrim:~] gjp22% Sudo /sbin/fsck_hfs -R
/sbin/fsck_hfs: option requires an argument -- R
usage: fsck_hfs [-b [size] B [path] c [size] Edfglx m [mode] npqruy] special-device
  b size = size of physical blocks (in bytes) for -B option
  B path = file containing physical block numbers to map to paths
  c size = cache size (ex. 512m, 1g)
  E = exit on first major error
  d = output debugging info
  f = force fsck even if clean (preen only) 
  g = GUI output mode
  x = XML output mode
  l = live fsck (lock down and test-only)
  m arg = octal mode used when creating lost+found directory 
  n = assume a no response 
  p = just fix normal inconsistencies 
  q = quick check returns clean, dirty, or failure 
  r = rebuild catalog btree 
  u = usage 
  y = assume a yes response 
[macbookpro08-centrim:~] gjp22% Sudo diskutil unmount /Volumes/scratchy
Volume scratchy on disk0s5 unmounted
[macbookpro08-centrim:~] gjp22% Sudo /sbin/fsck_hfs -Re /dev/disk0s5
** /dev/rdisk0s5
   Executing fsck_hfs (version diskdev_cmds-540.1~34).
** Checking Journaled HFS Plus volume.
   The volume name is scratchy
** Checking extents overflow file.
** Checking catalog file.
** Rebuilding extents overflow B-tree.
** Rechecking volume.
** Checking Journaled HFS Plus volume.
   The volume name is scratchy
** Checking extents overflow file.
** Checking catalog file.
** Checking multi-linked files.
** Checking catalog hierarchy.
** Checking extended attributes file.
** Checking volume bitmap.
** Checking volume information.
   Invalid volume file count
   (It should be 336 instead of 226)
   Invalid volume directory count
   (It should be 37 instead of 52)
   Invalid volume free block count
   (It should be 124541 instead of 125082)
   Volume header needs minor repair
(2, 0)
** Repairing volume.
** Rechecking volume.
** Checking Journaled HFS Plus volume.
   The volume name is scratchy
** Checking extents overflow file.
** Checking catalog file.
** Checking multi-linked files.
** Checking catalog hierarchy.
** Checking extended attributes file.
** Checking volume bitmap.
** Checking volume information.
** The volume scratchy was repaired successfully.
[macbookpro08-centrim:~] gjp22% Sudo /sbin/fsck_hfs -fn /dev/disk0s5
** /dev/rdisk0s5 (NO WRITE)
   Executing fsck_hfs (version diskdev_cmds-540.1~34).
** Checking Journaled HFS Plus volume.
   The volume name is scratchy
** Checking extents overflow file.
** Checking catalog file.
** Checking multi-linked files.
** Checking catalog hierarchy.
** Checking extended attributes file.
** Checking volume bitmap.
** Checking volume information.
** The volume scratchy appears to be OK.
[macbookpro08-centrim:~] gjp22% 
2
Graham Perrin