文件系统及工作原理,企业面试题 硬链接与软链接及其示意图,重点总结

文件系统

文件是什么/文件系统是什么

文件是操作系统提供给用户/应用程序操作硬盘的一种功能
文件系统是操作系统内核中负责组织管理硬盘的程序,文件系统提供了文件的概念,文件系统控制硬盘

应用程序
操作系统: 文件系统(文件)
计算机硬件:硬盘
每个分区对应一个文件系统,文件系统种类可以不同。
操作系统:文件系统1	文件系统2	文件系统3
硬盘:		分区1		分区2		分区3

日志文件系统

linux系统中的文件系统 也叫 日志文件系统(读写数据的时候会记录日志):
    ext3
    ext4(centos6默认)
    xfs(centos7默认,目前主流)
    btrfs(效率更高,但非常耗cpu)

windows系统的文件系统:
	FAT32
	NTFS

文件系统工作原理

文件由两部分内容组成:文件的原信息和文件的实际内容
	1、文件的原信息放置到inode区块中	(一个文件对应唯一一个inode。inode存有block的编码)
	2、文件的实际内容放置到data block区块中	(文件过大会被分配多个block块,即一个文件可能对应多个block块的号码)
	ps:每个inode与block都有自己的编号
	
超级区块(superblock):记录整个档案系统的整体信息,包括inode与block的总量、使用量、剩余量等

所有的文件查找都是通过超级区块(superblock)先找到inode,再通过inode找到data block
从superblock拿到inode的编号,在通过inode拿到data block编号。最后找到data block(文件的实际内容)

# 超级区块相当于大管家有所有文件的信息,一个文件由inode和data block组成。
ls -di 文件路径		-d查看文件信息,i是inode编号

硬链接和软链接

硬链接

硬链接:硬链接指通过inode号进行连接。
ln 源文件路径 目标文件路径		(设置硬链接)
通过rm -rf 硬链接文件路径	删除硬链接

硬链接知识点提炼

1.硬链接文件与源文件具有相同inode的不同文件名:一个文件只能有一个inode号,但多个文件的inode号可以相同(多个硬链接一个文件)
2.删除硬链接,不影响另一个文件名的访问,除非所有的都删除掉,所以硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。
3.删除所有硬链接,数据会在被磁盘检查或者新数据写入时候删除回收。
4.通过ln 源文件路径 目标文件夹路径 设置硬链接
5.通过rm –f 删除硬链接
6.目录不可创建硬链接,并且硬链接无法跨区

软链接

软链接:符号链接
软链接文件有类似于windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。
ln -s 源文件路径 目标文件路径		(创建软连接)
通过rm -f 删除软链接

软链接知识点提炼

1、软链接文件与源文件具有不同的inode号
*2、删除软链接文件的源文件,软链接文件将无法使用,软链接作用:
	-1、软件升级	(因为软链接指向的是文件名,所以不受文件改变的影响)
	-2、企业代码发布
	-3、不方便目录移动
3、删除源文件后,软链接文件无效,应该也一起删除掉,以便回收
4、执行ln -s 源文件路径 目标文件路径 创建软连接
5、rm -f 删除软链接
6、可以对目录创建软链接,并且软链接可以跨分区

企业面试题 软链接与硬链接的区别

1、从定义上讲:linux系统中,链接有两种。一种被称为软链接,类似于快捷方式,存放指向源文件inode的信息,与源文件inode不同。一种是硬链接,与源文件有相同的inode,可以指向数据的block。
2、从创建方式讲:硬链接命令ln 原文件 目标文件,软链接命令ln -s 原文件 目标文件
3、从创建对象讲:ln命令不能对目录创建硬链接,但是可以对目录创建软链接。因为软链接可以跨越系统文件,硬链接则不能。对目录和为客户创建的文件软链接经常用到
4、删除文件软链接,对原文件和硬链接无影响
5、删除文件硬链接,对原文件和软链接文件无影响
6、删除源文件,对硬链接读取数据无影响,软链接则失效。会出现红底白字状
7、同时删除原文件和硬链接,源文件才会被真正删除
8、很多硬件设备中的快照原理,类似于硬链接

硬链接与软链接示意图

image

今日重点总结

命令:
df	显示目前linux系统上的文件系统磁盘使用情况
df 文件路径		显示某文件在文件系统磁盘上的使用情况
df -i	看inode号有没有用满,用了多少
df -h	看空间有没有用满,使用情况
df -T	type种类,显示属于什么类型
ln 源文件路径 目标文件路径		(设置硬链接)
ln -s 源文件路径 目标文件路径		(创建软连接)
stat 文件路径		查看文件信息(有inode)

一个文件包含inode和data block。inode是文件记录信息/属性,data block是文件实际内容
软链接指向的是源文件文件名,相当于是快捷方式。
硬链接指向的是源文件的inode,相当于调用同一个文件inode和实际内容/真实目标文件。
硬链接删除源文件,硬链接还存在,目标文件还能用,只要还有硬链接数,源文件的inode和实际内容还会存在。除非把硬链接和源文件都删除。才会回收inode编号
硬链接不能跨分区建,因为硬链接指向的是inode号,但每个分区的inode号都是独立的/指向不同的文件。
软链接可以跨分区键,因为软链接指向的是文件名。
*硬盘满了可以通过软链接加挂载后的硬盘进行扩容。
posted @ 2021-06-25 20:19  余昆  阅读(223)  评论(0)    收藏  举报