对inode的初步理解

1.什么是inode?

    inode中文译作”索引节点“,是linux操作系统中的一种数据结构,用来存储文件的元数据信息。在linux系统中每个文件都会分配一个inode,我们也可以把inode看作指针,它永远指向文件的具体存储位置。

2.inode中包含了什么信息?

* inode 编号

* 用来识别文件类型,以及用于 stat C 函数的模式信息

* 文件的链接数目

* 文件拥有者的 ID(UID)

文件的组 ID (GID)

* 文件的大小

* 文件所使用的block的实际数目

* 文件的时间 

从根本上讲, inode 中包含有关文件的所有信息(除了文件的实际名称以及实际数据内容之外).

3.inode的大小

我们知道,每次创建一个文件时,都会为该文件分配一个 inodeinode也会消耗磁盘空间,而在linux系统中,inode大约拥有百分之一的磁盘总空间,耗尽inode的可能始终存在,我们可以使用df命令查看每个硬盘分区的inode总数和已经使用的数量以及总体使用百分比情况。如图:

对inode的初步理解

4.inode数(索引编号)

每个inode都有一个号码,操作系统用inode号码来识别不同的件。Linux系统内部不使用文件名,而使用inode号码来识别文件有时候我们会碰到这样的情况,难以删除或者管理某些文件,可能是因为这些文件的文件名出现了问题这个时候我们可以使用一些命令通过inode数来操作这些文件。使用ls -i 可以查看文件的inode数,如图:

对inode的初步理解

5.目录

我们知道linux系统下,一切皆文件每个目录项由两部分组成:所包含文件的文件名,以及该文件名对应的inode号码。简单来说,目录是用来关键文件名与inode数如果没有 inode ,那么 linux中的目录将根本无法使用

以上就是我对于inode的初步理解,希望以后可以了解如何在linux中使用inode。

原创文章,作者:mayun,如若转载,请注明出处:http://www.178linux.com/81709

(1)
mayunmayun
上一篇 2017-07-18 19:47
下一篇 2017-07-19 20:10

相关推荐

  • Linux 文件系统上的权限

    文件系统上的权限是指文件系统上的文件和目录的权限,由于Linux是一种多用户的操作系统,而且允许同一时间登录多个用户操作,所以我们就需要一定的管理机制来对限定不同用户对同一文件或目录的操作权限。 文件系统上的权限主要针对三类对象(访问者)进行定义: owner:属主 u; g 属组 group; o: 其它 other 每个文件针对每类访问者都定义了三种权限…

    2017-06-04
  • Linux上文件管理命令、元素据及时间戳、bash的工作特性回显和命令展开、定义别名,命令引用。

    文件管理命令: mkdir 创建空目录 语法: mkdir [选项]…目录… 选项: -P:逐层创建目录。 -v:显示过程。 -m:直接给定权限。 注意:路径的基名为命令作用对象。基名路径必须存在。 示例 创建/tmp/x1/a/a1和/tmp/x1/b rmdir 移除空目录 语法 rmdir [选项]…目录&#8230…

    Linux干货 2017-12-10
  • CentOS下搭建LAMP

    实验:centos7.3实现lamp应用wordpress环境 host1 httpd,php  host2 mariadb1 yum install httpd php php-mysqlyum install mariadb-serversystemctl start httpdsystemctl start mariadb 2 创建数据库及用户mysq…

    2017-10-16
  • 文件处理命令作业题

    练习题    1.找出ifconfig命令结果中的本机的所有ipv4地址4    2.查出分区空间使用率的最大百分比值    3.查找用户UID最大值的用户名、UID及shell类型    4.查出/tmp的权限。以数字方式显示    5.统计当前链接本机的每…

    Linux干货 2016-08-08
  • 3rd work

    1、列出当前系统上所有已经登陆的用户名,注意同一个用户登陆多次,则只显示一次即可。 [root@localhost ~]# w 11:50:45 up 24 min,  3 users,  load average: 0.04, 0.04, 0.10 USER     TTY      FROM             LOGIN@   IDLE   JCP…

    Linux干货 2017-10-08
  • 马哥教育网络班21期+第3周作业

    马哥教育网络班21期+第3周作业 1、列出当前系统上所有已经登陆的用户的用户名 [root@ip-172-31-45-110 ec2-user]# who | awk '{print $1}' ec2-user 2、取出最后登录到当前系统的用户的相关信息 [root@ip-172-3…

    Linux干货 2016-07-22