首页   快速返回

linux文件中的inode     所属分类 linux
硬盘最小存储单位 扇区 Sector ,每个扇区 512字节 

操作系统读取硬盘, 一次性连续读取多个扇区  块 block  文件存取的最小单位
块大小 常见 4K

文件 元数据 创建者 创建日期 大小等
inode 存储文件元数据

inode具体内容
字节数
拥有者的User ID
Group ID
读、写、执行权限
时间戳  ctime inode 最近修改时间,mtime 文件内容修改时间,atime 文件上一次访问时间。
链接数 指向这个inode的文件名数
文件数据block位置
没有文件名!!!


查看文件inode信息

stat hello.txt

inode 占用硬盘空间,硬盘格式化时,操作系统自动将硬盘分成两个区域。
数据区,存放文件数据
inode区(inode table),存放inode信息。

每个inode节点的大小,一般是128字节或256字节。
inode节点的总数,格式化时就给定,一般是每1KB或每2KB就设置一个inode。
假设 1G硬盘,每个inode节点大小128字节,每1KB设置一个inode,
inode table大小 128MB,占整块硬盘的12.8%


查看每个硬盘分区的inode总数和已经使用的数量
df -i

有可能发生inode已经用光,但是硬盘还未存满的情况。这时无法在硬盘上创建新文件。

Unix/Linux系统内部不使用文件名,而使用inode号码来识别文件。

系统读取文件三个步骤
找到文件名对应的inode号码
通过inode号码,获取inode信息
根据inode信息,找到文件数据所在的block,读出数据


ls -i   
第一列显示 inode ID 

目录(directory)也是一种文件。打开目录,实际上就是打开目录文件。

目录文件的结构非常简单,就是一系列目录项(dirent)的列表。
每个目录项,由两部分组成:文件名 和 inode号码 

ls -ali



硬链接 hard link
多个文件名指向同一个inode
软链接 soft link / symbolic link

文件A指向文件B的文件名,而不是文件B的inode  

 硬链接 与 软链接 的区别 


inode的特殊作用

1. 文件名包含特殊字符,无法正常删除。直接删除inode节点,就能起到删除文件的作用。
2. 移动文件或重命名文件,只是改变文件名,不影响inode号码。
3. 打开一个文件以后,系统就以inode号码来识别这个文件,不再考虑文件名。 可实现热更新

上一篇     下一篇
linux系统常用监控指标

Linux文件操作相关知识点

linux硬链接和软链接的区别

log4j日志格式配置

Class.forName()和ClassLoader.loadClass()的区别

getResource和getSystemResource的区别