fdisk出力の「ブロック」列

fdisk出力の「ブロック」列

マイコンピュータには、fdisk -lu /dev/sda次の出力が表示されます。

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048    73947135    36972544   83  Linux
/dev/sda2        73949182    78139391     2095105    5  Extended
/dev/sda5        73949184    78139391     2095104   82  Linux swap / Solaris

この「ブロック」ユニットは何ですか? 「fdiskブロック」は1KiBですか?このデバイスはどこから来たのですか?

ベストアンサー1

最初のバージョンのUnixでは、ハードウェア、ファイルシステム、Cコード、ユーザーツールまで、ブロックサイズは512バイトでした。

今日、さまざまな種類のハードウェアとさまざまなファイルシステムがあるため(一部はブロックサイズの概念はありません)、「ブロックサイズ」は各ツールで選択された任意の定義です。ほとんどのレガシーUnixシステムは、以前のバージョンとの互換性のためにデフォルトで512バイトのブロックサイズを予約します。これは、POSIXが複数のコマンド(、、、、、、... dd)に必要なものです。一部のGNU / Linuxユーティリティは、モードで呼び出されない限り、デフォルトでは1kB単位(、、、、... )を表示します。1kBに移動する唯一の動機は人間に優しいからだと思います。dudflsfind -sizedudflsPOSIXLY_CORRECT

Linuxfdiskユーティリティは、小数点の2桁に1kBチャンクを使用しますkB。 Linux環境では、fdisk「チャンク」は常に1kBを意味します。基本単位変更存在するバージョン 2.25、単位は現在512バイトのセクタです。エキスパートモードでは、単位は常に512バイトセクタです。従来のPCディスクでは、512バイトは512バイトセクタに書き込まれ、パーティションの境界は512バイトにソートされるため、512バイトはより自然な下位レベルの単位です。したがって、1kBを単位として使用すると、1/2の分数になります。最新の大規模ディスクにはより大きなセクタがありますが(「セクタ」はディスクの物理的または論理的な特性に関係なく512バイトを意味するために広く使用されています)、GPTパーティションは通常1 MBにソートされています。

おすすめ記事