Linux初心者にエスパーレスするスレat LINUXLinux初心者にエスパーレスするスレ - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト900:login:Penguin 08/09/08 03:43:00 gjIrrKD5 先輩方。 以下、教えてください。 /tmp/test配下には、3つのファイルがあり、3つともファイルサイズは100バイトです。 duコマンドで、/tmp/testを確認したところ、16と表示されます。 これはどういうことでしょうか。 私自身、今後、ディレクトリ配下の容量を随時確認したく、 何かよい方法が他にあれば、ご教授願います。 901:login:Penguin 08/09/08 14:11:08 g11+2P3n ファイルの終りを越えた先に書き込み(穴が空いた状態)が可能なので、 実際に消費しているファイルシステムのブロック数(du で表示)と、 ファイルの属性として記録されたサイズ(ls で表示)に差が出ることがある。 du(1)の --apparent-size オプションのところが詳しい。あとは lseek(2)。 簡単な例 # dd if=/dev/zero of=100M bs=100M count=1 seek=0 # dd if=/dev/zero of=100M.hole bs=1 count=1 seek=100M # ls -l -rw-r--r-- 1 root root 104857600 Sep 8 23:03 100M -rw-r--r-- 1 root root 104857601 Sep 8 23:04 100M.hole # du -sh * 101M 100M 12K 100M.hole # stat 100M* File: `100M' Size: 104857600 Blocks: 205008 IO Block: 4096 regular file (略) File: `100M.hole' Size: 104857601 Blocks: 24 IO Block: 4096 regular file 結局 du でいいかと。 プロセスがオープンしてるファイルまで見る必要があるなら 専用パーティションきって df しないとだめじゃないかな。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch