23.6. パーティションおよびファイルシステムツール
このセクションでは、さまざまなパーティションおよびファイルシステム管理ツールがデバイスの I/O パラメーターと対話する方法を説明します。
util-linux-ng の libblkid および fdisk
util-linux-ng
パッケージで提供される libblkid
ライブラリーには、デバイスの I/O パラメーターにアクセスするためのプログラムによる API が含まれます。libblkid
は、特に Direct I/O を使用するアプリケーションを使用して、I/O リクエストを適切にサイズできるようにします。util-linux-ng
の fdisk ユーティリティーは、libblkid
を使用して、すべてのパーティションの配置を最適なデバイスの I/O パラメーターを決定します。fdisk ユーティリティーは、すべてのパーティションを 1MB 境界に合わせます。
parted および libparted
parted の
libparted
ライブラリーは、libblkid
の I/O パラメーター API も使用します。Red Hat Enterprise Linux 6 インストーラー(Anaconda)は libparted
を使用します。これは、インストーラーまたは parted によって作成されたすべてのパーティションが適切に調整されることを意味します。I/O パラメーターを提供していないデバイスで作成されたすべてのパーティションに対して、デフォルトの調整は 1MB になります。
ヒューリスティック parted が使用する機能は以下のとおりです。
- 常に、最初のプライマリーパーティションの開始のオフセットとして、報告された alignment_offset を使用します。
- optimal_io_size が定義されている場合(例: 0ではない)、すべてのパーティションを optimal_io_size 境界に合わせます。
- optimal_io_size が未定義である場合(例: 0)、recon se _offset は 0 で、min_io_size は 2 の累乗の場合は、1MB のデフォルトの調整を使用します。これは、I/O ヒントを提供するように見えない「レガシー」デバイスの catch-all です。そのため、デフォルトではすべてのパーティションが 1MB の境界に調整されます。注記Red Hat Enterprise Linux 6 は、I/O ヒントを提供していないデバイスと、reconse _offset=0 と optimal_io_size=0 を持つデバイスを区別することができません。このようなデバイスは、SAS 4K デバイスに 1 つある可能性があります。したがって、ディスクの起動時に最も悪い 1 MB の領域が失われます。
ファイルシステムツール
異なる mkfs.filesystem ユーティリティーが強化され、デバイスの I/O パラメーターが使用されるようになりました。このユーティリティーを使用すると、ファイルシステムをフォーマットして、基になるストレージデバイスの logical_block_size よりも小さいブロックサイズを使用することができません。
mkfs.gfs2 を除き、他のすべての mkfs.ファイルシステム ユーティリティーは、I/O ヒントを使用して、ディスク上のデータ構造と、下層のストレージデバイスの minimum_io_size と optimal_io_size に関連するデータ領域のレイアウトも使用します。これにより、ファイルシステムをさまざまな RAID(ストライプ)レイアウトに対して最適にフォーマットできます。