Raspberry Piのハードドライブとして使用されていた4 GB SDカードを消去しようとすると、Mac OS Xディスクユーティリティ*に入り、ディスク全体を削除し、ディスクErase
全体を1つの大きなFAT-32パーティションに割り当てました。
出力fdisk /dev/disk2
:
Disk: /dev/disk2 geometry: 975/128/63 [7866368 sectors]
Signature: 0xAA55
Starting Ending
#: id cyl hd sec - cyl hd sec [ start - size]
------------------------------------------------------------------------
1: 0B 1023 254 63 - 1023 254 63 [ 8192 - 7858176] Win95 FAT-32
2: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
3: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
4: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
私の質問は、最初のパーティションがセクタ8192で始まるのはなぜですか?、ブートセクタのすぐ後ろではない?
*申し訳ありません。私のfdisk
能力はまさにグランドマスターレベルではありません。
答え1
これはSDカードの基本的な物理セクタに関連しています。簡単に言えば、最初の「ブロック」は、1つのvfatパーティションを持つMSハードドライブの構造を説明するファイル割り当てテーブルをホストするように最適化されています。
これは間違った仮定ですが、多くのデバイス、カメラ、携帯電話などは単一のパーティションでvfatリポジトリを使用します。このカードはこの市場のために作られました。他のブロックは、大規模な連続ファイル(画像、ビデオなど)を作成するために最適化されています。
SDカードはさまざまな種類の論理ブロックを使用しています。カードに何でも書き込むには、カードコントローラ(SD内部)が最初に消去ブロック全体を読み、消去してから、更新された内容で書き込む必要があります。
私は1Mブロックの古い4Gカードを持っていますが、ほとんどの最新カードには4Mブロックがあります。
これは8192個の512バイトセクタです。
したがって、カードにファイルを書き込むときは、追加のブロックが1つ消去されないようにパーティションを配置する必要があります。それ以外の場合は、小さなファイルを書き込むときに書き込みが遅いカードを使用します。
詳しくはlwn.netをご覧ください。
安価なフラッシュドライブでLinuxを最適化
Mac OS Xディスクユーティリティについてはわかりません。おそらく、安全なデフォルト値でも魔法のように動作するかもしれません。バラよりフラッシュテストベンチカードに関する詳細情報。