什么是超级块

如果说inode块是Linux操作系统中文件的核心,那么超级块就是文件系统的心脏。启动Lnux操作系统后,发现某个文件系统无法使用,很有 可能就是超级块出现了问题。为什么这个超级块有这么大的作用呢?主要是因为在超级块中保存了全局文件信息,如硬盘已用空间、数据块可用空间、inode结 点信息等等。做一个形象的比喻,这个超级块就好像是企业的资产负债表,一个文件系统中有哪些资源都记录在这个表中。超级块保存在第一个块组内,并在其他块组留有备份。

ext系统查看超级块信息

例:

dumpe2fs /dev/sdb1:块分组管理命令,显示

[root@joker-7-01 ~]# dumpe2fs  /dev/sdb1
dumpe2fs 1.42.9 (28-Dec-2013)
Filesystem volume name: <none>
Last mounted on: <not available>
Filesystem UUID: fdc4a200-1962-4464-a9dc-c3d5c03bc324
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype extent 64bit flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize #文件系统属性
Filesystem flags: signed_directory_hash
Default mount options: user_xattr acl
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 196608
Block count: 786432
Reserved block count: 39321
Free blocks: 755396
Free inodes: 196597
First block: 0
Block size: 4096
Fragment size: 4096
Group descriptor size: 64
Reserved GDT blocks: 383
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Flex block group size: 16
Filesystem created: Mon Dec 4 19:52:27 2017
Last mount time: n/a
Last write time: Mon Dec 4 19:52:27 2017
Mount count: 0
Maximum mount count: -1
Last checked: Mon Dec 4 19:52:27 2017
Check interval: 0 (<none>)
Lifetime writes: 66 MB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Required extra isize: 28
Desired extra isize: 28
Journal inode: 8
Default directory hash: half_md4
Directory Hash Seed: 3c095e2f-ab5b-4be9-9dfc-db9704902af0
Journal backup: inode blocks
Journal features: (none)
日志大小: 64M
Journal length: 16384
Journal sequence: 0x00000001
Journal start: 0

