i-nodeについて混乱しています。 inodeを減らすためにファイルを削除するように要求しましたが、サーバー上の他のcpanelから100個のログファイルを削除しましたが、inodeの数はまだ同じです。
答え1
このコマンドを使用して、特定のファイルシステムのinode分析を確認できますtune2fs
。
通常、スイッチと照会したいデバイス(通常はまたは)をtune2fs
使用して電話をかけます。この例ではRAIDデバイスがあります。-l
/dev/sda1
/dev/sdb1
/dev/md0
はい
$ tune2fs -l /dev/md0 | grep -i inode
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent 64bit flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Inode count: 22872064
Free inodes: 6270088
Inodes per group: 128
Inode blocks per group: 8
First inode: 11
Inode size: 256
Journal inode: 8
Journal backup: inode blocks
上記のコマンドは、inode の総数と使用可能な数を表示します。
お使いのデバイスが何であるかわからない場合は、このblkid
コマンドを使用してデバイスのリストを取得できます。
$ blkid
/dev/mapper/VolGroup00-LogVol01: TYPE="swap"
/dev/mapper/VolGroup00-LogVol02: UUID="3130f689-814a-436d-8c0a-feb271c06245" SEC_TYPE="ext2" TYPE="ext3"
/dev/mapper/VolGroup00-LogVol00: UUID="7a2a5b5b-8c20-4925-a359-c6574d9bc1fd" TYPE="ext3"
/dev/sda1: LABEL="/boot" UUID="ed298397-2e7e-4e18-80c3-4ecd00e4cab9" TYPE="ext3"
/dev/VolGroup00/LogVol00: UUID="7a2a5b5b-8c20-4925-a359-c6574d9bc1fd" TYPE="ext3"
/dev/VolGroup00/LogVol01: TYPE="swap"
/dev/sr0: LABEL="CentOS_5.6_Final" TYPE="iso9660"
答え2
一般的に言えば、あなたは正しいです。ファイルへのすべての参照を削除した場合(ファイルがハードリンクされている場合はおそらく> 0)、ファイルを削除するときにinodeを解放する必要があります。
ただし、プロセスがファイルを開いている場合(ログファイルに書き込む他のプロセスと同様)、そのプロセスがファイルを閉じるまでinodeは解放されません。ファイルが使用するディスク容量は、ファイルが閉じられるまで解放されないようなものです。
ファイルに対して lsof コマンドを使用して、ファイルを削除する前に、プロセスでファイルが開いていることを確認できます。これでファイルが削除されたため、lsofを使用してシステムで開いているすべてのファイルを表示し、削除されたファイルを検索できます。