温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2020-08-09 20:26:04 来源:ITPUB博客 阅读:255 作者:千锋云计算 栏目:云计算

云计算学习路线教程大纲课件: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 日志式文件系統

新建一个文件的过程:

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

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

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

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

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

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

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

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

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

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

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

修复文件系统 fsck,e2fsck -fy

案例1: 系统无法启动

案例二:Read-only file system

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

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

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

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

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

1. 先取消挂载此分区

2. 再fsck.ext4 -fy /dev/sdb1

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

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

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

案例三:修复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

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI