对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 使用者管理 (9月底)

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。     ~]#w | cut -d ' ' -f 1 |uniq -u 2、取出最后登录到当前系统的用户的相关信息。 ~]# last -1(数字1) 3、取出当前系统上被用户当作其默认shell的最多的那个shell。 ~]#…

    Linux干货 2016-10-02
  • rsyslog+mysql+loganalyzer配置

    rsyslog+mysql+loganalyzer 自定义日志存储的信道(facility)和存储位置,让rsyslog作为服务端记录rsyslog客户端的日志信息 环境介绍 以centos 7.2为系统环境 内部已装有mariadb、 一、准备工作 1、 安装rsyslog连接至mysql server的驱动模块;   # y…

    Linux干货 2016-10-21
  • 重定向及tr命令详解及其在管道中的使用简述

    一、标准输入和输出及其重定向         1.标准输入指的是来自键盘的输入,通常用0来表示;标注输出是默认输出到当前终端窗口,用1来表示;标准错误输出同样默认输出到当前终端窗口,用2来表示。除标准输出之外,我们还可以通过重定向来更改默认的输入和输出方式。   &nb…

    Linux干货 2016-08-11
  • 第五周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; [root@centos6 ~]# grep "^[[:space:]]\+" /boot/grub/grub.conf         &…

    Linux干货 2017-01-16
  • 进程管理(二)之计划任务

    进程管理(二)之计划任务   一、计划任务: 1、未来的某时间点执行一次任务: (1)at:跟一个时间点,到点了自动运行指定的任务 (2)batch:系统自行选择空闲时间去执行此处指定的任务 2、周期性运行某任务:cron 二、at命令: 1、at命令:at [option] TIME 注:当输入完成后,使用Ctrl+d结束,不能使用Ctrl+c …

    Linux干货 2016-09-10