マウントされなくなる修復Time Machine sparsebundle


24

何らかの方法でTime Machineバックアップを台無しにしました。マウント可能なファイルシステムがないことを示すエラーが表示されるため、sparsebundleファイルをマウントできなくなりました。

hdiutilコマンドを使用して、sparsebundleファイルを添付しました。

hdiutil attach -nomount -readwrite flattop.sparsebundle

その結果、次の/ dev /デバイスが作成されました。

/dev/disk2              Apple_partition_scheme
/dev/disk2s1            Apple_partition_map
/dev/disk2s2            Apple_HFSX

その後、メインボリューム(/ dev / disk2s2)を確認するためにfsch_hfsコマンドを実行しました。

fsck_hfs -drf /dev/disk2s2

これにより、Time Machine Backupsボリュームが破損しており、修復が必要であるという通知が表示されました。

Unable to open block device /dev/disk2s2: Permission deniedjournal_replay(/dev/disk2s2) returned 13
** /dev/rdisk2s2 (NO WRITE)
    Using cacheBlockSize=32K cacheTotalBlock=32768 cacheSize=1048576K.
   Executing fsck_hfs (version diskdev_cmds-540.1~34).
Non-empty journal:  start = 66310144, end = 94912512
   Journal need to be replayed but volume is read-only
** Checking Journaled HFS Plus volume.
** Detected a case-sensitive volume.
   The volume name is Time Machine Backups
** Checking extents overflow file.
   Unused node is not erased (node = 3568)
   Unused node is not erased (node = 3574)
   Unused node is not erased (node = 3575)
** Checking catalog file.
** The volume Time Machine Backups was found corrupt and needs to be repaired.
    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 2865568974 0xaacd1cce 
    sector size = 512 0x200 
    VolumeObject flags = 0x07 
    total sectors for volume = 2865568976 0xaacd1cd0 
    total sectors for embedded volume = 0 0x00 

ご覧のとおり、「ブロックデバイス/ dev / disk2s2を開けません:許可deniedjournal_replay(/ dev / disk2s2)が13を返しました」というエラーもあります。

これはfsck_hfsコマンドをsuとして実行していないことが原因だと思ったので、sudoで試してみましたが、同じ結果になりました。

