不同文件系统的inode内容不太一样,但通常都含有以下信息:
struct inode
{
int i_mode; 文件类型(目录、块设备、字符设备、普通文件、权限等)
char i_nlink; 文件硬链接数
char i_uid; 属主ID(UID)
char i_gid; 属主组ID(GID)
char i_size0; 文件大小
char *i_size1; 文件所使用的磁盘块的实际数目
int i_addr[8]; 块地址数组
int i_atime[2]; 最近一次访问时间
int i_mtime[2]; 最近一次修改时间
int i_ctime[2]; 最近inode更改时间
};
在linux文件系统中,是以块为单位存储信息的,为了找到某一个文件在存储空间中存放的位置,用i节点对一个文件进行索引。I节点包含了描述一个文件所必须的全部信息。所以i节点是文件系统管理的一个数据结构。