ファイル名を変更または移動すると、inodeは変更されますか?

ファイル名を変更または移動すると、inodeは変更されますか?

PHPでは、fileinode()この関数はファイルのinodeを返します。これを使用して、ファイル名が変更されたのか、移動されたのか、変更されたのかを確認できるのかどうか疑問に思います。

私はいくつかのテストをしましたが、名前を変更した後もインデックスノードは同じままです。この行動は一貫していますか?すべてのLinuxディストリビューションのすべての種類のファイルで動作しますか?

ベストアンサー1

ファイルシステムの境界を超えないファイル名の変更はメタデータの変更にすぎないため、inode番号を維持する必要があります。通常、ファイルを開いて内容を変更しても、inode番号を変更しないでください。これは単一のファイルシステムでのみ意味があります(ただし、アクセス時間などが変わります)。一部のツール(テキストエディタなど)は、適切な場所に作成するのではなく、まったく新しいファイルを作成する傾向があります。それ新しいインデックスノードが使用されます。

ファイルが変更されたかどうかを確認することが目標である場合は、アクセス時間とサイズを確認する方がより安定している可能性があります。

おすすめ記事