ディスクで使用可能なinodeの数はどのように決定されますか?

ディスクで使用可能なinodeの数はどのように決定されますか?

ハードをフォーマットするときに決定される数字に基づいていますか?

たとえば、

$ df -Ti /
Filesystem     Type Inodes IUsed  IFree IUse% Mounted on
/dev/dm-0      ext4 983040 95683 887357   10% /

この983040はどこから来たのですか?増減できますか?どの限度内で?

答え1

ext4ファイルシステムについて話している場合、これはファイルシステムのサイズに基づいています。デフォルトは16,384バイトあたり1つのinodeです。より多くの情報が必要な場合は訪問してくださいArchwiki - ext4 - inodeあたりのバイト比

この割合に注意してくださいできるファイルシステムの作成時に修正されました。参考mkfs.ext4のマニュアルページ

質問の後続の編集を解決するために、質問にいくつかの質問を追加しました。

この983040はどこから来たのですか?

これはファイルシステムサイズに由来します。デフォルトでは、ファイルシステムには16,384バイトあたり1つのinodeがあります。

増減できますか?

はい、でも簡単ではありません。ファイルシステムをバックアップし、マニュアルページの「-i bytes-per-inode」パラメータを使用して再生成します。ファイルシステムの内容を復元します。

どの限度内で?

マニュアルページに示すように、inodeあたりのバイト数はブロックサイズより小さく設定しないでください。可能使用できるよりも多くのinodeがあります。 Stéphane Chazelasが指摘したように、空のファイル、デバイス、fifo、ソケット、ショートシンボリックリンクはinodeを消費しますが、ブロックは消費しません。

あなた本物ルートファイルシステムに887,357を超えるファイルを作成する必要がありますか?

答え2

これはディスク固有の測定ではなく、ファイルシステム固有の測定です。多くのファイルシステムはフォーマット時に決定されます。一部のファイルシステムでは、ファイルシステムの使用量、平均ファイルサイズ、およびその他の情報に基づいて動的です。

関連情報