mysql inode_Linux中inode的大小、作用讲述
linux中的inode
理解inode
inode是文件存储,文件存储在营盘山,最小的存储单位叫扇区。每个扇区的存储512字节。
操作系统读取硬盘的时候,不会一个一个扇区的读取,这样效率太低。而是一次性读取多个扇区,一次性读取一个块。也就是8个连续的扇区组成一个block。
文件存储在块中,但是我们还需要找一个存储元信息的区域叫做inode。中文译名“索引节点”。
每个文件都有对应的索引节点。
inode的内容
在inode的元信息中,保存了以下内容:
* 文件的字节数
* 文件拥有者的User ID
* 文件Group ID
* 文件的读写执行权限
* 文件的时间戳,ctime上次变动的时间,mtime文件内容上次变动的时间,atime,文件上次访问的时间。
* 链接数,就是有多少文件名指向这个inode
* 我呢间数据block的位置。
我们可以使用以下命令尽心查看inode的信息
stat demo.txt
inode的大小
在inode也是会消耗磁盘的空间,所以格式化的时候,操作系统会将磁盘分为两个部分,一个是数据存放的位置就是block;另一个就是inode区,用来存放inode的信息。
每个inode一般是128字节或者是256字节。inode节点的总数是在格式化的时候给定你的。一般是每1kb或每2kb就设置一个inode。那么inode table就会占用磁盘的12.8%。
我们可以使用以下命令查看:
df -i
查看每个inode节点的大小用命令
dumpe2fs -h /dev/hda |grep "Inode size"
每个文件都需要有inode,因此有可能出现inode已经用完,但是硬盘没有存满。这个时候就没有办法创建新的文件。
inode号码
每个inode都有一个号码,操作系统用inode号码来识别不同的文件。
需要注意的是,在linux系统内部,使用的就是inode号码来识别文件,文件名只是便于识别的别称。
我们使用以下命令查看文件inode号
ls -i demo.txt
目录文件
linux系统中,目录也是一种文件,打开目录其实就是打开目录文件。
目录文件结构非常简单,只有两部分组成一个是inode号,一个是文件的名称。文件的元信息都存储在inode中。
硬链接
一般情况下,文件名合inode号码是一一对应的,每个inode号码都是对应着一个文件名称。但是在linux中允许多个文件指向同一个inode号码。这就意味着我们可以通过不同的文件名访问相同的内容。修改一个文件,影响所有的文件,但是删除文件只会影响自己本身的访问,不影响其他文件名的访问。这种情况叫做“硬链接(hard link)”。
创建硬链接命令:
ln 源文件 目标文件
任何一个目录的硬链接总数等于,2加上他子目录数(包含隐藏目录)。
软连接
文件A和文件B的inode号码虽然不一样,但是文件A的内容是文件B的路径。读取文件A时,系统会自动将访问者导向文件B。因此,无论打开哪一个文件,最终读取的都是文件B。这时,文件A就称为文件B的”软链接”(soft link)或者”符号链接(symbolic link)。
创建命令为:
ln -s 源文件 目标文件或目录
inode的特殊作用
由于inode号码和文件名称的分离。导致一些linux系统特有的现象。
1. 有时文件包含特殊字符无法正常删除,这个时候删除inode节点即可。
2. 移动或者重命名文件,不会影响inode号码。
3. 打开一个文件以后,系统使用inode号码识别文件,不用考虑文件名。
希望与广大网友互动??
点此进行留言吧!
mysql inode_Linux中inode的大小、作用讲述相关推荐
- 如何修改mysql表中列的大小?
本文翻译自:How can I modify the size of column in a mysql table? I have created a table and accidentally ...
- mysql数据库的事物日志在哪里_mysql数据库中事务日志的作用
mysql数据库中事务日志的作用 发布时间:2020-06-28 18:13:39 来源:亿速云 阅读:98 作者:Leah 这篇文章将为大家详细讲解有关mysql数据库中事务日志的作用,文章内容质量 ...
- mysql中对比月_详解Mysql中日期比较大小的方法
假如有个表product有个字段add_time,它的数据类型为datetime,有人可能会这样写sql: 代码如下 select * from product where add_time = '2 ...
- mysql 日期比较_详解Mysql中日期比较大小的方法
假如有个表product有个字段add_time,它的数据类型为datetime,有人可能会这样写sql: 代码如下 select * from product where add_time = '2 ...
- mysql日期比较大小 方式_mysql中日期比较大小方法详解
在mysql中日期比较有许多的函数,下面我来给大家总结一下常用的mysql中日期比较大小有需要了解的朋友可进入参考参考,假如有个表product有个字段add_time,它的数据类型为datetime ...
- 详解Mysql中日期比较大小的方法
假如有个表product有个字段add_time,它的数据类型为datetime,有人可能会这样写sql: 代码如下 select * from product where add_time = '2 ...
- mysql init file_mysql中参数--init-file的作用是什么呢?
需求描述: 今天在修改测试环境mysql数据库中root用户密码的时候,用到了--init-file参数, 所以,就在这里说下该参数的作用. 概念解释: 参数:--init-file=file_nam ...
- MySQL数据类型中DECIMAL的作用和用法
在MySQL数据类型中,例如INT,FLOAT,DOUBLE,CHAR,DECIMAL等,它们都有各自的作用,下面我们就主要来介绍一下MySQL数据类型中的DECIMAL类型的作用和用法. 一般赋予浮 ...
- mysql中 !40000 DROP DATABASE IF EXISTS `top_server` 这中注释有什么作用?
需求描述: 今天在进行mysqldump实验,使用--add-drop-databases参数,于是在生成的SQL文件中,就出现了. /*!40000 DROP DATABASE IF EXISTS ...
最新文章
- Redis中哈希hash数据类型(增加修改(设置单一属性、设置多个属性)、获取(获取键所有属性、获取单一属性值、获取多个属性值)、删除、使用hash可能出现的问题)
- mysqlevent每天,附答案
- 针对校园某服务器的一次渗透测试
- 深入理解MyBatis的原理(四):映射器的用法
- python 中cPickle学习二
- 面试官Diss我能力不如工作3年
- 小玉买文具(洛谷-P1421)
- nmap查看开放端口以及使用的协议
- 机器学习开放数据集网站
- java验证码制作思路_Java实现验证码制作之一自己动手
- Python查找包含指定字符串的所有Office文档
- c语言程序设计课用电脑吗,C语言程序设计之简单计算器
- sqlalchemy mysql_小窍门:为MySQL和Pandas准备的SQLAlchemy
- Kafka 环境部署与配置详解
- Linux 网卡流量查看
- bootstrap table 小计行_【2018/4/11】bootstrapTable添加一行
- stm32编程初始化设备步骤
- Excel处理数据技巧
- 虚拟机桌面切换命令行
- “融而开放、合以创新”T-HIM融合通信技术开发实战