inode就是索引节点,它用来存放档案及目录的基本信息,包含时间、档名、使用者及群组等。

inode 是 UNIX/Linux 操作系统中的一种数据结构,其本质是结构体

它包含了与文件系统中各个文件相关的一些重要信息

每一个索引节点都是一个表项,包含有关文件的信息(元数据):文件类型,权限,UID,GID

链接数(指向这个文件名路径名称个数)

该文件的大小和不同的时间戳

指向磁盘上文件的数据块指针

有关文件的其他数据

如图:

因此,在Linux中创建文件系统时,同时将会创建大量的inode通常,文件系统磁盘空间中大约百分之一空间分配给了inode表

文件引用的是一个inode号,因此,当用户搜索或者访问一个文件时,Linux系统通过 inode 表查找正确的 inode 编号。在找到 inode 编号之后,相关的命令才可以访问该 inode ,并对其进行适当的更改,所以,一个目录是目录下的文件名和文件inode号之间的映射,如下图:

使用stat filename可以查看

使用df -i 可以查看分区的inode使用率

使用 ls -i filename可以查看inode号

使用cp命令时,系统会分配一个空闲的inode号,在inode表中生成新条目 在目录中创建一个目录项,将名称与inode编号关联 拷贝数据生成新的文件

使用rm命令时,会使链接数递减,从而释放的inode号可以被重用,把数据块放在空闲列表中,删除目录项数据实际上不会马上被删除,但当另一个文件使用数据块时将被覆盖。

使用mv命令时,如果mv命令的目标和源在相同的文件系统,作为mv命令,用新的文件名创建对应新的目录项,删除旧目录条目对应的旧的文件名,不影响inode表(除时间戳)或磁盘上的数据位置,没有数据被移动!如果目标和源在一个不同的文件系统,mv相当于cp和rm

硬链接

硬链接就是一个文件拥有多个文件名字,多个文件名都指向同一个文件

当硬连接建立以后,硬连接双方任何一个对象被修改,都会造成对应的连接对象被修改

硬连接是不会建立inode的,他只是在文件原来的inode link count域再增加1而已,也因此硬链接是不可以跨越文件系统的

特性:硬链接不允许给目录创建,也不能跨分区创建

创建硬链接会增加额外的记录项以引用文件

每个文件引用相同的inode号

创建时链接数递增

语法:ln filename linkfilename

软链接,又称符号链接,和Windows系统的快捷方式类似

软链接文件只是其源文件的一个标记,当删除了源文件后,链接文件不能独立存在,虽然仍保留文件名,但却不能查看软链接文件的内容了

特性:一个符号链接指向另一个文件

可以使用ls - l的 显示链接的名称和引用的文件

一个符号链接的内容是它引用文件的名称

可以对目录进行 ,可以跨分区

指向的是另一个文件的路径;其大小为指向的路径字符串的长度;

不增加或减少目标文件inode的引用计数;

语法:ls -s filename linkfilename

file命令

该命令可以用来识别文件类型,确定文件内容

它可以检查文件类型,然后确定适当的开发命令或应用程序使用

语法:  file [OPTION...] [FILE...]

参数:-b列出文件辨识结果时,不显示文件名称。

-c详细显示指令执行过程,便于排错或分析程序执行形

-f列出文件中文件名的文件类型

-F使用指定分隔符号替换输出文件名后默认的”:”分隔符

-i输出mime类型的字符串

-L查看对应软链接对应文件的文件类型

-z尝试去解读压缩文件的内容

--help显示命令在线帮助

查看文件类型:

