linux文件系统详解
Posted xqr2018
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux文件系统详解相关的知识,希望对你有一定的参考价值。
1.linux文件体系:一切皆文件和文件目录树的资源管理方式一起构成了linux的文件体系,让linux操作系统可以方便地使用系统资源
2.硬盘分区:分区本身并不是必须的,我们完全可以把一整块硬盘当成一个分区,但从数据的安全性和系统性能的角度来看,分区还是必不可少的;每块硬盘上最重要的第一扇区,拥有硬盘主引导记录(MBR)【占446bytes】及分区表(partition table)【占64bytes】,硬盘主引导记录放有最基本的引导加载程序,是系统开机启动的关键环节,而分区表则跟分区有关(由于只有64bytes,最多只能记录4个分区,四个分区不够用,所以有了扩展分区。。。)
操作系统规定:
1.四块分区每块都可以是主分区或扩展分区
2.扩展分区最多只能有一个(也没必要有多个)
3.扩展分区可以进一步分割为多个逻辑分区
4.扩展分区只是逻辑概念,本身不能被访问,也就是不能被格式化后作为数据访问的分区,能够作为数据访问的分区只有主分区和逻辑分区
5.逻辑分区的数量依操作系统而不同,在 Linux 系统中,IDE 硬盘最多有 59 个逻辑分区(5 号到 63 号), SATA 硬盘则有 11 个逻辑分区(5 号到 15 号)
磁盘分区必须被格式化,成为一个文件系统
3.一个挂载点就是一个文件夹,将分区挂载到一个挂载点,挂载点就成了分区的入口。没有挂载分区的挂载点将使用根目录的空间,没有挂载到挂载点的分区是无法访问的,如上边第四个逻辑分区。
例如,如果分区 /dev/hda5 被 挂载在 /usr 上,这意味着所有在 /usr 之下的文件和目录在物理意义上位于 /dev/hda5 上。因此文件 /usr/share/doc/FAQ/txt/Linux-FAQ 被储存在 /dev/hda5上,而文件 /etc/X11/gdm/Sessions/Gnome 却不是。 继续以上的例子,/usr 之下的一个或多个目录还有可能是其它分区的挂载点。例如,某个分区(假设为,/dev/hda7)可以被挂载到 /usr/local 下,这意味着 /usr/local/man/whatis 将位于 /dev/hda7 上而不是 /dev/hda5 上。 linux系统中每个分区都是一个文件系统,都有自己的目录层次结构。linux会将这些分属不同分区的、单独的文件系统按一定的方式形成一个系统的总的目录层次结构。将一个文件系统的顶层目录挂到另一个文件系统的子目录上,使它们成为一个整体,称为挂载。把该子目录称为挂载点。
注意:1、挂载点必须是一个目录。
2、一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内容将不可用
4.上面提到:磁盘分区必须被格式化,成为一个文件系统;这个文件系统有两部分构成:inode和block
inode和block在分区格式化完成时数量和大小就已经决定了,除非重新格式化,不然无法再次修改
inode:centos 5 默认128bytes;centos 6 默认256bytes,用于存放文件的的属性和权限信息以及block的位置信息,唯独不包含文件名(有大小的)
block:用于存放文件的数据,包括文件名,固定大小(1k,2k,4k),一个block只能被一个文件使用,block并不是越大越好------太大--->浪费硬盘空间;太小--->影响读写性能
系统在查找一个文件时,先通过文件对应的inode,读取inode中的权限信息和对应的block位置信息,再根据inode里规定的用户的权限,让用户读取或者操作文件
以上是关于linux文件系统详解的主要内容,如果未能解决你的问题,请参考以下文章