Linux
 Computer >> コンピューター >  >> システム >> Linux

ドライバーをインストールせずにmacOSでNTFSドライブにアクセスする方法

「ドライバーなしでmacOSからNTFSドライブを使う?」——一見すると矛盾した話に聞こえるかもしれません。しかし実際のところ、macOSは標準状態ではNTFSフォーマットされたデバイスへの書き込みこそできませんが、読み取りは可能です。筆者も最近MacBookでこの制約に直面しました。大した問題ではありませんが、Windows時代の古いデータをMacに移行したい、あるいはたまにアクセスして利用したい——そんなニーズは意外と多いものです。何らかの形でファイルシステムのサポートを用意する必要があります。

この問題を解決する最も素直な方法は、有料のNTFSドライバーソフトウェアを購入することです。それが確実におすすめの選択肢です。しかし、できるだけ費用をかけたくない場合でも、VirtualBoxなどの仮想化ソフトとLinuxを組み合わせれば、無料で同じ目的を達成できます。ただし、いくつか大きな注意点が伴います。本記事はまず何よりも楽しい実験であり、その次に実用的なレシピとしてご覧いただければ幸いです。それでは、実際に行った手順をご紹介します。

ドライバーをインストールせずにmacOSでNTFSドライブにアクセスする方法

必要なもの

用意するのは以下の通りです:

  • 仮想化ソフトウェア(例:VirtualBox)
  • LinuxベースのOS(例:Ubuntu。お使いのアーキテクチャ、例えばARM版に合わせて選択)
  • NTFSパーティションを1つ以上含む、USB接続の外付けストレージ

手法の概要

今回行う手順は以下の通りです:

  • 外付けディスクをMacBookに接続する
  • Ubuntuの仮想マシンを起動する
  • VirtualBoxのUSBパススルー機能を使い、USBデバイスを仮想マシン内にマウントする
  • LinuxのNTFS読み書き機能(ntfsまたはntfs-3gドライバー)を活用する
  • VirtualBoxの共有フォルダ機能を使ってデータをやり取りする

つまり、データの流れは次のようになります:

USBデバイス → macOS → VirtualBox → Linux → macOS上の共有フォルダ

こうすることで、データをどちらの方向にも自由にコピーできます。ホストOSにネイティブドライバーがあれば直接コピーできるのに比べて手順は多くなりますが、無料で実現できる点は十分に魅力と言えるでしょう。

この方法のメリットとリスク

先に進む前に、重要な注意点をあらかじめ明示しておきます:

  • macOSにはNTFSの読み取りサポートが標準で備わっているため、データを安全に「読み込む」こと自体は可能です
  • LinuxでのNTFSサポートは保証されていません。動作することもあれば、動作しないこともあります
  • バグ、システムフリーズ、さらにはデータ損失に遭遇する可能性があります
  • デバイスやパーティションの操作には知識と注意力が必要です。誤操作によってデータを失う恐れがあります
  • 繰り返しになりますが、データ損失の可能性があることを決して忘れないでください

そのため、この方法はあくまで「どうしても今すぐデータを移動させたいときの一時的な応急策」と考えてください。より良い代替手段としては、ネットワーク共有の利用があります。特にSamba共有はmacOSと非常に相性が良いことで知られています。また、OS間で外付けデバイス経由のデータコピーが必要な場合は、exFAT形式の採用も検討する価値があります。加えて、最初に触れた読み取り専用機能も忘れずに活用しましょう。そしてもちろん、必要であれば市販のNTFSドライバーを購入するのも正当な選択肢です。

外付けデバイスを接続する

NTFSパーティションを含む外付けデバイスを接続すると、Finderのサイドバーに表示されます。クリックしてマウントすれば、標準機能だけで読み取り専用としてアクセス可能です。

ドライバーをインストールせずにmacOSでNTFSドライブにアクセスする方法

ドライバーをインストールせずにmacOSでNTFSドライブにアクセスする方法

VirtualBoxでUbuntu仮想マシンを起動する

次のステップです。これは決して簡単な作業ではないため、事前にVirtualBoxへUbuntuをセットアップする方法に関する記事を参照することをおすすめします。仮想マシンの準備が整ったら、メニューから「デバイス」→「USB」→ 対象の外付けディスクを選択し、ゲストOSへパススルーします。

ドライバーをインストールせずにmacOSでNTFSドライブにアクセスする方法

VirtualBoxによるデバイスの制御を許可します:

ドライバーをインストールせずにmacOSでNTFSドライブにアクセスする方法

これでデバイスはLinuxデスクトップ側に表示され、macOS側からは姿を消します。

ドライバーをインストールせずにmacOSでNTFSドライブにアクセスする方法

Linuxでデバイスをマウントする

セキュリティ権限の仕様と、VirtualBoxがmacOS上で動作する仕組みの都合により、ファイルマネージャーからディスクをマウントすることはできません。sudo権限が必要です。ただし、VirtualBox自体をsudoで起動する必要はありません。Linux側のコマンドラインでsudoを使うだけで構いません:

sudo mount -t ntfs /dev/whatever /mount-point

これでファイルマネージャーに正しく表示され、アクセスできるようになります。書き込みを行いたい場合は、マウントポイントに対して自分自身に書き込み権限を付与するか、所有者を変更する必要があるかもしれません。例えば/mount/something配下にマウントした場合、そのフォルダはroot所有となるため、デフォルトでは読み取り権限しかありません。

ドライバーをインストールせずにmacOSでNTFSドライブにアクセスする方法

ドライバーをインストールせずにmacOSでNTFSドライブにアクセスする方法

