Windowsで安全に取り外さなかったNTFSハードディスクがMacで「読み出し専用」になる原因と修復方法

2025-02-27

こんな不可解なトラブルに遭遇したことはありませんか?

昨日までMac上で快適に読み書きできていた外付けNTFSハードディスクを、WindowsノートPCを使っている同僚に貸してデータを移してもらった。そのディスクをMacに戻して接続したところ、頑なに「読み出しのみ」になり、ファイルが一切書き込めなくなってしまった——。

ケーブルを抜き差ししても、Macを再起動しても症状は変わりません。ターミナルからmacOSのコンソールログを確認してみると、決まって次のようなエラーが出力されています。

Volume is dirty. Run chkdsk on Windows to fix.
Refusing to mount read-write: Windows is hibernated or uncleanly unmounted.

データ自体は残っており、Windows上では普通に使えていたのにもかかわらず、なぜMacに持ってきた途端に「書き込み禁止」の扱いを受けてしまうのでしょうか?そして、手元にWindows PCがない場合、Mac単体でどうやって修復すればよいのでしょうか?


2大原因:Windowsの「ダーティビット(Dirty Bit)」と「高速スタートアップ」

この問題の根本原因は、Mac側の不具合ではなく、Microsoft Windowsの標準仕様によってディスクに埋め込まれる保護フラグにあります。

1. 「ハードウェアの安全な取り外し」を行わずに抜線した

多くのWindowsユーザーは、ファイルのコピーバーが消えると即座にUSBケーブルを引き抜いてしまいます。しかし、Windowsはパフォーマンス向上のため、書き込みデータをメモリ上にキャッシュしています。安全な取り外しを行わずに抜いてしまうと、NTFSのトランザクションログ($LogFile)が未完了のままとなり、ボリュームヘッダーに**「ダーティビット(Dirty Bit: 16進数 0x0001)」**という不整合フラグが強制的に刻まれます。

2. Windows 10 / 11 の標準機能「高速スタートアップ(Fast Startup)」

Windows 10や11では、起動を高速化するために「高速スタートアップ」が標準で有効になっています。
Windows PCで「シャットダウン」を選んだ際、OSは外付けドライブを完全にアンマウントするのではなく、カーネルセッションと接続状態を休止状態ファイル(hiberfil.sys)に保存して電源を切ります。そのため、外付けディスクはWindowsから見て「現在使用中(ロック状態)」のまま放置されます。

なぜmacOSは書き込みを頑なに拒否するのか?

ダーティビットが立っていたり、休止状態のロックがかかっているディスクが接続された場合、良心的なファイルシステムドライバーであればあるほど動作を停止します。
もしこの不整合な状態のまま無理やりMacから新しいファイルを書き込んでしまうと、Windowsが再開時にフラッシュする予定だったキャッシュデータと物理セクタが衝突し、既存ファイルが不可逆的に上書き破壊されてしまう危険があるためです。
macOSはユーザーの貴重なデータを守るための安全装置として、強制的に「読み出し専用」へと落とすのです。


従来の面倒な解決策:Windows機を探して chkdsk を実行する

これまで、この状態に陥ったMacユーザーは非常に面倒な手順を踏むしかありませんでした。

  1. 社内や知人でWindows PCを持っている人を探す。
  2. ディスクを接続し、Windowsのコマンドプロンプト(cmd)を管理者権限で起動する。
  3. 修復コマンドを実行する:
    chkdsk /f E:(E:は対象のドライブレター)
  4. Windowsが未コミットのクラスタを整理し、ダーティビットをクリアするのを待つ。
  5. タスクバーから**「ハードウェアを安全に取り外してメディアを取り出す」**を確実にクリックし、ディスクを取り外す。
  6. Macに挿し直し、ようやく読み書きが復活する。

出張中やカフェ、全員がMacを使っているデザインオフィスなどでこのトラブルに見舞われた場合、Windows機を探すだけで半日潰れてしまいます。


現代的な解決策:NTFSSyncでMac上から直接ファーストエイド(修復)

このWindows依存の悪循環を断ち切るため、NTFSSync にはユーザー空間で安全に動作する**「NTFSファーストエイド(自己修復)」エンジン**が標準装備されています。

Mac単体で、わずか3ステップで元の読み書き状態を復活させることができます。

ステップ1:ロックされたドライブの検知

読み出し専用になってしまったNTFSドライブを接続し、NTFSSync を起動します。アプリがドライブの状態を自動診断し、ボリュームがダーティ状態または休止ロックされていることを検知します。

ステップ2:ワンクリックで修復を実行

  1. NTFSSyncのデバイス一覧から該当のドライブを選択します。
  2. 「ファーストエイド / 修復(First Aid / Repair)」 をクリックします。
  3. NTFSSyncがNTFSのマスターファイルテーブル(MFT)をスキャンし、トランザクションログの不整合を自動でロールバック・整理した上で、ダーティビットと休止フラグを安全にリセットします。

ステップ3:自動で読み書きモードに再マウント

修復処理にかかる時間は通常わずか 5〜15秒 程度です。
処理が完了すると、NTFSSyncが自動的にドライブをFinderに再マウントします。

ドライブの「情報を見る(⌘I)」を確認すると、アクセス権が正常な「カスタムアクセス / 読み出しと書き込み」に戻り、元のファイルを1バイトも損なうことなく通常の書き込み作業を再開できます。


トラブルを未然に防ぐための2つのベストプラクティス

MacとWindowsの混在環境でダーティビットの発生を最小限に抑えるためのコツを紹介します。

  • 所有しているWindows PCの「高速スタートアップ」をオフにする:Windowsの「コントロール パネル」>「電源オプション」>「電源ボタンの動作を選択する」を開き、「現在利用可能ではない設定を変更します」をクリックして、「高速スタートアップを有効にする」のチェックを外しておくとトラブルを未然に防止できます。
  • Macでも取り外し前の「安全なアンマウント」を習慣にする:作業後はケーブルをいきなり引き抜かず、Finderの取り出しアイコンを押すか、NTFSSyncのメニューバーから「すべてのドライブを安全に取り出す」を実行し、デスクトップからアイコンが消えてから抜線しましょう。

まとめ

OS間で外付けハードディスクを受け渡す以上、Windows側の抜去ミスによるダーティビットの発生を100%避けることは困難です。

大切なのは、「エラーが起きたときにMac単体ですぐに直せる環境」を手元に用意しておくことです。

Mac App StoreでNTFSSyncをダウンロード して、突然の読み出し専用ロックも慌てず数秒でセルフ修復できるように備えておきましょう。

NTFSSync logo

NTFSSync - カーネル拡張不要の Mac 用 NTFS 読み書き&フォーマットツール

FUSE-T と NFS v4 のユーザー空間アーキテクチャ採用。SIP無効化不要、挿すだけで自動マウント、Mac単体で外付けドライブを直接NTFS初期化可能。