11、深入理解Linux文件系统及日志分析

1、Linux文件系统的详述

在处理Linux系统出现的各种故障时,故障的症状是最容易发现的,但导致这一故障的原因才是最终排除故障的关键。

熟悉Linux系统中的常见日志文件,了解一般故障的分析与解决办法,将有助于管理员快速定位故障点、对症下药的及时解决各种系统问题。

注:在Linux系统中通过分区、格式化来创建文件系统,而文件系统的运行又与block和inode有关。操作系统的文件数据除了实际内容之外,通常还含有很多的属性。

例如Linux操作系统的文件权限(rwx)与文件属性(所有者、群组、时间参数等),

文件系统通常会将这两部分内容存放在inode和block中。

1.1 inode概述

文件是存储在硬盘上的,硬盘的最小存储单位叫做“扇区”,每个扇区存储512字节。

操作系统读取硬盘的时候,不会一个个扇区地去读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个“块”(block)。

注:这种由多个扇区组成的块,是文件存取的最小单位,块的大小,最常见的是4KB,

即连续八个sector组成一个block。

补充:在操作系统中,block大小对文件系统的性能具有重要影响。如果block大小设置的过大,可能会导致空间浪费和碎片化问题;

如果设置的过小,则可能会增加文件系统的元数据开销和访问延迟。因此,在选择block大小时,需要根据实际应用场景进行权衡和优化。

文件数据存储在块中,那么还必须找到一个地方来存储文件的元信息,

比如文件的创建者、文件的创建日期、文件的大小等等。

这种存储文件元信息的区域就叫做inode——中文译名为“索引节点”,也叫i节点。

因此,一个文件必须占用一个inode,但至少占用一个block。如下图:

1.2 inode的内容

inode包含很多的文件元信息,但不包含文件名。文件名是存放在目录当中的。

Linux系统中一切皆文件,因此目录也是一种文件。目录文件的结构如下图所示:

每个inode都有一个号码,操作系统用inode号码来识别不同的文件,

Linux系统内部不使用文件名,而使用inode号码来识别文件。

inode包含的元信息有:

  • 文件的字节数
  • 文件拥有者的UserID
  • 文件的GroupID
  • 文件的读、写、执行权限
  • 文件的时间戳等

可以使用stat命令来查看某个文件的inode信息,如下图:

补充:Linux系统文件有三个主要的时间属性,分别是ctime、atime、mtime

  • ctime——是最后一次改变文件或目录(属性)的时间,例如执行chmodchown等命令。
  • atime——是最后一次访问文件或目录的时间
  • mtime——是最后一次修改文件或目录(内容)的时间

1.3 inode的号码

用户在访问文件时,表面上是用户通过文件名来打开文件,而实际系统内部的过程分成下面三步:

  • 系统找到这个文件名对应的inode号码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值