web-dev-qa-db-ja.com

fdiskセクターサイズとアライメントの問題

コマンドを実行しました:

# fdisk /dev/sda1

出力は次のとおりです。

The device presents a logical sector size that is smaller than
the physical sector size. Aligning to a physical sector (or optimal
I/O) size boundary is recommended, or performance may be impacted.

Command (m for help): p

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0xe0c5913d

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63    40965749    20482843+  1c  Hidden W95 FAT32 (LBA)
Partition 1 does not start on physical sector boundary.
/dev/sda2   *    40966144   334567423   146800640    7  HPFS/NTFS/exFAT
/dev/sda3       334567424   753997823   209715200   83  Linux
/dev/sda4       753999870  1953525167   599762649    5  Extended
Partition 4 does not start on physical sector boundary.
/dev/sda5       753999872  1949376511   597688320   83  Linux
/dev/sda6      1949378560  1953525167     2073304   82  Linux swap / Solaris

次の項目が原因で問題が発生しています。

  • デバイスは、物理セクターサイズよりも小さい論理セクターサイズを示します。物理セクター(または最適なI/O)サイズの境界に揃えることをお勧めします。そうしないと、パフォーマンスに影響を与える可能性があります。

  • パーティション1は、物理セクター境界で開始しません。

  • パーティション4は、物理セクター境界で開始しません。

ファイルやパーティションを失うことなく、これらのアイテムの1つ以上を解決するにはどうすればよいですか?

すべてそのままにしておく問題は何ですか?

10
Sir Jo Black

物理セクタサイズよりも小さい論理セクタサイズは、ほとんどの最新のディスクでは正常です。これは、単に Advanced Format disks が最も頻繁に実装される方法です。一部の外部ディスクは物理セクターと論理セクターの両方で同じ(4096バイト)セクターサイズを使用し、一部のハイエンド内部ディスクは現在同じように聞こえると聞きましたが、最近のほとんどのディスクは512バイトのAdvanced Formatモデルです論理セクターと4096バイトの物理セクター。これについてできることは何もありません(または試みる必要があります)。

ただし、Advanced Formatディスクのパーティションを適切に配置することは重要です。 Advanced Formatディスクでいくつかのテストを実行して、パーティションの位置がずれている場合の結果を確認し、結果を公開しました ここで 要するに、問題の範囲はファイルシステムごと、ディスクごとに大きく異なりますもう1つですが、ほとんどの場合(場合によってはhuge)パーティションの不整列に関連するパフォーマンスの低下が生じます。

ただし、/dev/sda4はファイルシステムを直接保持しません。これは拡張パーティションです。つまり、単に他のパーティションのコンテナになります。 /dev/sda4に直接関連付けられているデータは、2つの(論理)セクターであり、おそらく互いに隣接していません。したがって、それらはca n't適切に調整されます。実際のパフォーマンスのペナルティは、/dev/sda4に含まれるパーティションのアライメントに起因します。あなたの場合、/dev/sda4/dev/sda5/dev/sda6を保持し、どちらも適切に配置されています。したがって、/dev/sda5を心配する必要はありません。表示される警告は、「問題」が存在しない場合にそれを報告することに過度に熱心なコードです。

一方、/dev/sda1は適切に位置合わせされていません。8で割り切れないセクター63で始まります。それについて何かを行うべきかどうかは、そのパーティションの使用量、使用方法によって異なります。 (ファイルサイズ、読み取りと書き込みなど)、最適なパフォーマンスを得ることがどれだけ重要か、適切なバックアップがあるかどうかなど。先ほど参照した記事を読んでから、問題を解決する。 (スペースに関する理由でその記事でFATの結果を報告しませんでしたが、FATのパフォーマンスはかなり悪くなりました。IIRCはReiserFSほど悪くはありませんが、少なくとも他のほとんどのLinuxネイティブファイルシステムと同じくらいひどいです。)

/dev/sda1を修正する場合は、まずバックアップを作成する必要があります。それを行った後、それを修正する1つの方法は、それを削除し、代わりに新しいパーティションを作成し、そのファイルを復元することです。別の方法(バックアップ後)は、GPartedでパーティションのサイズを変更することです。開始点を少し変更します。 GPartedの最新バージョンは2048の倍数のセクターに丸める必要がありますが、問題ありません。パーティションの開始点の移動は常にリスクが高く、終了点の移動よりも時間がかかります。パーティションのサイズはわずか19GiBであるため、開始点を移動させても、操作にとてつもない時間がかかることはありませんが、瞬時にはなりません。

補足と背景として、かなり古いツールのみが、最新のAdvanced Formatディスク上のパーティションの位置を調整しません。おそらく、そのようなツール(古いバージョンのLinuxのfdiskまたはDOS FDISK)を使用して/dev/sda1を作成し、その後より新しいツール(より新しいfdiskparted、またはGPartedなど)を使用して、残りのパーティションを作成します。

11
Rod Smith