web-dev-qa-db-ja.com

LinuxおよびWindowsで使用するためにUSBスティック(フラッシュドライブ)をFAT32でフォーマットする方法

Windows 7とネットワークに接続されていないUbuntuサーバー(Precise)の間でデータを移動するためのメモリスティックをフォーマットしたい。

両方のマシンでドライブの読み取りと書き込みを行うことはできますが、試した2つの方法のどちらが正しいかわかりません。

Windowsでドライブをフォーマットすると(ディスク管理ツールを使用)、fdiskから非常に奇妙なパーティション一覧が表示されますが、LinuxとWindowsでの読み書きに関しては問題ないようです。

image showing the output of fdisk for a windows formatted drive

およびcfdiskレポート

FATAL ERROR: Bad primary partition 1: Partition begins after end-of-disk.

some advocate として、cfdiskを使用して、タイプbのフルディスクプライマリパーティションを作成します(またはfdiskを使用して、ブロック2000から始まり、何か)そしてそれから発行する

Sudo mkfs.vfat -n some_label /dev/sdf1

その場合、Windowsはファイルシステムを認識しません(何年も考えた後)。

LinuxとWindowsは、同じパーティションを作成すると2GBのダイビングを楽しく読み書きしますが、次のように発行します。

Sudo mkfs.vfat -I -n some_label /dev/sdf

しかし、これにより、そのフルディスクパーティションがcfdiskおよびfdiskの空き領域として表示され、Windowsは16GBドライブを好みません。

私もpartedを使用してみましたが、WindowsはLinuxで作成したパーティションに満足していません。

ドライブが動作しているように見えても、データが忠実に転送されていないことに気付くかもしれません。

私は、さまざまな年齢、フレーバー、サイズのSanDisk Cruzerドライブを使用しています。

Windowsでフォーマットし、cfdiskとfdiskが持つ問題を無視する正しい方法はありますか、それとも、ドライブに誰もが満足する別の正しい方法はありますか?

11
jah

Windowsは、USBフラッシュドライブなどの外部メディアをunpartitionedの方法で使用することがよくあります。つまり、パーティションテーブルがなく、ファイルシステムが書き込まれます。 ディスク全体ディスクがこのように設定されている場合は、次のように/dev/sdfを直接使用する必要があります。

mount /dev/sdf /mnt

mkfsfsck、その他のツールを同様に使用できます。 blkid /dev/sdfのように、blkidを使用してこれを確認できます。 /dev/sdfがFAT(またはその他の)ファイルシステムであることがわかった場合、私の仮説は正しいです。

保存するデータがディスクになく、その上に新しいファイルシステムを作成する場合は、ディスク全体で行うか、fdiskparted、またはその他のツールを使用してfresh(空)パーティションテーブル。 fdiskでは、メインメニューのoコマンドでこれを行います。これにより、既存の「パーティション」(おそらくfdiskがFATファイルシステムの最初のセクターを解釈しようとする絶望的な試み)を消去し、新しい空のパーティションテーブルを作成します。次に、nを使用して新しいパーティションを作成し、wで変更を保存し、mkfsまたはmkdosfsの外でfdiskを使用して、/dev/sdf1に新しいファイルシステムを作成します。

Windowsは、パーティションテーブルを含むUSBフラッシュドライブの最初のパーティションのみを認識することに注意してください。したがって、複数のパーティションが必要な場合は、最初のパーティションがWindowsからアクセスできるパーティションであることを確認してください。

9
Rod Smith