web-dev-qa-db-ja.com

md / LVM / dm-cryptで4kドライブを使用する

4kドライブを8セクターの倍数で調整する必要があることはわかっていますが、md-RAID/LVM/dm-cryptはどうですか?ドライブが4kであることをこれらのレイヤーに伝えるにはどうすればよいですか? 4kセクターのサイズを尊重しない場合、パーティションの配置は役に立ちません。 LVM/md/crypto-layersを調整するにはどうすればよいですか?ありがとう。

8
Vincent

注意してください! 2 TiBを超えるディスクに必要なgptラベルは、39(512バイト)セクターの長さです。したがって、ラベルの直後に最初のパーティションを作成すると、4KiBの境界にはなりません。

GNU partedはnotデフォルトでこれを行います。おそらく、多くの「Advanced Format」ドライブが、論理セクターだけでなく、physicalセクターがまだ512Bであると誤って主張しているためです。

したがって、GNU partedを使用している場合は、各パーティションが8で割り切れるLBAで始まることを確認してください(LBAは512Bのままなので、8 * 512B = 4KiB)。LBAは0から始まるので、開始します。 「40s」の最初のパーティション。

また、GRUBを使用する場合は、第2段階のブートストラップ用のスペースを残してください。 MS-DOSラベルは63セクターで、GRUBは、第2段階のブートストラップを隠しておくのに十分な未使用スペースがありますが、gptラベルには未使用スペースがありません。したがって、小さなパーティション1を作成し、その「 bios_grub "フラグを設定し、その後に「実際の」パーティションを作成します。すべてが8の倍数のLBAで始まることを確認してください。

4
Phil Karn

https://ata.wiki.kernel.org/index.php/ATA_4_KiB_sector_issues を参照してください

短いバージョンでは、最近のディストリビューションがある場合、自動的に正しいことを行う必要があります。古いディストリビューションの場合、少し複雑です。

LVMの場合は、pvcreate--dataalignmentオプションを調査する必要があります。または、さらに古いディストリビューションの場合は-–metadatasizeを調査する必要があります。

MD、AFAIKは、パーティションの最後に独自のメタデータを配置するため、常に基になるパーティションに揃える必要があります。

Mkfsの場合も、ファイルシステムを基になるパーティションに揃える必要があります。一部のファイルシステムでは、RAIDデバイスで実行している場合に備えて、ストライプ幅とストライプサイズのオプションを追加して、ファイルシステムがRAIDストライプ境界にあるものを整列させようとすることができます。

3
janneb

問題は主に、基礎となるディスクの構造から始まるパーティションの配置にあります。下位互換性のあるディスクをbios/osに「嘘」を保つために、512Bセクターがありますが、実際には、最新のハードドライブの場合は4096Bセクター、最も一般的なストリッピングレイド/ ssdsの場合は32〜64kBセクターがあります。

パーティションの位置がずれていると、パフォーマンスが低下します。ディスク上部の通常のパーティションでのみいくつかのベンチマークを実行しました-lvmなしで、bonnie ++で測定した結果は適切に調整されていませんでした:

Sequential Output Block: 29MB/s
Sequential Output Rewrite: 20MB/s

アライメントあり:

Sequential Output Block: 70MB/s
Sequential Output Rewrite: 37MB/s

this lvmアライメントを確認してください。

1
pQd

ほとんどの新しいディストリビューションは、4Kのことを知るために更新されています。 md-RAID/LVM/XFSセットアップを2TBドライブの束に問題なく構築しました。特別なことは何もしませんでした。

0
Porch