やる気のないブログ

モチベーションの低さなら誰にも負けない

【Synology】Hyper BackupでHFS+フォーマットのHDDを使うと失敗する

いやぁ、だいぶハマりました…

原因と解決方法がわかったので共有します。

結論としては、ext4にフォーマットし直したらうまくいきました。

事象: Hyper Backupで「異常終了」になる

  • SynologyのNASからHyper Backupで外付けHDDにバックアップをしていました。
  • 数十GBのデータバックアップは成功していました
  • しかし、追加で数百GB〜数TBのデータをバックアップしていたところ、突然「異常終了」になりました。
  • ログを見ると、「Exception occurred while backing up data. (Disk I/O error.)」が出ていました。

試したこと

  • 「今すぐバックアップ」でバックアップを再度実行 →やはり異常終了になる
  • バックアップタスクをすべて削除して作り直し →数十GBのデータバックアップでも数秒で異常終了になる。

  • 外付けHDDを抜き差し後バックアップを再度実行 →やはり異常終了になる
  • アクセス権を変更してみる →「このボリュームは現在読み取り専用です。」と表示されて変更できない。

[caption id="attachment_4052" align="alignnone" width="512"] 「このボリュームは現在読み取り専用です。」と表示されて変更できない。[/caption]

原因: 読み取り専用でマウントされたことによる書き込みエラー

いろいろ調べて行った結果、以下のサイトがかなり参考になりました。 https://zarino.co.uk/post/write-hfs-synology-nas/

HFS +(「Mac OS Extended」とも呼ばれる)はLinuxと互換性がないと思うかもしれませんが、それが問題です。しかしそれは真実ではありません。Linuxは何年もの間HFS +ボリュームの読み書きをサポートしてきました。次の2つの注意点を使って「サポート」してください。
1 HFS +ドライブは2TBより小さくなければなりません。
2 HFS +ドライブでジャーナリングを無効にする必要があります。
LinuxはHFS +ドライブでのジャーナリングをサポートしていません(少なくとも、サードパーティ製のドライバがない限り)。そのため、DiskStationはジャーナルドライブを読み取り専用でマウントするため、ファイルのコピーに失敗します。

 

なるほど。

今回、バックアップ先に使っている外付けHDDは4TBでした。アウト。 しかもジャーナリングも無効にしていませんでした。 その結果、読み取り専用でマウントされたので、書き込みできずに失敗と思われます。

逆にこの状態でなぜ途中まで書き込みができていたのかは疑問ではあります…。

解決方法: ディスクをext4にフォーマットする

 

[コントロール パネル] > [外部デバイス] > [フォーマット] をクリック [ファイルシステムの形式]で EXT4 を選択し[OK]をクリック

確認メッセージが出ますが「はい」をクリック

[caption id="attachment_4033" align="alignnone" width="512"] フォーマット中…[/caption]

[caption id="attachment_4034" align="alignnone" width="512"] フォーマット中…7%[/caption]

[caption id="attachment_4035" align="alignnone" width="512"] 初期化中…100%[/caption]

[caption id="attachment_4036" align="alignnone" width="512"] フォーマット完了[/caption]

なぜそもそもHFS+で使っていたのか?

NASが壊れた時に、外付けHDDをMacに接続してデータを見るためです。

今回、ext4にフォーマットしたので、Macに接続して見るためにはひと手間必要です。 ↓この辺りが参考になります。

Macext4のHDDをマウントする https://qiita.com/sameyasu/items/bc937fc70f536ef84ee7

 

マウントしたらこんな感じです。