我的编程空间,编程开发者的网络收藏夹
学习永远不晚

云计算学习路线教程大纲课件:EXT2/3/4文件系统

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

云计算学习路线教程大纲课件:EXT2/3/4文件系统

云计算学习路线教程大纲课件:EXT2/3/4文件系统:

索引式文件系统

====================================================================================

云计算学习路线教程大纲课件:EXT2/3/4文件系统

Ext3/Ext4文件系统基本结构

云计算学习路线教程大纲课件:EXT2/3/4文件系统

云计算学习路线教程大纲课件:EXT2/3/4文件系统

云计算学习路线教程大纲课件:EXT2/3/4文件系统

• superblock:记录此文件系统的整体信息,包括inode/block的总量、使用量、剩余量,以及文件系统的格式等;

• inode:记录文件的属性(文件的元数据metadata),一个文件占用一个inode,同时记录此文件数据所在的block number;

• block:实际存储文件的內容,若文件太大时,会占用多个block。

Superblock 沒有Superblock ,就沒有filesystem

• block 与 inode 的总量;

• 未使用与已使用的 inode / block 数量;

• block 与 inode 的大小 (block 为 1, 2, 4K,inode 为 128bytes 或 256bytes);

• filesystem 的挂载时间、最近一次写入数据的时间、最近一次检查 (fsck) 的时间等文件系统相关信息;

• 每个block group 都可能含有 superblock,这样可以进行用于 superblock 的修复;

inode table: 存储文件的元数据

• 文件的权限(read/write/excute);

• 文件的属主/属组(owner/group);

• 文件的大小;

• 文件的(ctime);

• 文件的(atime);

• 文件的(mtime);

• 记录文件内容所在的block number (pointer);

data block: 存储文件的实际数据

查看文件系统的信息

dumpe2fs

[root@tianyun ~]# dumpe2fs /dev/sda2

tune2fs

[root@tianyun ~]# tune2fs -l /dev/sda3

tune2fs 1.39 (29-May-2006)

Filesystem volume name: yang

Last mounted on: <not available>

Filesystem UUID: 28459f88-87dc-4624-94a7-07b0f3eb2420

Filesystem magic number: 0xEF53

Filesystem revision #: 1 (dynamic)

Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super

Default mount options: (none)

Filesystem state: clean

Errors behavior: Continue

Filesystem OS type: Linux

Inode count: 48960

Block count: 195312

Reserved block count: 9765

Free blocks: 183410

Free inodes: 48946

First block: 1

Block size: 1024

First inode: 11

Inode size: 128

Journal inode: 8

EXT2/EXT3/EXT4 日志式文件系統

新建一个文件的过程:

先确定使用者对于想新创建文件目录是否具有 w 与 x 的权限;

根据 inode bitmap 找到沒有使用的 inode 号码,并将文件的权限和属性写入;

根据 block bitmap 找到沒有使用的 block号码,将文件的实际数据写入 block 中,且更新 inode 的 block 指向信息;

将刚刚写入的 inode 与 block 信息同步更新 inode bitmap 与 block bitmap,并更新 superblock 的內容。

• 文件的不一致 (Inconsistent) 状态

例如突然断电、kernel发生错误等。这样可能写入的信息仅有 inode table 及 data block 而已,最后一个同步更新的步

骤并沒有做完,此时就会发生 metadata 的內容与实际信息产生不一致 (Inconsistent) 的情況。

• 日志式文件系統 (Journaling filesystem)

准备:当系統要写入一个文件时,会先在日志区记录某个文件准备写入的信息;

实际写入:写入文件的权限与数据,更新 metadata 的信息;

结束:完成数据与 metadata 的更新后,在日志记录区块中完成文件的记录。

修复文件系统 fsck,e2fsck -fy

案例1: 系统无法启动

案例二:Read-only file system

如果运行中的服务器的某一个分区出现readonly,导致进程无法写这个分区(比如nginx进程无法写日志文件到此分区,

手动测试touch到此分区也显示:cannot touch ‘xxxxx’:Read-only file system),该怎么办?

解决:磁盘read-only的原因一般有2种,一种是没有正常关机导致,还有一种是硬盘故障导致。

如果是/分区,这种情况只能下线报修磁盘了。

如果是其它分区,则可以尝试三步解决此问题:

先取消挂载此分区

再fsck.ext4 -fy /dev/sdb1

最后挂载此分区,检查是否可以正常读写。

如果仍旧不可以正常读写,请报修磁盘。

注:以上操作过程,请保证服务器不在线上提供服务。

案例三:修复superblock

找到备份的superblock

[root@tianyun ~]# dumpe2fs -h /dev/datavg/lv1 |grep 'Blocks per group'

dumpe2fs 1.42.9 (28-Dec-2013)

Blocks per group: 8192

利用备份的 superblock恢复superblock

[root@tianyun ~]# fsck.ext4 -b 8192 /dev/datavg/lv1

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

云计算学习路线教程大纲课件:EXT2/3/4文件系统

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

云计算学习路线教程大纲课件:EXT2/3/4文件系统

云计算学习路线教程大纲课件:EXT2/3/4文件系统:索引式文件系统====================================================================================Ex
2023-06-04

云计算学习路线课程大纲资料:文件属性 chattr

给大家分享一些云计算学习路线课程大纲资料,这篇文章是关于文件属性 chattr的一些资料,希望能给大家一些帮助:文件权限管理之: 文件属性注:设置文件属性(权限),针对所有用户,包括root[root@tianyun ~]# touch f
2023-06-04

云计算教程学习路线视频源码课件:Linux性能监控工具-gtop

在云计算蓬勃发展的今天,与其在家闲着,不如立即开始学习,当机遇爆发式来临时,能不能把握住,只看我们是否已经准备好了,是否足够强大。零基础永远不是借口,没时间永远不是借口,抓住千锋逆战班直播体验课的机会,用勤奋与汗水,铸就美好的明天。所以,现
2023-06-04

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录