linux inode cheat sheet
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"。
硬链接不能链接目录(超级管理员可以,其实只是规定而已),不能跨文件系统,软链接可以。
打开一个文件的过程:
- 根据文件名,找到对应的inode-no
- 根据inode-no在inode-table中找到inode信息
- 根据inode信息中的pointer找到文件所在的block
删除文件实际上就是让inode的链接数(link count)减一。链接数为0时,inode以及文件会被系统自动回收
linux inode cheat sheet的更多相关文章
- Linux常用命令汇总 - Linux Shell Cheat Sheet
1. 查看Linux操作系统信息: uname -a cat /proc/version lsb_release -a 2. 设置ls显示的文件夹的颜色(将下面这条目录加在 .bashrc 文件最后) ...
- (copy) Linux Commands Cheat Sheet in Black & White
source: http://linoxide.com/linux-command/linux-commands-cheat-sheet/
- 微软推 Azure 机器学习工具:Algorithm Cheat Sheet
微软推 Azure 机器学习工具:Algorithm Cheat Sheet [日期:2015-05-15] 来源:CSDN 作者:Linux [字体:大 中 小] Azure Machine ...
- Tools - 速查表与备忘单(Cheat Sheet)
Cheat Sheets Rico's cheatsheets Cheat-Sheets.org Python Python Cheat sheet Python Programming Cheat ...
- Git Cheat Sheet 中文版
Git Cheat Sheet 中文版 索引 配置 配置文件 创建 本地修改 搜索 提交历史 分支与标签 更新与发布 合并与重置 撤销 Git Flow 配置 列出当前配置: $ git config ...
- Reverse Shell Cheat Sheet
Reverse Shell Cheat Sheet If you're lucky enough to find a command execution vulnerability during a ...
- 转:PostgreSQL Cheat Sheet
PostgreSQL Cheat Sheet CREATE DATABASE CREATE DATABASE dbName; CREATE TABLE (with auto numbering int ...
- Git Cheat Sheet
Merge Undo git merge with conflicts $ git merge --abort Archive $ git archive --format zip --output ...
- CSS3 Animation Cheat Sheet:实用的 CSS3 动画库
CSS3 Animation Cheat Sheet 是一组预设的动画库,为您的 Web 项目添加各种很炫的动画.所有你需要做的是添加样式表到你的网站,为你想要添加动画效果的元素应用预制的 CSS 类 ...
随机推荐
- Bootstrap-CL:进度条
ylbtech-Bootstrap-CL:进度条 1.返回顶部 1. Bootstrap 进度条 本章将讲解 Bootstrap 进度条.在本教程中,您将看到如何使用 Bootstrap 创建加载.重 ...
- Java ScriptEngine 解析js
Java ScriptEngine 解析js 1.脚本引擎 ① 通过脚本名称获取: ScriptEngine engine = new ScriptEngineManager().getEn ...
- 20181123_SQL Server 2008_找出以逗号分隔的字符串中最大的数字
--select [dbo].[Fun_GetMaxNum]('棉 20%,麻 190%,涤纶60%') CREATE FUNCTION [dbo].[Fun_GetMaxNum] ( @StrAll ...
- 第七章 : Git 介绍 (下)[Learn Android Studio 汉化教程]
Learn Android Studio 汉化教程 Let’s reset even further to remove all traces of your work on the deprecat ...
- SecureCRT 8.1使用经验总结
1.反空闲设置: 2.文件上传下载 上传 sudo rz -y 文本文件勾选Upload files as ASCII,图片或其他飞文本文件,去掉勾选.采用默认binary 3.文件下载 sudo s ...
- 超文本传输协议http详解
HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展.目前在WWW中使用的是HTTP/1.0的第 ...
- GitHub中README.md文件的编辑和使用
最近对它的README.md文件颇为感兴趣.便写下这贴,帮助更多的还不会编写README文件的同学们. README文件后缀名为md.md是markdown的缩写,markdown是一种编辑博客的语言 ...
- 阻止后续事件的发生 onclick 双return 事件绑定(..$).click一个return
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- oracle ora-01652无法通过128(在表空间xxx中)扩展 问题解决方式
问题原因建立的表空间dbf文件大小上限了 一. select * from dba_data_files 使用该条语句可以查看当前库中有多少表空间并且DBF文件的存储位置 二.查看表空间是否开启了自动 ...
- 初步认识session
TestSession01.java protected void doPost(HttpServletRequest request, HttpServletResponse response) t ...