sector:扇区,硬盘存储的最小单位,大小为0.5KB(512字节)

block:块文件存取的最小单位,1 block=8 sector,大小4KB

inode:存储文件元信息。内容包括

* 文件的字节数
* 文件拥有者的User ID
* 文件的Group ID
* 文件的读、写、执行权限
* 文件的时间戳。共有三个:ctime指inode上一次变动的时间,mtime指文件内容上一次变动的时间,atime指上一次访问的时间。
* 链接数,即有多少文件名指向这个inode
* 文件数据block的位置(pointer)

inode一般大小为128KB或者256KB。

inode的数量在硬盘格式化时就指定好了,所以一块硬盘上存储的文件数量是固定的

一个inode就代表一个真实的文件。操作系统通过inode号码(inode number)来识别inode

目录也是一种文件,访问目录就是打开目录文件。里面存放这文件名和对应的inode号码。如果要读取文件的详细信息,必须有目录的执行权限(x)

多个文件名对应同一个inode-no,被称为“硬链接”(hard link)。inode当中的链接数(link count)记录硬链接的数量

任何目录的链接数等于自身硬链接(.) + 父目录硬链接(..) + 子目录链接数(包含隐藏目录)。特例是根目录是自身的父目录。

软链接(soft link)或 符号链接(symbolic link)则是创建一个文件类型是链接文件的新文件,不会增加原文件的链接数。类似于windows的快捷方式

由于软链接包含了原文件的路径信息,所以如果原文件移动或删除了,就会报错:"No such file or directory"。

硬链接不能链接目录(超级管理员可以,其实只是规定而已),不能跨文件系统,软链接可以。

打开一个文件的过程:

  1. 根据文件名,找到对应的inode-no
  2. 根据inode-no在inode-table中找到inode信息
  3. 根据inode信息中的pointer找到文件所在的block

删除文件实际上就是让inode的链接数(link count)减一。链接数为0时,inode以及文件会被系统自动回收

linux inode cheat sheet的更多相关文章

  1. Linux常用命令汇总 - Linux Shell Cheat Sheet

    1. 查看Linux操作系统信息: uname -a cat /proc/version lsb_release -a 2. 设置ls显示的文件夹的颜色(将下面这条目录加在 .bashrc 文件最后) ...

  2. (copy) Linux Commands Cheat Sheet in Black & White

    source: http://linoxide.com/linux-command/linux-commands-cheat-sheet/

  3. 微软推 Azure 机器学习工具:Algorithm Cheat Sheet

    微软推 Azure 机器学习工具:Algorithm Cheat Sheet [日期:2015-05-15] 来源:CSDN  作者:Linux [字体:大 中 小]   Azure Machine ...

  4. Tools - 速查表与备忘单(Cheat Sheet)

    Cheat Sheets Rico's cheatsheets Cheat-Sheets.org Python Python Cheat sheet Python Programming Cheat ...

  5. Git Cheat Sheet 中文版

    Git Cheat Sheet 中文版 索引 配置 配置文件 创建 本地修改 搜索 提交历史 分支与标签 更新与发布 合并与重置 撤销 Git Flow 配置 列出当前配置: $ git config ...

  6. Reverse Shell Cheat Sheet

    Reverse Shell Cheat Sheet If you're lucky enough to find a command execution vulnerability during a ...

  7. 转:PostgreSQL Cheat Sheet

    PostgreSQL Cheat Sheet CREATE DATABASE CREATE DATABASE dbName; CREATE TABLE (with auto numbering int ...

  8. Git Cheat Sheet

    Merge Undo git merge with conflicts $ git merge --abort Archive $ git archive --format zip --output ...

  9. CSS3 Animation Cheat Sheet:实用的 CSS3 动画库

    CSS3 Animation Cheat Sheet 是一组预设的动画库,为您的 Web 项目添加各种很炫的动画.所有你需要做的是添加样式表到你的网站,为你想要添加动画效果的元素应用预制的 CSS 类 ...

随机推荐

  1. PAT 甲级 1011 World Cup Betting (20)(20 分)(水题,不用特别在乎精度)

    1011 World Cup Betting (20)(20 分) With the 2010 FIFA World Cup running, football fans the world over ...

  2. HDU 3068 最长回文(manachar算法)

    最长回文 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  3. kernel_task high cpu usage

    # Find the model $ system_profiler -detailLevel mini | grep "Model Identifier:" Model Iden ...

  4. cursor: pin S产生原理及解决方法

    转自:http://www.dbafree.net/?p=778 今天晚上在一个比较重要的库上,CPU严重的冲了一下,导致DB响应变慢,大量应用连接timeout,紧接着LISTENER就挂了,连接数 ...

  5. 为什么重写equals后要重写hashCode

    equals和hashCode的关系 要搞清楚题目中的问题就必须搞明白equals方法和hashCode方法分别是什么,和诞生的原因,当搞明白了这一点其实题目就不算是个问题了,下面我们来探讨分别探讨一 ...

  6. java递归之“二叉树”

    物有本末,事有始终,知所先后,则近道矣.-----题记. BotWong半路入行it做码农,也就半年时间,竟“不知天高地厚”地来到了深圳闯天下.一口气投了百个简历,一周后终于有公司邀约面试,除了基础的 ...

  7. Spring Boot实践——AOP实现

    借鉴:http://www.cnblogs.com/xrq730/p/4919025.html     https://blog.csdn.net/zhaokejin521/article/detai ...

  8. Linux Makefile 教程(转)

    原文地址:http://blog.csdn.net/liang13664759/article/details/1771246 ------------------------------------ ...

  9. zookeeper无故挂掉,启动不起来的问题

    一台测试的服务器重启后,运行zookeeperd的启动脚本显示启动成功: [plain] view plain copy     JMX enabled by default Using config ...

  10. zookeeper分布式锁和服务优化配置

    转自:https://www.jianshu.com/p/02eeaee4357f?utm_campaign=maleskine&utm_content=note&utm_medium ...