大家平常无论是买一个U盘电脑硬盘,或自己电脑上创建一个系统分区,尺寸永远比大家创建的人要小一点,有的人会说,这一正常的啊,是由于生产厂家所规定的1M=1000k,真真正正的是1M=1024k,如果那样,我这篇文章就不用写了。生产厂家的规格型号有可能是一部分原因,但是我现在是以U盘电脑硬盘,或是分区的最底层去分析这种情况。
开课第十天:
今日的课程大纲:
- 深入了解文件系统
- 剖析U盘变小了的原因
- 怎么选择date block大小
- 软链接、硬链接
- 数据恢复的原理
详解:
- 深入了解文件系统
linux中叫创建文件系统,windows中习惯性称呼为格式化硬盘,filesystem一种管理资料的形式,我们平常在linux中初始化实质上初始化的是文件系统。一个文件系统包含了inode block和date block,分别是索引节点块和数据块,这也是在mkfs创建文件系统时就已经形成了。下面我就用一张我手画的图来模仿一个分区的组成,很难看,大伙儿别介意。(确实看不清楚就评论,独立发给你)
再解释一下上边图,dir是一个目录索引表,这儿假定我想实行cat a.txt文件,咋知道a.txt文件里内容,这儿我们首先寻找dir中a.txt相匹配inum是1,然后在file中寻找inum=1对应的文档,能够看见block相匹配的是<10,11,12>,而在date block中都是没有inum的,我附上为了更好地了解,大家找到<10,11,12>,那我们就从date block中读取下数据信息,随后回到给cat,那样我们就可以载入到a.txt文件信息了。
这里我说的很简单,实际上文件目录还需要引索一次,创建文件系统时,网站根目录的引索是默认设置定好的。
- 剖析U盘变小了的原因
懂了上边的图,今天就很好理解U盘,系统分区缩小的原因了。在inode中,dir的一条纪录占有一个inode,file中一条纪录消耗了一个inode,并且file中的一条纪录还展示了这一文件信息持有者,隶属组与特性等相关信息。这一部分总占用的网络资源是我们U盘,系统分区少的那一部分,因此我们系统分区创建好以后,会缩小,就是这样的原因。
- 怎么选择date block大小
我今天闲的无聊用英文写了这个问题的解释,只过去了四级,因此词法许多问题,但是搞IT嘛,看得懂就可以了,嘿嘿!
every date block has regular size:
if regular size is small,the inode will occupation(占有) to much space,the rest for date block will decrease( 降低).
if regular size is large,some small document can’t occupation full of a date block,the bad things :much space will be waste.
so choose the right date block regular size is decide to you requirement.
我想表达的大致意思便是,每一个文件系统我们能够要求date block的默认设置尺寸。假如过小,那样inode便会占有不少网络资源,那样交给date block会变少,那样你所看到的系统分区就比现在还需要小;也不要太大,那么一些小文件很有可能占花不完一个block,而用了一个block,那样许多空间便会被消耗。因此选择一个适合的date block大小在于自己的需求。
- 软链接、硬链接
我们都知道,在用ls -l查询文件权限时,第一位有可能是 -,d,l,-意味着的是一般文档,d代表文件目录,l代表链接文件。其实这种特性也有好多个。今日来讲一下链接文件。
软链接做一个形容,实际上如同windows里的快捷方式图标。怎么来创建连接呢?
①软链接:ln -s a.txt b.txt,b.txt是原本不存在的,现在b.txt就是a.txt的一个快捷方式图标。
②硬链接:ln a.txt b.txt,表明硬链接,a.txt和b.txt相互之间为彼此的硬链接。
给大家讲一下硬软连接的特性:
①不可以跨文件系统创建硬链接,因为不同文件系统可能会有同样的cnode。
②做不了文件目录的硬链接。
③硬链接,删掉其中一个硬链接,另外一个能够载入,软链接删掉源代码,不可以载入了。
④2个硬链接也被删掉,该inode会被分配。
⑤软链接会占有储存空间,硬链接不容易占有储存空间。
硬链接本身就是偏向同一文档且inum同样两条inode,因此他们也会占有一条inode。
- 数据恢复的原理
我们都知道,移除一个文档仅仅删掉了这一文档的cnode,而偏向的date block却并没有被删掉,因此我们能够再度根据已经知道的cnode值来寻找date block,进而再次读取下里边的信息。可是比较常见的数据恢复手机软件都是会温馨提示,数据信息误删除以后,都千万别顺利进行读写能力硬盘,因为可能重新写的信息会消耗了你以前删掉的cnode,date block就会被占有,那样及时你找回,若不是原先的信息了。
汇总:
好好地揣测一下文件系统的构造,这会对大家将来走好运维这条道路是很有帮助的的,希望大家都可以越来越远,越走越宽成功!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。