目录
库文件: /lib64/rsyslog/*.so 1.4、rsyslog配置文件
一、文件系统
1、inode和block概述
元信息:每个文件的属性信息,比如:文件的大小,时间,类型,权限等,也称为文件的元数据(meta data)
元数据是存放在inode(index node)表中。inode 表中有很多条记录组成,第一条记录对应的存放了一个文件的元数据信息。
文件数据包括元信息与实际数据。
文件存储在硬盘上,硬盘最小存储单位是“扇区”,每个扇区存储512字节。
block(块)
连续的八个扇区组成一个block,4k
是文件存取的最小单位
inode(索引节点)
中文译名为“索引节点”,也叫 i 节点
用于存储文件元信息
一个文件必须占用一个inode ,至少占用一个block
2、inode表结构
1.1、包含文件的元信息
- 文件的字节数(字节占用多少空间,也称文件大小)
- 文件拥有者的 User ID
- 文件的 Group ID
- 文件的读、写、执行权限
- 文件的时间戳(ctime、atime、mtime)
- 文件类型
- 链接数
- 有关文件的其他数据
1.2、查看inode
- ls -i 命令:查看文件名对应的inode号码
- stat 命令:查看文件的inode信息
1.3、 Linux系统文件三个主要的时间属性
最近访问atime(access time)最后一次访问文件的时间。使用echo追加内容不会变,因为没有打开文件
最近更改mtime(modify):最后一次更改文件内容的时间。更改完内容之后,ctime也会改变
最近改动ctime(change time):最后一次改变文件元信息(文件或目录属性)的时间。改变后,mtime不变 1.4、目录文件结构
目录是个特殊文件,目录文件的内容保存了此目录中文件的列表及inode number对应关系
inode不包含文件名,文件名是存放在目录文件夹当中的。Linux 系统中一切皆文件,因此目录也是一种文件
是通过文件名来引用一个文件
每个目录项由两部分组成:所包含文件的文件名,以及该文件名对应的inode号码。目录是目录下的文件名和文件inode号之间的映射
每个inode都有一个号码,操作系统用inode号码来识别不同的文件
Linux系统内部不使用文件名,而使用inode号码来识别文件
对于系统来说,文件名只是inode号码便于识别的别称
1.5、用户访问文件的过程
当用户在Linux系统中试图访问一个文件时,系统会先根据文件名去查找它对应的inode号码;通过
inode号码,获取inode信息;根据inode信息,看该用户是否具有访问这个文件的权限;如果有,就
指向相对应的数据block,并读取数据。
硬盘分区后结构
3、inode的大小
inode也会消耗硬盘空间,每个inode的大小一般是128字节或256字节
inode的总数,在格式化时就确定
如果磁盘还有空间,但inode号被全部占用,无法创建新文件。
inode号在同一个文件系统内唯一,在不同的文件系统中可以重复。
查看每个硬盘分区的inode总数和已经使用的数量,可以使用命令: df -i
4、inode的特殊作用
由于inode号码与文件名分离,导致一些Unix/Linux系统具有以下的现象
- 当文件名包含特殊字符,可能无法正常删除文件,直接删除inode,也可以删除文件
删除inode号的方法:
法一: find 文件位置 -inum inode号码 -exec rm -rf {} \;
法二: find 文件位置 -inum inode号码 -delete
- 在同一个文件系统中移动或重命名文件时,只改变文件名,不影响inode号码
- 打开一个文件后,系统通过inode号码来识别该文件,不再考虑文件名
- 文件数据被修改保存后,会生成一个新的inode 号码
-
cp命令与inode:
-
分配一个空闲的inode号
-
在inode表中生成新条目在目录中创建一个目录项
-
将名称与inode编号关联拷贝数据生成新的文件
-
rm命令与inode
-
链接数递减,从而释放的inode号可以被重用把数据块放在空闲列表中
-
删除目录项
-
数据实际上不会马上被删除,但当另一个文件使用数据块时将被覆盖
5、软链接与硬链接
- 硬连接 同一个文件取不同的名或者叫多个名字,不支持文件夹,创建一个链接数加一,多路径访问。不占用内存
- 软连接 类似于windows里快捷方式,软连接,符号连接,使用绝对路径
格式:软链接 :ln [-s] 源文件或目录… 链接文件或目标位置
硬链接: ln [ ] 源文件或目录… 链接文件或目标位置
对比项 | 硬连接 | 软连接 |
---|---|---|
本质 | 本质是同一个文件 | 本质不是同一个文件 |
inode | 相同 | 不同 |
连接数 | 创建新的硬链接,链接数会增加,删除硬链接,链接数减少 | 删除新建不会改变 |
文件夹 | 不支持 | 支持 |
删除源文件 | 只是链接数减一,但链接文件的访问不受影响 | 无法访问连接文件 |
文件类型 | 和源文件相同 | 链接文件,和源文件无关 |
文件大小 | 和源文件相同 | 源文件的路径的长度 |
- 硬链接
- 软链接