web-dev-qa-db-ja.com

WindowsはFAT32パーティションを表示しません

次のパーティションを使用して、独自のRasbianイメージを作成しました。

$ Sudo fdisk -l 2018-11-13-raspbian-stretch-lite.img
Disk 2018-11-13-raspbian-stretch-lite.img: 2,5 GiB, 2705326080 bytes, 5283840 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x7ee80803

Device                                Boot   Start     End Sectors  Size Id Type
2018-11-13-raspbian-stretch-lite.img1         8192   98045   89854 43,9M  c W95 FAT32 (LBA)
2018-11-13-raspbian-stretch-lite.img2        98304 4292607 4194304    2G 83 Linux
2018-11-13-raspbian-stretch-lite.img3      4292608 4395007  102400   50M 83 Linux
2018-11-13-raspbian-stretch-lite.img4      4395008 5283839  888832  434M  c W95 FAT32 (LBA)

Windows PCにSDカードを挿入すると、FAT32パーティション(最初と最後のパーティション)にアクセスできると思います。代わりに、最初のものだけが表示されます。

ここで何が問題になっていますか?両者の違いはわかりません。

2
Mark

これは、バージョン1703のWindows 10を除いて、Windowsシステムでは「正常」です。

この記事 問題が修正された直後に投稿されました。私の知る限り、これはWindows10でのみ修正されました。いくつかの引用:

Microsoftは、Windows 10 Creators Updateに密かに新機能を追加しました。これは、リムーバブルメディア(USBスティックなど)上の複数のパーティションをサポートする最初のWindowsビルドです。 […]

ハードディスクやリムーバブルメディア(USBスティック)などのストレージメディアは、次の2つのカテゴリに分類されます。

  • 固定メディアビットが設定されたハードディスクとメディア
  • リムーバブルメディアビット(RMB)が設定されたリムーバブルメディア(USBスティックなど)

固定またはリムーバブルメディアビットは、メディアコントローラーのファームウェアによって設定されます。

[…]

リムーバブルメディアビット(RMB)が設定されたメディアは、Windowsではリムーバブルデバイスとして扱われます。 Windowsには、リムーバブルメディアに関する制限があります。たとえば、Windowsファイルシステム(Windowsエクスプローラー)は、そのようなデバイスに最初のパーティションのみをマウントできます。

サードパーティのツールやLinux、さらにはWindowsのコマンドラインツールdiskpartを使用して、USBスティックに複数のパーティションを作成することもできます。ただし、(Linuxとは異なり)Windowsは、たとえばExplorerの最初のパーティションのみを表示します。他のすべてのパーティションは無視されます。 Linuxで作成されたマルチパーティションUSBスティックをWindowsでフォーマットする場合、これにより競合が発生します。 Windowsは最初のパーティションのみをフォーマットします。

私の最善の知識によると、リムーバブルメディアをこのように扱う技術的な理由はありません(理由もありませんでした)。特にsomeメディアの場合 関連するビットを反転することが可能です そしてWindowsは魔法のようにそれらを正しく扱い始めます。全体の問題は、何年も前にマイクロソフトが行ったあいまいな恣意的な決定の結果にすぎないようです。

したがって、私の推測では、古いWindows 10または古いWindowsのいずれかを使用していて、経験するのは「正常」です。

明らかなアドバイスは、最新のWindows10またはLinuxを使用することです。何らかの理由で現在のWindowsに固執し、それでも「欠落している」パーティションにアクセスしたい場合は、次のオプションがあります。

  • デュアルブート:Windows + Linux。
  • SDカードを固定ドライブとして紹介するSDカードリーダー。私可能だと思いますが、そのようなリーダーを簡単に見つけることができるとは思いません。
  • FAT32ファイルシステムを読み取り、それにアクセスできるようにするアプリケーション。技術的には可能ですが、多分そのようなアプリケーションは存在しません。「何のために?WindowsはFAT32自体をサポートしていないのですか?」
  • 現在のWindowsをホストとして使用するVirtualLinux(VirtualBoxなど)。次に、USBカードリーダーを接続し、「USBパススルー」オプションを使用します。このようにして、Linuxはリーダーが直接接続されているかのように検出し、任意のパーティションをマウントできます。 Windowsの奇妙なマウントルールはこれに影響しません。 WindowsとSDカード間の転送はLinuxを経由する必要があるため、このアプローチは不便です。ただし、これが最善の選択肢かもしれません。
1