Group 0: (Blocks 0-32767)
Checksum 0x02c2, unused inodes 8181
主 superblock at 0, Group descriptors at 1-1
保留的GDT块位于 2-384
Block bitmap at 385 (+385), Inode bitmap at 401 (+401)
Inode表位于 417-928 (+417)
24153 free blocks, 8181 free inodes, 2 directories, 8181个未使用的inodes
可用块数: 8615-32767
可用inode数: 12-8192
Group 1: (Blocks 32768-65535) [INODE_UNINIT]
Checksum 0xf1a2, unused inodes 8192
备份 superblock at 32768, Group descriptors at 32769-32769
保留的GDT块位于 32770-33152
Block bitmap at 386 (bg #0 + 386), Inode bitmap at 402 (bg #0 + 402)
Inode表位于 929-1440 (bg #0 + 929)
32383 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 33153-65535
可用inode数: 8193-16384
Group 2: (Blocks 65536-98303) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0xa943, unused inodes 8192
Block bitmap at 387 (bg #0 + 387), Inode bitmap at 403 (bg #0 + 403)
Inode表位于 1441-1952 (bg #0 + 1441)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 65536-98303
可用inode数: 16385-24576
Group 3: (Blocks 98304-131071) [INODE_UNINIT]
Checksum 0xa96c, unused inodes 8192
备份 superblock at 98304, Group descriptors at 98305-98305
保留的GDT块位于 98306-98688
Block bitmap at 388 (bg #0 + 388), Inode bitmap at 404 (bg #0 + 404)
Inode表位于 1953-2464 (bg #0 + 1953)
32383 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 98689-131071
可用inode数: 24577-32768
Group 4: (Blocks 131072-163839) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0x4c00, unused inodes 8192
Block bitmap at 389 (bg #0 + 389), Inode bitmap at 405 (bg #0 + 405)
Inode表位于 2465-2976 (bg #0 + 2465)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 131072-163839
可用inode数: 32769-40960
Group 5: (Blocks 163840-196607) [INODE_UNINIT]
Checksum 0x8821, unused inodes 8192
备份 superblock at 163840, Group descriptors at 163841-163841
保留的GDT块位于 163842-164224
Block bitmap at 390 (bg #0 + 390), Inode bitmap at 406 (bg #0 + 406)
Inode表位于 2977-3488 (bg #0 + 2977)
32383 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 164225-196607
可用inode数: 40961-49152
Group 6: (Blocks 196608-229375) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0xd0c0, unused inodes 8192
Block bitmap at 391 (bg #0 + 391), Inode bitmap at 407 (bg #0 + 407)
Inode表位于 3489-4000 (bg #0 + 3489)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 196608-229375
可用inode数: 49153-57344
Group 7: (Blocks 229376-262143) [INODE_UNINIT]
Checksum 0x18f0, unused inodes 8192
备份 superblock at 229376, Group descriptors at 229377-229377
保留的GDT块位于 229378-229760
Block bitmap at 392 (bg #0 + 392), Inode bitmap at 408 (bg #0 + 408)
Inode表位于 4001-4512 (bg #0 + 4001)
32383 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 229761-262143
可用inode数: 57345-65536
Group 8: (Blocks 262144-294911) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0xc685, unused inodes 8192
Block bitmap at 393 (bg #0 + 393), Inode bitmap at 409 (bg #0 + 409)
Inode表位于 4513-5024 (bg #0 + 4513)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 262144-294911
可用inode数: 65537-73728
Group 9: (Blocks 294912-327679) [INODE_UNINIT]
Checksum 0x02a4, unused inodes 8192
备份 superblock at 294912, Group descriptors at 294913-294913
保留的GDT块位于 294914-295296
Block bitmap at 394 (bg #0 + 394), Inode bitmap at 410 (bg #0 + 410)
Inode表位于 5025-5536 (bg #0 + 5025)
32383 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 295297-327679
可用inode数: 73729-81920
Group 10: (Blocks 327680-360447) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0x5a45, unused inodes 8192
Block bitmap at 395 (bg #0 + 395), Inode bitmap at 411 (bg #0 + 411)
Inode表位于 5537-6048 (bg #0 + 5537)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 327680-360447
可用inode数: 81921-90112
Group 11: (Blocks 360448-393215) [INODE_UNINIT]
Checksum 0xcc42, unused inodes 8192
Block bitmap at 396 (bg #0 + 396), Inode bitmap at 412 (bg #0 + 412)
Inode表位于 6049-6560 (bg #0 + 6049)
16384 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 376832-393215
可用inode数: 90113-98304
Group 12: (Blocks 393216-425983) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0xbf06, unused inodes 8192
Block bitmap at 397 (bg #0 + 397), Inode bitmap at 413 (bg #0 + 413)
Inode表位于 6561-7072 (bg #0 + 6561)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 393216-425983
可用inode数: 98305-106496
Group 13: (Blocks 425984-458751) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0x9361, unused inodes 8192
Block bitmap at 398 (bg #0 + 398), Inode bitmap at 414 (bg #0 + 414)
Inode表位于 7073-7584 (bg #0 + 7073)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 425984-458751
可用inode数: 106497-114688
Group 14: (Blocks 458752-491519) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0x23c6, unused inodes 8192
Block bitmap at 399 (bg #0 + 399), Inode bitmap at 415 (bg #0 + 415)
Inode表位于 7585-8096 (bg #0 + 7585)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 458752-491519
可用inode数: 114689-122880
Group 15: (Blocks 491520-524287) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0x53eb, unused inodes 8192
Block bitmap at 400 (bg #0 + 400), Inode bitmap at 416 (bg #0 + 416)
Inode表位于 8097-8608 (bg #0 + 8097)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 491520-524287
可用inode数: 122881-131072
Group 16: (Blocks 524288-557055) [INODE_UNINIT]
Checksum 0x7228, unused inodes 8192
Block bitmap at 524288 (+0), Inode bitmap at 524304 (+16)
Inode表位于 524320-524831 (+32)
28656 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 524296-524303, 524312-524319, 528416-557055
可用inode数: 131073-139264
Group 17: (Blocks 557056-589823) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0x6388, unused inodes 8192
Block bitmap at 524289 (bg #16 + 1), Inode bitmap at 524305 (bg #16 + 17)
Inode表位于 524832-525343 (bg #16 + 544)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 557056-589823
可用inode数: 139265-147456
Group 18: (Blocks 589824-622591) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0xb128, unused inodes 8192
Block bitmap at 524290 (bg #16 + 2), Inode bitmap at 524306 (bg #16 + 18)
Inode表位于 525344-525855 (bg #16 + 1056)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 589824-622591
可用inode数: 147457-155648
Group 19: (Blocks 622592-655359) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0xff48, unused inodes 8192
Block bitmap at 524291 (bg #16 + 3), Inode bitmap at 524307 (bg #16 + 19)
Inode表位于 525856-526367 (bg #16 + 1568)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 622592-655359
可用inode数: 155649-163840
Group 20: (Blocks 655360-688127) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0x546b, unused inodes 8192
Block bitmap at 524292 (bg #16 + 4), Inode bitmap at 524308 (bg #16 + 20)
Inode表位于 526368-526879 (bg #16 + 2080)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 655360-688127
可用inode数: 163841-172032
Group 21: (Blocks 688128-720895) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0x1a0b, unused inodes 8192
Block bitmap at 524293 (bg #16 + 5), Inode bitmap at 524309 (bg #16 + 21)
Inode表位于 526880-527391 (bg #16 + 2592)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 688128-720895
可用inode数: 172033-180224
Group 22: (Blocks 720896-753663) [INODE_UNINIT, BLOCK_UNINIT]
Checksum 0xc8ab, unused inodes 8192
Block bitmap at 524294 (bg #16 + 6), Inode bitmap at 524310 (bg #16 + 22)
Inode表位于 527392-527903 (bg #16 + 3104)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 720896-753663
可用inode数: 180225-188416
Group 23: (Blocks 753664-786431) [INODE_UNINIT]
Checksum 0xe548, unused inodes 8192
Block bitmap at 524295 (bg #16 + 7), Inode bitmap at 524311 (bg #16 + 23)
Inode表位于 527904-528415 (bg #16 + 3616)
32768 free blocks, 8192 free inodes, 0 directories, 8192个未使用的inodes
可用块数: 753664-786431
可用inode数: 188417-196608

dumpe2fs -h /dev/sdb1   查看sdb1的ext系统的超级块信息(-h 查看超级块信息,不显示分组信息)

由以上的信息可以看出,超级块保存在块组0的第一个块内,并在1、3、5、7、9几个块组的第一个块留有备份(如果文件系统的块比较多,后面还会有备份)

注意:在创建文件系统时,也会有超级块存储位置的明确位置的。

直接查看超级块保存的位置: dumpe2fs /dev/sdb1 | grep  -i superblock
[root@joker-7-01 ~]# dumpe2fs /dev/sdb1 | grep -i superblock
dumpe2fs 1.42.9 (28-Dec-2013)
主 superblock at 0, Group descriptors at 1-1
备份 superblock at 32768, Group descriptors at 32769-32769
备份 superblock at 98304, Group descriptors at 98305-98305
备份 superblock at 163840, Group descriptors at 163841-163841
备份 superblock at 229376, Group descriptors at 229377-229377
备份 superblock at 294912, Group descriptors at 294913-294913

修复ext系列文件系统

fsck和e2fsck可以修复ext的文件系统

fsck -a /dev/sdb1  如果文件系统有错,则自动修复

ext系统的超级块的更多相关文章

  1. Android系统在超级终端下必会的命令大全(adb shell命令大全)

    . 显示系统中全部Android平台: android list targets . 显示系统中全部AVD(模拟器): android list avd . 创建AVD(模拟器): android c ...

  2. Linux 虚拟文件系统四大对象:超级块、inode、dentry、file之间关系

    更多嵌入式原创文章,请关注公众号:一口Linux 一:文件系统 1. 什么是文件系统? 操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统. 通常文件系统是用于存储和组织文件的一 ...

  3. linux操作系统故障处理-ext4文件系统超级块损坏修复

    linux操作系统故障处理-ext4文件系统超级块损坏修复   背景 前天外面出差大数据测试环境平台有7台服务器挂了,同事重启好了五台服务器,但是还有两台服务器启动不起来,第二天回来后我和同事再次去机 ...

  4. Linux 文件系统错误的修复方法 ddrescue替代dd的恢复软件 备用超级块

    Linux 文件系统错误的修复方法  ddrescue替代dd的恢复软件  备用超级块 最近处理的一件 linux 服务器断电导致文件系统启动后文件系统不可读写,数据不可用的案例,现总结下 Linux ...

  5. 一步一步粗谈linux文件系统(三)----超级块(superblock)【转】

    本文转载自:https://blog.csdn.net/fenglifeng1987/article/details/8302921 超级块是来描述整个文件系统信息的,可以说是一个全局的数据结构,可以 ...

  6. 文件系统VFS数据结构(超级块 inode dentry file)(收集整理)

    Linux虚拟文件系统四大对象: 1)超级块(super block) 2)索引节点(inode) 3)目录项(dentry) 4)文件对象(file) 一个进程在对一个文件进行操作时各种对象的引用过 ...

  7. linux超级块和inode 详解 和 df 、du 命令详解与环境变量

    一.inode块,Unix文件的核心. 首先需要明白的是,在Unix操作系统中的任何资源都被当作文件来管理.如目录.光驱.终端设备等等,都被当作是一种文件.从这方面来说,Unix操作系统中的所有的目录 ...

  8. 81 dumpe2fs-打印“ext2/ext3”文件系统的超级块和快组信息

    dumpe2fs打印"ext2/ext3"文件系统的超级块和快组信息. 语法 dumpe2fs (选项) (参数) 选项 -b:打印文件系统中预留的块信息: -ob<超级块& ...

  9. 从ext2文件系统上读出超级块

    概述            本篇博客中,我们将仔细分析如何从格式化为ext2文件系统的磁盘中读取超级块并填充内存超级块结构,每次将一个格式化了ext2文件系统的磁盘(分区)挂载到挂载点的时候会调用该方 ...

随机推荐

  1. 机器学习(Machine Learning)与深度学习(Deep Learning)资料汇总

    <Brief History of Machine Learning> 介绍:这是一篇介绍机器学习历史的文章,介绍很全面,从感知机.神经网络.决策树.SVM.Adaboost到随机森林.D ...

  2. Union All 使用注意事项和字段顺序不一致导致的异常

    使用注意,先说结果: UNION 操作符用于合并两个或多个 SELECT 语句的结果集,这里需要注意的是: UNION 内部的 SELECT 语句必须拥有相同数量的列: 列也必须拥有相似的数据类型(实 ...

  3. Spring mybatis源码篇章-动态SQL节点源码深入

    通过阅读源码对实现机制进行了解有利于陶冶情操,承接前文Spring mybatis源码篇章-动态SQL基础语法以及原理 前话 前文描述到通过mybatis默认的解析驱动类org.apache.ibat ...

  4. 【AtCoder】AGC003

    AGC编号越小越水???? AGC003 A - Wanna go back home 相对方向要么一起有要么一起没有 #include <bits/stdc++.h> #define f ...

  5. 超详细,新手都能看懂 !使用SpringBoot+Dubbo 搭建一个简单的分布式服务

    来自:JavaGuide Github 地址:https://github.com/Snailclimb/springboot-integration-examples 目录: 使用 SpringBo ...

  6. dev gridview 单元格值拖拽替换

    public class GridViewDropCell { //dvginfo根据鼠标点击的x.y坐标获取该点的相关信息 private GridHitInfo downHitInfo; priv ...

  7. WINAPI与CALLBACK

    #define WINAPI __stdcall #define CALLBACK __stdcall   都是__stdcall,无本质区别. CALLBACK只是为了告诉我们这是一个回调函数.

  8. 关于Mybatis的几件小事(一)

    一.Mybatis简介 1.Mybatis简介 MyBatis是支持定制化SQL.存储过程以及高级映射的优秀的持久层框架. MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集. M ...

  9. css的一些基础方法

    1.css样式表分别有: 内联样式表 <!DOCTYPE html> <html lang="en"> <head> <meta char ...

  10. script标签所应放的位置

    一般放置的位置:<head>标签内,<body>标签内,<body>标签后(建议放在body标签后,利于页面的优化,优化页面结构加载的速度) 1.<head& ...