inode block 软硬链接 inode block 软硬链接 1 inode 2 block 3 文件硬链接 4 文件软链接

1 inode

1.1 inode(索引节点)作用

(1)用于存储文件数据属性信息
(2)用于存储数据指针信息

1.2 如何产生

格式化时,创建文件系统

1.3 如何查看:df -i

inode block 软硬链接
inode block 软硬链接
1 inode
2 block
3 文件硬链接
4 文件软链接

1.4 特点

(1)一个文件会占用一个inode
(2)大量小文件会占用大量inode

2 block

2.1 block作用

用于存储文件数据内容

2.2 如何产生

格式化时,创建文件系统

2.3 如何查看:df

inode block 软硬链接
inode block 软硬链接
1 inode
2 block
3 文件硬链接
4 文件软链接

2.4 特点

(1)一个文件数据会占用多个block
(2)一个block大小是大点好还是小点好分情况
存储的数据小文件:2kblock放在4kblock里,会浪费block数量
存储的数据大文件:4kblock放在1kblock里,会占用4个block数量
PS: 磁盘IO (input(写入)/output(读取)),消耗IO过多,降低磁盘性能

2.5 系统读取原理

(1)inode中:存储目录或文件的属性信息 指针信息(指向block)
(2)block中:目录的block存储下一级数据的名称信息
文件的block存储真正的数据信息
inode block 软硬链接
inode block 软硬链接
1 inode
2 block
3 文件硬链接
4 文件软链接

3 文件硬链接

3.1 硬链接

(1)相当于查看一个文件数据的多个入口信息
(2)inode号码相同的文件,互为硬链接

3.2 创建硬链接

ln 源文件 硬链接文件
ln oldboy.txt oldboy_hard_link.txt

3.3 硬链接特点

(1)源文件被删除,链接文件不会失效
(2)创建多个硬链接文件,不会占用block空间和inode空间
(3)目录无法创建硬链接

3.4 用途

防止文件被误删除 不能防止文件误修改

3.5 文件被删除条件

(1)硬链接数为0              i_link=0
(2)调用文件的程序为0    i_count=0

3.5 查询所有硬链接文件数量

ls -i:查看inode号
find / -type f -inum 33574990(inode)

3.6 cp和硬链接的区别

cp能防止误删除误修改 而硬链接只能防止误删除

4 文件软链接

4.1 软链接

(1)相当于快捷方式
(2)软链接文件存储源文件的路径信息

4.2 创建软链接

ln 源文件 软链接文件
ln -s oldboy.txt oldboy_soft_link.txt

4.3 特点

(1)源文件被删除,链接文件会失效
(2)创建多个软链接文件,会占用多个inode空间
(3)目录也可以创建软链接

4.4 用途

减少开放人员代码修改难度

4.5 硬链接,软链接示意图

inode block 软硬链接
inode block 软硬链接
1 inode
2 block
3 文件硬链接
4 文件软链接

4.6 不同的分区不能创建硬链接

/dev/sda3 (/)----------/oldboy/oldboy.txt 源文件
/dev/sdb2 (/mnt)-----/oldboy/oldboy_hard.txt 目标
/dev/sda3分区中的oldboy.txt文件是不能挂载到/dev/sdb2分区

4.7 创建一个目录的默认硬链接数是多少,目录硬链接数为10是多少

创建一个目录的硬链接数为2 一个是目录本身,还有一个是他的上一级目录
inode block 软硬链接
inode block 软硬链接
1 inode
2 block
3 文件硬链接
4 文件软链接
. 表示本身目录
.. 表示上一级目录
目录硬链接数为10,有八个子目录,一个本身目录。一个上一级目录