Linux文件系统

  文件系统是一个逻辑上的概念,本身与磁盘没有什么关系,它是一个外围性永久存储设备,我们知道,计算机共有五大部件,存储设备是一种,内存是个临时性质的存储设备,无论是关机还是断电,存在里面的数据都会消失,我们需要一个永久性存储的设备,来弥补内存只是临时存储性。

  对于Linux来说,其哲学思想之一就是一切皆文件,我们Linux上的访问设备全是通过文件接口来实现的,这就如同说我们访问设备如同访问一个文件一样。因为它们都是使用的是文件系统接口。

  在操作系统中,管理磁盘的文件系统有很多种,Windows的NTFS和FAT,Linux的EXT、xfs系列等都是管理磁盘的文件系统,不过它们的分区方式不一样,Windows分区方式就是直接就是分为C盘和D盘,两个都是相互独立的,让我们很直观看到,而Linux不是,Linux是除了”/”以外,你就看不到其它任何的独立分区,但这并不代表它不能支持多个文件系统,只不过我们就是带着”/”一起访问罢了。

  当我们格式化完成以后,我们的用户以为格式化就是能删除所有的数据,这个本质倒是也没错,不过有点不同的就是,格式化是写文件系统的,它会把磁盘按照逻辑上划分为元数据区域和数据区域,元数据区域记录的是Inode节点和超级快等位图信息,数据区域才是真正存储的数据,我们的格式化分为低级格式化和高级格式化,低级格式化是厂商在硬盘上划分出一个个磁道,而高级格式化是我们用户要使用磁盘在逻辑上建立的一种文件系统。

  在文件系统上我们大部分看到这么两类,一种是目录,一种是文件,其实目录是一个特殊的文件,它是一种路径的映射,在逻辑上建立文件系统之后,我们就可以使用磁盘了,它们的创建过程相对来说从概念上理解也不是那么容易,首先,它们要将磁盘在逻辑上划分一个一个的块儿,这些块的大小是根据你规划的分区容量自动来给你进行设定的常见的从1K到4K,然后我们在元数据区域建立一个位图,这个位图是标识那个块是被使用,使用的话,标记为1,没有使用的话,标记为0,不过,在前面的512个字节你是没办法使用的,不但没办法使用,要是破坏了你的系统开机就启动不了,这个分区就叫MBR它是记录了你操作系统的bootloeader,用于加载内核,然后64个字节中,每16个字节记录一个分区,总共可以表示四个主分区,最后2个字节是你的验证,如果划分好分区的话,会显示55AA。

  我们继续上次位图的话题,使用的话,标记为1,不使用的话,标记为0,但是我有一千个位图,要存储数据的话,位图查找半天,才查找第五百个是0,这也是一件很麻烦的事情,所有就开始事先把这些个块划分成为一个一个的块组,各自管理自己的,数据存储的时候,可以在这个块儿上存储一个,可以在另一个块上存储一个,提高了硬盘的写入速度。

  还有一个就是超级块,它的作用就是存储文件系统的大小,有多少是空的和已经填满的占用多少,以及它们各自的总数和其它诸如此类的信息。要使用一个数据来进行数据访问,那么第一个要访问的就是超级块。所以,如果超级块坏了,那磁盘就真的没有救了

  超级块占用第1号物理块,是文件系统的控制块,超级块包括:文件系统大小、空闲块的数目、空闲块的索引表、以及空闲i节点的数目,空闲i节点的索引表、封锁标记等。超级块是系统为文件分配存储空间。

原创文章,作者:刘 祥宇,如若转载,请注明出处:http://www.178linux.com/58948

(0)
上一篇 2016-11-11 14:31
下一篇 2016-11-12 20:39

相关推荐

  • 在Centos系统上安装EPEL扩展源以及安装htop工具

        Htop是一个强大的进程管理前端工具,但这是一个扩展工具,一般在Centos系统源中并没有,所有我们需要到fedora-epel源中下载。         EPEL即Extra Packages for Enterprise Lin…

    Linux干货 2016-02-14
  • 三剑客之一sed命令

    sed sed ‘2p’ /etc/passwd  打印paswwd的第二行 这样执行结果看能看出第二行显示两次 sed -n ‘2p’ /etc/passwd -n 执行后 会取出当前行显示. n是关闭打印  例如[root@cent7 ~]#ifconfig ens33|sed -n &…

    Linux干货 2017-08-13
  • 计算机构成与Linux基础知识之一

    简述计算机构成,Linux如何诞生及主流发行版;简单命令介绍;如何获取帮助及Linux目录命名及功用简介绍。

    2018-02-26
  • 虚拟机配置网卡别名及centos 6 之bonding

    1、虚拟网卡实现一个网卡多个地址(测试环境为虚拟机),此处使用eth1网卡,并且将eth1的IP设置成固定的,其实还可以设置成DHCP自动获取,这就是Linux强大之处。但是由eth1虚拟出来的两张网卡不能使用DHCP自动获取。具体步骤如下(设置的IP看个人喜欢) [root@localhost network-scripts]# cat…

    Linux干货 2016-09-05
  • iptables之nat

    NAT网络地址转换SNAT:修改IP报文中的源IP地址 本地向互联网请求让本地网络中的主机可使用统一地址与外部通信,从而实现地址伪装请求:修改源IP,如果修改则由光梨园定义响应:修改目标IP,由nat自动根据会话表中追踪机制实现相应修改DNAT:修改目标地址转换 外网服务器向其他客户端请求请求:由外网主机发起,修改其目标地址,由管理员定义相应:修改源地址,但…

    2017-11-12
  • 获取Linux命令帮助信息及man的用法

    经常在使用Linux命令时不清楚命令都有哪些参数,命令和参数的具体含义,我们根据命令的不同来源大致可以分为内部命令和外部命令。 内部命令帮助信息的获取:command help 那我不知道这个命令是不是内部命令,使用type command来确认是一个内部的还是一个外部的命令 外部命令帮助信息的获取:常用的有–help,man,info,还有一些…

    Linux干货 2016-09-17