Windows TIPS
[Management]
  Windows TIPS TOPへ
Windows TIPS全リストへ
内容別分類一覧へ

Linuxのext2/3ボリュームをWindows OSからアクセスする

解説をスキップして操作方法を読む

デジタルアドバンテージ 中塚 寛幸
2005/09/17
 
対象OS
Windows NT
Windows 2000
Windows XP
Linuxのext2/3ファイル・システムには、Windows OSでは直接アクセスできない。
Linuxマシンが起動しなくなった場合に、再インストールして設定ファイルなどをext2/3ボリュームから救出するのは面倒だ。
Ext2IFSを使えば、ext2/3ボリュームにWindowsのドライブ文字を割り当ててアクセスできるようになる。
 
解説

 LinuxマシンやLinuxで動作しているNAS製品を利用していると、カーネルのアップデートに失敗したりして、起動しなくなってしまうことがある。Linuxでは初期のUNIXから使われてきたext2ファイル・システム、ext2を拡張してジャーナリング機能を持たせたext3といった独自のファイル・システムが使われているため、Windowsマシンからこれらのファイル・システム上にある内容を参照することはできない。順当に考えればLinuxを再インストールする必要があるのだが、再インストール前に既存ファイルをバックアップしたい場合がある。また、各種サービスの設定ファイルの内容を確認するためだけにLinuxを再インストールするのは大ごとだ。

 Fedora CoreやTurbolinuxなど一部ディストリビューションでは、rescurcdイメージという緊急起動用のCDイメージやインストールCDの起動オプションが用意されているものもある。しかしトラブル発生時には、これらですら正しく動作する保証はなく、うっかり操作すると、最悪の場合はデータを破壊する可能性もある。特にLinuxに慣れていないWindows管理者が操作をすると、間違ってデータを消してしまうかもしれない。

 できることなら、Windowsを起動し、使い慣れたWindows環境側からLinuxで使用していたファイルを救出する方法を試したいと考えるだろう。しかしLinuxのext2/3ファイル・システムは、Windowsでは読み書きできない。これを可能にする方法の1つは、インターネットで無償公開されているファイル・システム・ドライバ「Ext2IFS」を追加インストールすることだ。

 このソフトウェアは、IFS(Installable File System)Kit[英語]を使って作成されており、カーネル・モードで動作する「ext2fs.sys」というドライバがコアとなっている。このソフトウェアをWindowsにインストールすると、ext2/3ファイル・システムのパーティションをWindowsのドライブとして扱えるようになる。ext2/3ボリューム上のファイルに対する読み書きだけでなく、Windowsのページ・ファイルをext2/3ボリューム上に配置できるといった機能も持つが、文字コードやアクセス権の扱いがLinuxとWindowsでは異なるため、Windows上で変更を加えたファイルがLinuxから正しく扱える保証はない。ファイルを読み出し、別のHDDやフロッピーディスクにコピーするといった緊急時の用途に限定して利用するのが無難だ。

 手元で実験したところ、Fedora Core 4、Turbolinux 10 Desktop、Debian Linux 3.0 r2で作成したext2/3ボリュームでの読み出しが可能であることを確認した。


操作方法

 まず、Linuxマシンから救出したいファイルを含むディスクを取り外し、Windowsマシンへ取り付ける。その際に、HDDのマスタ/スレーブ/ケーブル・セレクトを指定するジャンパ・スイッチの設定を確認し、Windowsマシン側のIDE設定と衝突しないようにする。IDEの同一チャネル内でマスタ/スレーブ設定が重複した場合、最悪HDDを壊してしまうことがあるからだ。

 正しくHDDを接続したら、通常の手順でWindowsを起動し、HDDが正しく接続されて論理ディスク・マネージャから認識できるかを確認しておこう。

論理ディスク・マネージャからHDDの接続を確認する
[管理ツール]−[コンピュータの管理]を起動する。[ディスクの管理]でLinuxマシンのHDDを認識できているか確認する。
  ここをクリックする。
  接続したLinuxマシンのHDD。先頭にあるアクティブ・パーティションが、ファイル・システム不明、ドライブ文字の未割り当て、正常動作、というステータスであることが分かる。

 Windows上でext2/3ボリュームにアクセスするための「Ext2IFS」を下記サイトから入手する。

 インストーラを起動しインストールの最後の段階で、接続されているHDD中のext2/3ボリュームにドライブ文字を割り当てる(いったんインストールしたら、次回からはコントロール・パネルに追加される「IFS Drives」アイテムからこの設定ができるようになる)。

ext2/3ボリュームへのドライブ文字の割り当て
Ext2IFSのインストーラは、インストールの最後で、接続されているドライブを走査する。ここで、ext2/3ファイル・システムのパーティションにドライブ文字を割り当てる。
  このプルダウン・リストからドライブ文字を割り当てる。すぐにドライブ文字を割り当てたくない場合は、選択肢の先頭にある「(none)」を選ぶ。
  ここをクリックして先へ進む。

ext2/3ボリュームをマウントできたか確認する

 インストールが完了すると、特に再起動することもなくカーネル・ドライバが動作する。そこで、先ほど確認に使用した論理ディスク・マネージャでパーティション情報を確認してみよう。

ext2/3ボリュームのマウントを確認する
先ほどHDDを接続した時と同様に、[管理ツール]−[コンピュータの管理]を起動する。[ディスクの管理]でファイル・システムが不明だったパーティションがWindowsで認識できているか確認する。
  ここが先ほどマウントできていなかったパーティション。設定したドライブ文字は表示されていないが、「/boot」という名前でWindowsから認識できていることが分かる。

 また、エクスプローラからドライブのプロパティを開くことで、正しくマウントできているかをチェックできる。

エクスプローラからマウントを確認する
エクスプローラでマウントされているボリュームを右クリックし、[プロパティ]を選択すると、Ext2ボリュームとしてWindowsにマウントされていることを確認できる。
  ドライブLにext2/3ボリュームを設定してある。ここを右クリックして[プロパティ]を選択する。
  ここを見ると、Ext2ファイル・システムとして正常にマウントできていることが確認できる。

 これでext2/3ボリュームはWindowsのドライブとしてアクセス可能になっているので、必要なファイルの読み出しなどを行えばよい。

ドライブ文字の変更方法

 Ext2IFSをインストールすると、コントロール・パネルに「IFS Drives」というアイコンが追加される。これを起動して設定すれば、追加で別のHDDを接続してext2/3ボリュームを認識させたい場合などは、ドライバを再インストールすることなくドライブ文字を割り当てできる。End of Article

ドライブ文字の割り当てを変更する
[コントロール パネル]−[IFS Drives]を起動すると、インストーラの最後で表示されたのと同じようなドライブ文字割り当てツールが起動する。
  ここのプルダウン・リストからドライブ文字を割り当てる。
 
  関連リンク
  WindowsでLinuxパーティションを読み書きするには(Linuxフォーラム)
     
「Windows TIPS」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間