Linux操作系统文件管理概论

2017-12-30 04:17冯航武汉学院信息及传播学院信息系
数码世界 2017年10期
关键词:存储设备磁盘日志

冯航 武汉学院信息及传播学院信息系

Linux操作系统文件管理概论

冯航 武汉学院信息及传播学院信息系

1 、Linux文件系统概述

文件系统是操作系统用来明确存储设备(常见的为磁盘,也有基于分区上的文件的方法以及数据结构;即是在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件机构称之为文件管理系统,简称为文件系统。文件系统是由三部分组成:文件系统的接口,对于对象操纵和管理的软件集合,对象以及属性。从系统的角度来看,文件系统是对于文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体点说,它主要负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等功能。

2 、Inode(i节点)

2.1 Indoe的定义

inode中文译为索引节点,它是用来存放档案及目录的基本信息,包含时间、档名、使用者及群组等。

2.2 Indoe的分类及其具体含义

inode分为内存中的inode和文件系统中的inode,为了避免混淆,我们称前者为VFSinode,而后者以EXT2为代表,我们称为Ext2inode。下面分别对VFSinodee与Ext2inode做一下简单的描述:

VFSinode里包含文件访问权限、属主、组、大小、生成时间、访问时间、最后修改时间等信息。VFSinode是linux管理文件系统的最基本单位,同时也是文件系统连接任何子目录、文件的桥梁。inode结构中的静态信息取自物理设备上的文件系统,由文件系统指定的函数填写,它只存在于内存中,可以通过inode缓存访问。虽然每个文件都有相应的inode结点,但是只有在需要的时候系统才会在内存中为其建立相应的inode数据结构,建立的inode结构将形成一个链表,我们可以通过遍历这个链表去得到我们需要的文件结点,VFS也为已分配的inode构造缓存和哈希表,以提高系统性能。

EXT2inode是用来定义文件系统的结构以及描述系统中每个文件的管理信息,每个文件都只有一个inode,即使文件中没有数据,它的索引结点也是存在的。每个文件用一个单独的Ext2inode结构来描述,而且每一个inode都有唯一的标志号。Ext2inode为内存中的inode结构提供了文件的基本信息,随着内存中inode结构的变化,系统也将随之更新Ext2inode中相应的内容。

所以从以上结构的定义中可以看出来inode(VFSinode)与ext2_inode的差别是很大的,它们都包含动态信息和静态信息,通过union指定的内容一定是动态的。inode结构中的unionu实际上反映了VFS支持的文件系统。

2.3 inode的分配(对于ext2 inode)

每个inode的大小为128个字节,下面具体介绍哪几个字节代表的内容:0~1表示文件的类型和属性

2~3表示文件的长度

4~7表示文件宿主用户id

8~19表示三个时间属性,每4个字节代表一个时间

20~23表示Deletion Time即删除的时间

24~25表示用户组id

26~27表示硬链接的个数

28~31表示Blockcount的大小

3 、日志文件系统

为了防止由于系统崩溃或电源突然中断而导致正在进行的文件操作中断所造成的数据丢失,ext2文件系统就必须在每个数据块创建或修改后即刻写入磁盘。磁盘的寻道操作对于cpu来讲是如此的之长,为了提高性能,所以写操作数据被缓存,写操作被延迟。但这样也带来了数据丢失的风险,假如数据还没来得及写入磁盘,电源突然中断,数据将会丢失。为了解决这个问题,所以产生了ext3文件系统。

日志文件系统(ext3)如今已经成为Linux的缺省文件系统。日志文件系统就是专门为了那些厌倦了一直盯着启动时fsck(即文件系统一致性检查)的人而设计的(日志文件系统同样适用于希望文件系统具有故障恢复能力的群体)。如果系统采用传统的未提供日志功能的文件系统,那么操作系统在检测到系统为非正常关机时,会使用fsck应用程序来执行一致性检验。这个应用程序会扫描文件系统,并且修复任何可以安全修复的问题。而且在一些情况下,当文件系统损坏严重时,操作系统就会启动到单客户模式,由用户进行修复。

4 、网络文件系统(NFS)

网络文件系统,英文名为NetworkFileSystem(NFS)。它是由SUN公司研制出的UNIX表示层协议(pressentationlayerprotocol),它可以使使用者访问网络上别处的文件,就像是在使用自己的计算机一样。NFS是基于UDP/IP协议的应用,它的实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器、操作系统以及低层传送协议无关的存取远程文件的操作。而RPC则采用了XDR的支持。XDR则是一种与机器无关的数据描述编码的协议,它以独立与任意机器体系结构的格式对网上传送的数据进行编码和解码,支持在异构系统之间数据的传送。

NFS的主要特点有:提供透明文件访问以及文件传输、不需要改变现有的工作环境便可以扩充新的资源或软件、高性能,可灵活配置等特点。

NFS允许计算的客户-服务器模型。服务器实施共享文件系统,以及客户端所连接的存储。客户端实施用户接口来共享文件系统,并加载到本地文件空间当中。

5 、总结

综合一学期的Linux操作系统的课程学习,对于Linux操作系统有了一定的了解和掌握。知道了Linux是一个性能稳定、功能强大、效率高的操作系统。它在功能特性方面与Unix系统相似,同时又具有多任务、多用户、多平台等若干特性。Linux的源代码是开放的,阅读Linux源代码,无疑是深入学习Linux的最好方法。

猜你喜欢
存储设备磁盘日志
一名老党员的工作日志
它的好 它的坏 详解动态磁盘
扶贫日志
创建虚拟机磁盘方式的选择
解决Windows磁盘签名冲突
雅皮的心情日志
雅皮的心情日志
Windows系统下动态磁盘卷的分析与研究
浅析计算机硬件发展史
浅析铁路视频监控存储设备设计