linux查看文件节点,Linux之索引节点inode(index node)相关推荐

  1. linux 查看文件列表,linux显示文件列表命令ls,使用ls --help列出所有命令参数

    ls命令的相关参数 在提示符下输入ls --help ,屏幕会显示该命令的使用格式及参数信息: 先介绍一下ls命令的主要参数: -a 列出目录下的所有文件,包括以 . 开头的隐含文件. -A 显示除 ...

  2. linux查看文件元数据,Linux切换目录、查看目录下的文件、文件类型介绍和查看文件的元数据信息...

    本篇博客介绍几个Linux的基础命令:写的如有不足,还望读者不吝赐教! 切换目录 cd(ChangeDirectory)切换工作目录 语法:cd  [要切换的目录] cd:进入用户的宿主目录(回家) ...

  3. linux查看文件创建人,Linux中如何查看文件的创建时间详解

    一.简介 Linux的文件能否找到文件的创建时间取决于文件系统类型,在ext4之前的早期文件系统中(ext.ext2.ext3),文件的元数据不会记录文件的创建时间,它只会记录访问时间.修改时间.更改 ...

  4. linux 查看文件字数,Linux 中如何查看文件的行数,字数,字节数

    在 Linux 系统使用中,我们经常需要查看或统计文本文件中的行数,字数,字节数等内容,那么怎么快捷的统计出文件中这些关键数据呢. 在Linux系统中这统计非常方便,只需要简单的几个命令就可以搞定,这 ...

  5. linux查看文件版本,Linux下查看版本号的命令

    Linux下查看版本号的命令 1,查看内核版本命令: cat   /proc/version uname   -a uname   -rcat   /etc/issue man   uname 2,查 ...

  6. Linux查看文件内容的方法

    观看档案内容:cat, tac, more, less, head, tail, nl, 刚刚我们提到的都只是在于显示档案的外观,或者是移动与复制一个档案或目录而已,那么如果我们要视察一个档案的内容时 ...

  7. Linux查看文件编码格式及文件编码转换

    Linux查看文件编码格式及文件编码转换 在Linux 中专门提供了一种工具convmv进行文件 名 编码 的转换 ,可以将文件 名 从GBK转换 成UTF-8编码 ,或者从UTF-8转换 到GBK. ...

  8. linux 查看文件和文件夹大小

    http://blog.sina.com.cn/s/blog_4af3f0d20100irvz.html Linux查看文件夹大小 du -sh 查看当前文件夹大小 du -sh * | sort - ...

  9. linux怎么看文件状态,linux查看文件类型-file、状态-stat

    linux查看文件类型-file.状态-stat 首页 计算机相关 linux命令 linux查看文件类型-file.状态-stat file 命令可以用来查看文件类型-i mime type -s ...

  10. linux查看文件和目录大小(du)

    From: http://www.2cto.com/os/201210/160665.html linux查看文件和目录大小(du) 起因 工作中或者日常使用ubuntu时候,经常会遇到查看当前系统容 ...

最新文章

  1. 研究人员开发出全3D打印离子动力纳米卫星推进器
  2. mysql实验6语言结构_实验六 SQL语言数据查询语言DQL.pdf
  3. BZOJ 2724蒲公英 (分块) 【内有块大小证明】
  4. uvalive5983(二分+dp)
  5. [BUUCTF-pwn]——hgame2018_flag_server
  6. ASP.NET MVC 4 (一)路径映射
  7. HTML5实现文件断点续传
  8. PowerDesigner提示This data item is already used in a primary identifier.的处理
  9. itextpdf添加表格元素_java使用iText生成pdf表格详解
  10. php utf8 gbk 数组 互转
  11. dll 源码_软件源代码调试,你用过什么方法?看我介绍上位机源码调试
  12. 华北电力大学微型计算机,华北电力大学 微机原理与应用
  13. Java中的观察者模式详解
  14. Linux 系统启动与服务管理
  15. 斗智斗勇 -- 谷歌浏览器的主页被篡改
  16. .NET平台下几种SOCKET模型的简要性能供参考的讨论【转】
  17. burg算法 matlab,基于burg算法的谱估计研究及其matlab实现.doc
  18. 安卓结构能转换成苹果借口吗_别错过!这可能是苹果近几年最精彩的发布会了...
  19. 计统大作业Hello P2P
  20. apt-get 离线包安装

热门文章

  1. Java小白入门200例25之两个数之间的质数
  2. 顾问观察|5天突破!如何利用MBS改善制造QCD经营指标?
  3. 如何使用Cocos2d-x 3.0制作基于tilemap的游戏:第一部分
  4. 在ros下使用omni
  5. 澳门大学的计算机科学是强科吗,澳门大学计算机专业大学排名
  6. Great Cow BASIC (大母牛BASIC)一个开源的8位芯片PIC和Atmel AVR微控制器的BASIC编译器
  7. 电子信息工程类图书.
  8. 驱动程序安装方法大全(转)
  9. 也来聊聊滑块验证码的那些事
  10. 智慧水利:水库水文监测系统