データをやり取りする

準備完了です。USBドライブへデータを書き込みたい場合は、まずMacから共有フォルダへデータをコピーし、続いて仮想マシン内で共有フォルダからマウント済みデバイスへコピーします。作業が終わったら、デバイスをアンマウントするか仮想マシンをシャットダウンしてください。すると、デバイスは再びmacOS側に表示されるようになります。

なお、共有フォルダ機能が利用できない環境では、ポートフォワーディングとSSHを組み合わせて、仮想マシンとの間でデータをやり取りすることも可能です。この方法なら、ゲストアディションを使用できない状況(セキュリティポリシー上の理由など)でもデータを移動でき、スクリプト化や自動バックアップといったさらなる柔軟性も得られます。

ドライバーをインストールせずにmacOSでNTFSドライブにアクセスする方法

起こりうる問題と対処法

前述のデータ損失リスクに加えて、別の環境で正しくアンマウントされていないファイルシステムに遭遇することがあります。その場合、Linuxゲストはマウントを拒否するかもしれません:

An error occurred while accessing 'Dedoimedo', the system responded: The requested operation has failed: Error mounting /dev/sdb1 at /media/igor/Dedoimedo: wrong fs type, bad option, bad superblock on /dev/sdb1, missing codepage or helper program, or other error

あるいは、次のようなエラーが出るケースもあります:

sudo mount /dev/sdb1 /mnt
$MFTMirr does not match $MFT (record 0).
Failed to mount '/dev/sdb1': Input/output error
NTFS is either inconsistent, or there is a hardware fault, or it's a
SoftRAID/FakeRAID hardware.
...

このような場合、ntfsfixコマンド(Ubuntuではntfs-3gユーティリティパッケージに含まれています)を実行してみましょう:

sudo ntfsfix /dev/sdb1
Mounting volume... $MFTMirr does not match $MFT (record 0).
FAILED
Attempting to correct errors...
Processing $MFT and $MFTMirr...
Reading $MFT... OK
Reading $MFTMirr... OK
Comparing $MFTMirr to $MFT... FAILED
Correcting differences in $MFTMirr record 0...OK
Correcting differences in $MFTMirr record 3...OK
Processing of $MFT and $MFTMirr completed successfully.
Setting required flags on partition... OK
Going to empty the journal ($LogFile)... OK
Checking the alternate boot sector... OK
NTFS volume version is 3.1.
NTFS partition /dev/sdb1 was processed successfully.

修復後、再度マウントを試みれば成功するはずです。ただし、何度も強調している通り、この方法は100%確実ではありません。macOSの存在に関係なく、LinuxでNTFSを扱う際にはさまざまな問題が起こり得ますし、今回の手順はその複雑さにさらに一石を投じているに過ぎません。

まとめ

本記事で紹介した方法は、実用性というより「オタク心をくすぐる」チュートリアルかもしれませんが、それでも十分な価値があります。複数のOSを並列に運用し、仮想化を橋渡し役として異なる環境をつなぐ柔軟性を示しています。具体的には、NTFSを読み取り専用でしか扱えないmacOSと、(一定の)NTFS書き込み対応を持つLinuxを組み合わせるわけです。考えてみれば意外と便利で、Windowsからの移行時にデータを書き出す手段を探している方にとって、有力な選択肢になり得ます。

さらに踏み込んだ活用も可能です。以前紹介したLinuxネイティブのTrueCrypt・VeraCryptコンテナサポートと組み合わせれば、NTFS上に暗号化コンテナを持つ外付けデバイスを、macOSやWindowsでも読み書き両方で引き続き使用できます。外付けデバイスをゲストOSにパススルーし、マウントし、暗号化コンテナを開いて、データをコピー・書き込みするだけです。こちらについても、機会があれば別途チュートリアルを執筆したいと思います。

最後に念押しですが、この方法は気難しく、データ損失のリスクも伴います。必ず複数の検証済みバックアップを作成しておきましょう。以上で解説は終わりです。それでは!

  1. UbuntuをmacOS Mojave 10.14風の見た目にカスタマイズする方法

    Ubuntuユーザーの多くが一度は感じたことがある不満、それが「見た目」です。デフォルト状態のUbuntuは、紫とオレンジを基調とした配色がやや地味で、真新しくインストールした直後の画面からはワクワク感を得られにくいものです。筆者自身、初期状態のパープル×オレンジのカラースキームはあまり好みではなく、Windowsのダークテーマの方がむしろ快適に感じるほどでした。個人的には、暗めのテーマの方が集中できて作業がはかどると感じています。幸い、CanonicalのシステムであるUbuntuは非常にカスタマイズ性が高く、熱心なコミュニティのおかげでデスクトップを彩る選択肢が豊富に用意されています。Ma

  2. Ubuntuの使いこなし術を学べる!知っておきたい便利サイト6選

    MakeUseOfでは、日々のテックライフを少しでも快適にするため、質の高いチュートリアル、ガイド、レビュー記事をお届けしています。もちろん私たちだけが頑張っているわけではなく、ウェブ上には他にも優れたリソースが数多く存在します。今回は、その中から特にお気に入りのサイトをいくつかご紹介します。 ここ数年でUbuntuの人気は急速に高まりました。その理由は明快です。OSへのアクセス性が高く(ソフトウェア・ハードウェアの両面で)、多くのソフトウェアと互換性があり、しかも完全無料だからです。 Ubuntuの知識をさらに深めたい方、特定の機能について疑問を抱えている方、あるいはLinuxの世界に足を踏