stat
デフォルトでは、inode情報を表示するコマンドを使用しています。小さなファイル(146文字)に関する情報を表示していますが、8つのチャンクが表示されます。理由を知りたいです。ページサイズは4KBでなければならないので、この数字は1にしたいと思います。しかし、私が使用するファイルシステムはext4です。より詳細な情報を提供するには:
Moretmp.sh
#DATE=$(date +"%Y%m%d_%H%M%S")
#cp /var/log/filter.log /var/log/logHistory/filter_{$DATE}.log
dd=$(date --date='-1 day' +"%Y%m%d")
rm filter_$dd*
統計tmp.sh
File: ‘tmp.sh’
Size: 146 Blocks: 8 IO Block: 4096 regular file
Device: 801h/2049d Inode: 1835522 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1000/timestring) Gid: ( 1000/timestring)
Access: 2016-05-05 17:34:08.251864800 -0700
Modify: 2015-01-22 20:40:18.971521274 -0800
Change: 2015-01-22 20:40:18.975521274 -0800
Birth: -
答え1
報告された「チャンク」はstat()
512バイト単位です。 ext4が使用する一般的なブロックサイズは4kb、つまり8つの「チャンク」です。つまり、ext4のファイルが使用するスペースは8 "ブロック"の整数倍でなければならないため、4096バイト以下のファイルが使用する最小サイズは8,512バイトブロックです。
答え2
ext4ファイルシステム推測するファイルが作成されたときのファイルサイズ。以下に引用してください。協会:
ファイルが最初に作成されると、ブロックアロケータはこのスペースがすばやく書き込まれると仮定して、ファイルに対して8KiBのディスク容量を推論的に割り当てます。未使用の推測的割り当てはもちろん、ファイルが閉じられたときに解放されますが、推測が正しい場合(通常は小さなファイルへの完全書き込みの場合)、ファイルデータは単一のマルチブロック範囲に書き込まれます。