07-inode管理
1.01-格式化和分区2.02-RAID3.03-LV-逻辑卷4.04-磁盘挂载5.05-quota 磁盘配额6.06-swap交换分区
7.07-inode管理
8.01-用户管理9.02-linux文件权限10.03-sudo权限11.04-生产环境linux服务器权限控制实例12.FAQ-用户管理相关13.01-查看系统和磁盘14.02-查看CPU和内存15.03-文件查找(ls,locate,find,xargs)16.01-ps命令详解和常用参数17.02-top命令详解18.03-kill/netstat/jobs/lsof19.01-日志文件和rsyslog系统20.02-logrotate(日志轮询)21.03-cronolog管理日志22.04-journalctl 命令23.01-telnet远程连接服务器24.02-tigervnc连接centos远程桌面25.03-openssh升级26.04-ttyd通过浏览器远程连接服务器27.01-rmp命令和包管理28.02-yum常用命令和yum源29.03-自建yum仓库30.03-iftop命令详解31.04-nc命令32.02-iptables扩展模块33.01-iptables基础@
1. inode概念
Sector(扇区)
硬盘的最小存储单位叫做,每个扇区储存512字节。block(块)
操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。这种由多个扇区组成的"块",是文件存取的最小单位。"块"的大小,最常见的是4KB,即连续八个 sector组成一个 block。inode(索引节点)
文件数据都储存在"块"中,还必须找到一个地方储存文件的元信息.比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为"索引节点"。
2. 查看 inode信息
[root@b4-node-01 local]# stat /usr/local/ 文件:"/usr/local/" 大小:4096 块:8 IO 块:4096 目录 设备:fd00h/64768d Inode:524351 硬链接:12 权限:(0755/drwxr-xr-x) Uid:( 0/ root) Gid:( 0/ root) 最近访问:2020-04-30 10:27:06.357608187 +0800 最近更改:2017-10-19 14:20:25.763991440 +0800 最近改动:2017-10-19 14:20:25.763991440 +0800 创建时间:-
说明:
Inode:524351
指的是node号
硬链接
该目录下的硬链接,包括 "." 和".."
3. Inode 号
- 查看
[root@b4-node-01 local]# ls -i /usr/local 总用量 48 524351 drwxr-xr-x. 12 root 4096 10月 19 2017 . 524289 drwxr-xr-x. 14 root 4096 10月 16 2018 .. 524352 drwxr-xr-x. 2 root 4096 11月 5 2016 bin 524353 drwxr-xr-x. 2 root 4096 11月 5 2016 etc 524354 drwxr-xr-x. 2 root 4096 11月 5 2016 games 524355 drwxr-xr-x. 2 root 4096 11月 5 2016 include 524356 drwxr-xr-x. 2 root 4096 11月 5 2016 lib 524357 drwxr-xr-x. 2 root 4096 11月 5 2016 lib64 524358 drwxr-xr-x. 2 root 4096 11月 5 2016 libexec 524359 drwxr-xr-x. 2 root 4096 11月 5 2016 sbin 524360 drwxr-xr-x. 5 root 4096 10月 19 2017 share 524383 drwxr-xr-x. 2 root 4096 11月 5 2016 src
可见,local目录的inode是524351和刚才stat查到的一样
-
作用:
此处是Inode号码,操作系统用来识别不同文件 -
用Inode识别文件过程
1)系统找到这个文件名对应的inode号码
2)通过inode号码,获取inode信息
3)根据inode信息,找到文件数据所在的block,读出数据。
4. 查看inode数
[root@b4-node-01 home]# find */ ! -type l | cut -d / -f 1 | uniq -c 119739 docker 1 lost+found 1241 project
5. Inode占用硬盘空间
- 查看每个磁盘Inode所占空间
[root@b4-node-01 local]# df -i 文件系统 Inode 已用(I) 可用(I) 已用(I)% 挂载点 /dev/mapper/rootvg-root 1646592 138198 1508394 9% / devtmpfs 4091727 425 4091302 1% /dev tmpfs 4095737 1 4095736 1% /dev/shm tmpfs 4095737 590 4095147 1% /run tmpfs 4095737 16 4095721 1% /sys/fs/cgroup /dev/sdb1 32768000 136393 32631607 1% /home /dev/sda1 524288 330 523958 1% /boot
- Inode占空间原理
inode也会消耗硬盘空间,所以硬盘格式化的时候,操作系统自动将硬盘分成两个区域。一个是数据区,存放文件数据;另一个是inode区(inode table),存放inode所包含的信息。 - Inode空间的计算
每个inode节点的大小,一般是128字节或256字节。
inode节点的总数,在格式化时就给定,一般是每1KB或每2KB就设置一个inode。
假定在一块1GB的硬盘中,每个inode节点的大小为128字节,每1KB就设置一个inode,那么inode table的大小就会达到128MB,占整块硬盘的1/8空间(12.5%)。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?