私のスパースバンドルファイルはSynology DS408 NASにあり、約2年間問題なく実行されています:(

誰もこれをさらに進める方法を考えていますか?

よろしくお願いします、Niels R.

更新:この質問を書いている間に疑ったように、おそらく読み取り/書き込み許可に問題があります。ディスクユーティリティにボリュームが表示され、[確認]をクリックすると、次の出力が表示されます。

Verifying volume “Time Machine Backups”
Checking file systemJournal need to be replayed but volume is read-only
Checking Journaled HFS Plus volume.
Detected a case-sensitive volume.
Checking extents overflow file.
Unused node is not erased (node = 3568)
Checking catalog file.
Keys out of order
The volume Time Machine Backups was found corrupt and needs to be repaired.
Error: This disk needs to be repaired. Click Repair Disk.

sparsebundleファイルを単純にchmodして適切な権限を設定できますか?

回答:


26

私のブログで、NASベースのスパースバンドルエラーをどのように修復しようとするかについて書いています。要約すれば:

  1. hdiutil attach -nomount -noverify -noautofsck /Volumes/{name of your disk}/{name of}.sparsebundle

    その後、次のようなものが表示されます

    /dev/diskx Apple_partition_scheme
    /dev/diskxs1 Apple_partition_map
    /dev/diskxs2 Apple_HFSX
    

    どこでxは、外部ディスクのディスクIDです。xは2、3、4またはそれ以上です。Apple_HFSXまたはApple_HFSとラベル付けされたものに興味があります。

  2. fsck_hfs -drfy /dev/diskxs2 手順1で見つけた関連デバイスを使用します。

    うまくいけば、最終的に表示されます

    ボリュームは正常に修復されました

  3. hdiutil detach /dev/diskxs2


ただし、OS X 10.6.3以降、Time Machineは検証に失敗した宛先ボリュームへの書き込みを拒否します。上記のプロセスでバックアップの回復に成功した場合でも、Time Machineが検証に失敗したときに書き込んだブラックマークを削除する必要があります。

  1. sparsebundleのロックを解除します

    chflags -R nouchg /Volumes/{name of your disk}/{name of}.sparsebundle
    
  2. 元の場所に戻す

    mv /Volumes/{name of your disk}/{name of}_YYYY-MM-DD.sparsebundle /Volumes/{name of your disk}/{name of}.sparsebundle
    
  3. sparsebundleの最上位ディレクトリで、ファイルを編集しますcom.apple.TimeMachine.MachineID.plist

    • 削除する

      <key>RecoveryBackupDeclinedDate</key>
      <date>{whatever-the-date}</date>
      
    • 変化する

      <key>VerificationState</key>
      <integer>2</integer>
      

      <key>VerificationState</key>
      <integer>0</integer>
      

3
呼び出しfsck_hfs戻り値:オープンブロックデバイスにできないの/ dev / disk7s2:リソースbusyjournal_replay(の/ dev / disk7s2)が16返さ
ステファン・ミュラー

3
fsck_hfs -drfy / dev / disk2s2ブロックデバイス/ dev / disk2s2を開くことができません:許可deniedjournal_replay(/ dev / disk2s2)が13を返しました** / dev / rdisk2s2(書き込み
不可

これらの指示はうまくいきませんでしたが、Christian Lのリンクがうまくいきました。
マルハル

これで問題が解決しました、ありがとう!コマンドを実行した結果(より検索しやすくするため)gist.github.com/oleander/d3d37a46940d0ac4b538da62e074​​5601 Proのヒント:上記のコマンドをWi-Fi(802.11n、200Gb)で実行しないでください。最初に試してみて、30時間以上後に中止する必要がありました。イーサネットケーブルを使用してしまいましたが、これには2時間しかかかりませんでした。
ライナスオレアンダー

1
fsck_hfsは修復が試すことができないと言う場合はdiskutil repairVolumeは/ dev / disk2s2
malhal

6

sparsebundleの拡張属性により、ファイルへの書き込みが妨げられている可能性があります。

走る

chflags -R nouchg flattop.sparsebundle

ただし、スパースバンドルは本当に破損しているため保護されている可能性があります。


本当に壊れている場合、失うものはありますか?他の唯一のオプションは、それを消去して新しいバックアップを開始することであると理解しています。
マット

4

chmodほど単純ではありません。まず、表示されます 10.5 / 10.6 / 10.7は、すべてのスパースバンドルが処理される方法に若干の違いがあること。次に、スパースバンドルのフラグとダーティ/不良ステータスは別の場所に保存されます。3番目に、スパースバンドル自体を攻撃する必要がある場合があります-含まれているファイルシステムではありません。

最善の策は、埋め込まれているファイルシステムを見る前に、ディスクユーティリティにイメージの修復を許可することです。バンドルとファイルシステムの両方で動作し、Appleがどのように保存したかを知っています。

バンドルの詳細は、プロプライエタリであるか、開発者ドキュメントから見分けるのが困難です。他のサードパーティのユーティリティがこの時点で修正することに熱心なものではないことは確かです。バックアップを作成したMacと同じまたは新しいバージョンのディスクユーティリティを使用している限り、問題ありません。Disk Utilityをあきらめたら(Drive GeniusやDisk Warriorのようなものを試してみてください)、このバンドルを再利用したい場合はAppleのツールを使い続けます。

スパースバンドルの性質-特にハードリンク、およびファイルが削除されたときに圧縮されないという概念には、多くの作業が必要です。DiskUtilityを2週間実行しましたが、800MBサイズのアーカイブの修復パスをまだ完了していません。

実際には、スナップショットがある場合やバックアップされている場合は、NASの以前のバージョンに戻すことをお勧めします。最後に-fsck / Disk Utilityで修正できないエラーがある場合、スパースバンドルは不良としてマークされ、ロックされます。そうすれば物事を読むことができますが、二度と書くことはできません。マシンをストレージに接続して問題を修正できるかどうかを確認してください(DASまたは高速接続の方が良いです。問題を解決して再起動しない時間があるマシンが理想的です)

幸運-これはあなたが提供した詳細から回復できないかもしれません。


1

@Garthの答えはうまくいきませんでした。暗号化されたイメージで機能させる-readwritehdiutilは、オプションを追加する必要がありました。そのオプションがなければhdiutil、パスワードを要求しません。

fsckステップで、に遭遇しましたDisk full error。これを修正resizeするために、fsckを実行する前に画像サイズを拡大するオプションを使用しました。

修正に使用したコマンドは次のとおりです。

# chflags -R nouchg MyImage.sparsebundle

# hdiutil attach -nomount -noverify -readwrite -noautofsck MyImage.sparsebundle
Enter the password to access „MyImage.sparsebundle“: 
/dev/disk2              GUID_partition_scheme           
/dev/disk2s1            EFI                             
/dev/disk2s2            Apple_HFS                       

# hdiutil resize -size 1.5t MyImage.sparsebundle
Enter the password to access „MyImage.sparsebundle“: 

# fsck_hfs -drf /dev/disk2s2
** Checking Journaled HFS Plus volume.
** Detected a case-sensitive volume.
   The volume name is Time Machine-Backups
** Checking extents overflow file.
** Checking catalog file.
** Rebuilding catalog B-tree.
…

# hdiutil detach /dev/disk2s2

他の回答で説明したように、デバイスのパスは異なる場合があるためdisk2s2hdiutil attachコマンドで出力されるディスクを使用する必要があります。また、コマンドの実行時にをresize取得した場合にのみステップが必要です。また、私の代わりに、現在の画像サイズよりわずかに大きい合理的な新しいサイズを入力する必要があります(で確認してください)。Disk full errorfsck_hfs1.5tdu -hs MyImage.sparsebundle


素晴らしいですが、サイズ変更する前にデタッチする必要がありました。さもなければ、hdiutil:resize:が失敗しました。リソースが一時的に利用不可(35)
malhal

0

Syology NASがあり、修正を実行しようとするとNO-WRITEエラーが発生していましたが、ベーコンを節約したこの微調整されたバージョンに遭遇しました。

http://tonylawrence.com/blog/2012/08/11/fixing-corrupted-time-machine-backups/


2
Ask Differentへようこそ!このリンクは質問に回答するかもしれませんが、回答の重要な部分をここに含め、参照用のリンクを提供する方が良いでしょう。リンクされたページが変更されると、リンクのみの回答が無効になる可能性があります。
GRG

また、私は書き込み禁止になっていましたが、これらは私のために働いた唯一の指示であり、他のすべてを試しました。
マルハル

0

あるマシンでスパースバンドルディスクイメージをバックアップし、別のマシンでそれを開こうとすると、特に所有者のユーザー名が2つのマシンで異なる場合、「マウント可能なファイルシステムがありません」というエラーメッセージが表示されます。

私の解決策は、バンドルをローカルディスクにコピーして実行することでした

sudo chown -R MyUserName nonmounting.sparsebundle

その上。

その後、それはうまく開き、すべては世界に正しかった。


0

上記のすべての手順を実行しましたが、しばらくするとfsck_hfsまたはhdutilを使用してイメージを修復できず、スレッドまたはノードに関連する多くのエラーが破損しました。

私のために働いたのは:

  1. (オプション)HFS Jornaledフォーマットの外部USB 1TBドライブを接続します。
  2. (オプション)Airport Utilityで、Time Capsule Disks-> DiskをUSBでTime Capsuleに接続されたドライブにアーカイブします。これには600 GBで12時間かかりました。

  3. hdiutil attach -nomount -noverify -noautofsck /Volumes/DISK/MyFile.sparsebundle

  4. その後、ディスクはDiskWarriorを使用して表示されました 。[ディレクトリ]タブで、[ 再構築 ]をクリックします。約1時間かかりました。

修正したら、最終的にファイルをマウントしてバックアップできました。

再構築をクリックします


「DiskWarriorは「Time Machine Backups」という名前のディスクの新しいディレクトリを正常に構築しました。ディスクがロックされているため、新しいディレクトリは元のディレクトリを置き換えることができません。」ロックを解除する方法を知っていますか?
マキシズム

0

これは私のために働いた:

  • ディスクイメージを右クリックし、「全員」を読み取りと書き込みに変更します。
  • ターミナルを開く
  • chmod -R 777 {disk image path}

これは明らかに権限の問題でした。

注:これにより、物理的にアクセスできる人なら誰でもバックアップにアクセスできるようになります


0

これが誰かを助けることを願っています。

「マウント可能なファイルシステムがありません」というエラーが表示されたEl Capitanセキュリティアップデートの後、レガシーファイルボルトアカウントからロックアウトされました。

私のケースでうまくいったのは、ドロップダウンメニューから「パッケージ内容を表示」を使用してスパースバンドルファイルを開き、「everyone」のアクセスを手動で「no access」から「read&write」に変更しました。「バンド」ディレクトリでは、ドロップダウンメニューの「囲まれたアイテムに適用」コマンドを使用しました。


0

Windowsマシンでホストされているsparsebundleでも同様の問題がありました。私はこれと他のスレッドですべてを試しましたが、常にマウント可能なファイルシステムエラーが発生しませんでした(112エラーも表示されます)。

問題はWindows Defenderで、sparsebundle内のファイルの1つをトロイの木馬(Trojan:Script / Foretype.A!ml)として検出しました。他の人々は、SpotifyキャッシュRustコンパイル済みファイルなど、同様の誤検知を報告しました

問題を解決するには、Windows Defender検疫からファイルを除外し、sparsebundleを再度マウントします。時間がかかりすぎたため、次のコマンドを使用して出力を取得できます。

hdiutil attach -verbose -debug -mountpoint /mount/path /path/to.sparsebundle

-1

私はちょうど同じ問題を抱えていた

** /dev/rdisk2s2 (NO WRITE)

QNAP 419IIで壊れたTM-sparsebundleを修正しようとしたとき。

Finderを使用してTMマウントを「取り出し」、実行します

hdiutil attach -nomount -noverify -noautofsck ...

コマンド(ここでFix Time Machine Sparsebundle NASベースのバックアップエラーを見つけます)

/dev/disk1s2            Apple_HFSX  

sys-logを確認する

tail -f /var/log/fsck_hfs.log

見せてない

/dev/rdisk1s2: fsck_hfs run at Sun Feb 17 17:53:20 2013
/dev/rdisk1s2: ** /dev/rdisk1s2
/dev/rdisk1s2:    Executing fsck_hfs (version diskdev_cmds-540.1~34).
** Checking Journaled HFS Plus volume.
** Detected a case-sensitive volume.
... LOTS-OF-OUTPUT ...
QUICKCHECK ONLY; FILESYSTEM CLEAN

それでもなお、TMを再度アクティブにすると、まだcurrepted-backup-messageが発生しました:(

がんばろう!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.