はじめに
Windowsからext4形式のパーティーションがマウントできるExt2Fsdですが、いくつか気をつけないといけないことがあります。
環境
私が使った環境です。
Windows 10 Home
Ubuntu 18.04 ( > 16.10)
手順
SourceForge のサイトから Ext2Fsd(現時点でバージョン0.69) をダウンロードして、Windowsにインストールします。
サイト:https://sourceforge.net/projects/ext2fsd/files/Ext2fsd/
インストールが終わり、再起動をします。
が、まだこの時点でExt2Fsdがext4を正しく認識してくれず、マウントできない可能性があります。
エクスプローラーから開いても、「フォーマットしますか?」と聞かれてしまいます。
マウントできる場合は、下のようにext4とただしく認識されています。
マウントできる場合は、作業は以上で終了です。
対処
正常にマウントできないのは、Ext2Fsdが、ext4のmetadata_csum,64bitオプションに対応していないためです。
ちなみにそれぞれのオプションの意味は、
- metadata_csum : チェックサムを保存してディスクの信頼性を高める (詳しくはこちら)
- 64bit : サイズを16TB以上にできるようにする
です。この2つのオプションを無効にすれば、Ext2Fsdでマウントできるようになります。(バージョンが16.10以上のUbuntuではどちらもデフォルトで有効です。)
まずは、マウントしたいデバイス名を調べます。
# fdisk -l
Linux側でマウントされている場合は、アンマウントしてください。ルートにマウントされているときは、USBブートやCDブートなどを使いましょう。
まずは、パーティーションのチェックを行います。
# e2fsck /dev/sdXX
次のコマンドで、64bitオプションを無効にします。
# resize2fs -s /dev/sdXX
metadata_csumオプションも無効にします。
# tune2fs -O ^metadata_csum /dev/sdXX
これで、Windowsに戻ってExt2Fsdを立ち上げると正常にext4が認識されて、マウントできるようになっていると思います。
注意点
こういう人はあまりいないとは思いますが、Ext2Fsdのバージョン 0.68以下 を使ってはいけません。対応していないオプションにもかかわらず、パーティーションを読み込んでしまうため、ファイルシステムが壊れます。
(実際にやりました(笑)。幸い、e2fsckを走らせたらなおりました。)
関連リンク
http://www.ext2fsd.com/?p=236
http://ktkr3d.github.io/2017/04/18/Be-Careful-using-Ext2Fsd/