linux ext3 ext4 查看,技术|Linux 中管理 EXT2、 EXT3 和 EXT4 健康状况的 4 个工具
文件系统是一个在计算机上帮你去管理数据怎么去存储和检索的数据结构。文件系统也可以被视作是磁盘上的物理(或扩展)分区。如果它没有很好地被维护或定期监视,它可能在长期运行中出现各种各样的错误或损坏。
这里有几个可能导致文件系统出问题的因素:系统崩溃、硬件或软件故障、 有问题的驱动和程序、不正确的优化、大量的数据过载加上一些小故障。
这其中的任何一个问题都可以导致 Linux 不能顺利地挂载(或卸载)一个文件系统,从而导致系统故障。
另外,受损的文件系统运行在你的系统上可能导致操作系统中的组件或用户应用程序的运行时错误,它可能会进一步扩大到服务器数据的丢失。为避免文件系统错误或损坏,你需要去持续关注它的健康状况。
在这篇文章中,我们将介绍监视或维护一个 ext2、ext3 和 ext4 文件系统健康状况的工具。在这里描述的所有工具都需要 root 用户权限,因此,需要使用 sudo 命令去运行它们。
怎么去查看 EXT2/EXT3/EXT4 文件系统信息
dumpe2fs 是一个命令行工具,用于去转储 ext2/ext3/ext4 文件系统信息,这意味着它可以显示设备上文件系统的超级块和块组信息。
在运行 dumpe2fs 之前,先去运行 df -hT 命令,确保知道文件系统的设备名。
$ sudo dumpe2fs /dev/sda10
示例输出:
dumpe2fs 1.42.13 (17-May-2015)
Filesystem volume name:
Last mounted on: /
Filesystem UUID: bb29dda3-bdaa-4b39-86cf-4a6dc9634a1b
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent 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: 21544960
Block count: 86154752
Reserved block count: 4307737
Free blocks: 22387732
Free inodes: 21026406
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 1003
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Flex block group size: 16
Filesystem created: Sun Jul 31 16:19:36 2016
Last mount time: Mon Nov 6 10:25:28 2017
Last write time: Mon Nov 6 10:25:19 2017
Mount count: 432
Maximum mount count: -1
Last checked: Sun Jul 31 16:19:36 2016
Check interval: 0 ()
Lifetime writes: 2834 GB
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
First orphan inode: 6947324
Default directory hash: half_md4
Directory Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805
Journal backup: inode blocks
Journal features: journal_incompat_revoke
Journal size: 128M
Journal length: 32768
Journal sequence: 0x00580f0c
Journal start: 12055
你可以通过 -b 选项来显示文件系统中的任何保留块,比如坏块(无输出说明没有坏块):
$ sudo dumpe2fs -b
检查 EXT2/EXT3/EXT4 文件系统的错误
e2fsck 用于去检查 ext2/ext3/ext4 文件系统的错误。fsck 可以检查并且可选地 修复 Linux 文件系统;它实际上是底层 Linux 提供的一系列文件系统检查器 (fsck.fstype,例如 fsck.ext3、fsck.sfx 等等) 的前端程序。
记住,在系统引导时,Linux 会为 /etc/fstab 配置文件中被标为“检查”的分区自动运行 e2fsck/fsck。而在一个文件系统没有被干净地卸载时,一般也会运行它。
注意:不要在已挂载的文件系统上运行 e2fsck 或 fsck,在你运行这些工具之前,首先要去卸载分区,如下所示。
$ sudo unmount /dev/sda10
$ sudo fsck /dev/sda10
此外,可以使用 -V 开关去启用详细输出,使用 -t 去指定文件系统类型,像这样:
$ sudo fsck -Vt ext4 /dev/sda10
调优 EXT2/EXT3/EXT4 文件系统
我们前面提到过,导致文件系统损坏的其中一个因素就是不正确的调优。你可以使用 tune2fs 实用程序去改变 ext2/ext3/ext4 文件系统的可调优参数,像下面讲的那样。
去查看文件系统的超级块,包括参数的当前值,使用 -l 选项,如下所示。
$ sudo tune2fs -l /dev/sda10
示例输出:
tune2fs 1.42.13 (17-May-2015)
Filesystem volume name:
Last mounted on: /
Filesystem UUID: bb29dda3-bdaa-4b39-86cf-4a6dc9634a1b
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent 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: 21544960
Block count: 86154752
Reserved block count: 4307737
Free blocks: 22387732
Free inodes: 21026406
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 1003
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Flex block group size: 16
Filesystem created: Sun Jul 31 16:19:36 2016
Last mount time: Mon Nov 6 10:25:28 2017
Last write time: Mon Nov 6 10:25:19 2017
Mount count: 432
Maximum mount count: -1
Last checked: Sun Jul 31 16:19:36 2016
Check interval: 0 ()
Lifetime writes: 2834 GB
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
First orphan inode: 6947324
Default directory hash: half_md4
Directory Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805
Journal backup: inode blocks
接下来,使用 -c 标识,你可以设置文件系统在挂载多少次后将进行 e2fsck 检查。下面这个命令指示系统每挂载 4 次之后,去对 /dev/sda10 运行 e2fsck。
$ sudo tune2fs -c 4 /dev/sda10
tune2fs 1.42.13 (17-May-2015)
Setting maximal mount count to 4
你也可以使用 -i 选项定义两次文件系统检查的时间间隔。下列的命令在两次文件系统检查之间设置了一个 2 天的时间间隔。
$ sudo tune2fs -i 2d /dev/sda10
tune2fs 1.42.13 (17-May-2015)
Setting interval between checks to 172800 seconds
现在,如果你运行下面的命令,你可以看到对 /dev/sda10 已经设置了文件系统检查的时间间隔。
$ sudo tune2fs -l /dev/sda10
示例输出:
Filesystem created: Sun Jul 31 16:19:36 2016
Last mount time: Mon Nov 6 10:25:28 2017
Last write time: Mon Nov 6 13:49:50 2017
Mount count: 432
Maximum mount count: 4
Last checked: Sun Jul 31 16:19:36 2016
Check interval: 172800 (2 days)
Next check after: Tue Aug 2 16:19:36 2016
Lifetime writes: 2834 GB
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
First orphan inode: 6947324
Default directory hash: half_md4
Directory Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805
Journal backup: inode blocks
要改变缺省的日志参数,可以使用 -J 选项。这个选项也有子选项: size=journal-size (设置日志的大小)、device=external-journal (指定日志存储的设备)和 location=journal-location (定义日志的位置)。
注意,这里一次仅可以为文件系统设置一个日志大小或设备选项:
$ sudo tune2fs -J size=4MB /dev/sda10
最后,同样重要的是,可以去使用 -L 选项设置文件系统的卷标,如下所示。
$ sudo tune2fs -L "ROOT" /dev/sda10
调试 EXT2/EXT3/EXT4 文件系统
debugfs 是一个简单的、交互式的、基于 ext2/ext3/ext4 文件系统的命令行调试器。它允许你去交互式地修改文件系统参数。输入 ? 查看子命令或请求。
$ sudo debugfs /dev/sda10
缺省情况下,文件系统将以只读模式打开,使用 -w 标识去以读写模式打开它。使用 -c 选项以灾难(catastrophic)模式打开它。
示例输出:
debugfs 1.42.13 (17-May-2015)
debugfs: ?
Available debugfs requests:
show_debugfs_params, params
Show debugfs parameters
open_filesys, open Open a filesystem
close_filesys, close Close the filesystem
freefrag, e2freefrag Report free space fragmentation
feature, features Set/print superblock features
dirty_filesys, dirty Mark the filesystem as dirty
init_filesys Initialize a filesystem (DESTROYS DATA)
show_super_stats, stats Show superblock statistics
ncheck Do inode->name translation
icheck Do block->inode translation
change_root_directory, chroot
....
要展示未使用空间的碎片,使用 freefrag 请求,像这样:
debugfs: freefrag
示例输出:
Device: /dev/sda10
Blocksize: 4096 bytes
Total blocks: 86154752
Free blocks: 22387732 (26.0%)
Min. free extent: 4 KB
Max. free extent: 2064256 KB
Avg. free extent: 2664 KB
Num. free extent: 33625
HISTOGRAM OF FREE EXTENT SIZES:
Extent Size Range : Free extents Free Blocks Percent
4K... 8K- : 4883 4883 0.02%
8K... 16K- : 4029 9357 0.04%
16K... 32K- : 3172 15824 0.07%
32K... 64K- : 2523 27916 0.12%
64K... 128K- : 2041 45142 0.20%
128K... 256K- : 2088 95442 0.43%
256K... 512K- : 2462 218526 0.98%
512K... 1024K- : 3175 571055 2.55%
1M... 2M- : 4551 1609188 7.19%
2M... 4M- : 2870 1942177 8.68%
4M... 8M- : 1065 1448374 6.47%
8M... 16M- : 364 891633 3.98%
16M... 32M- : 194 984448 4.40%
32M... 64M- : 86 873181 3.90%
64M... 128M- : 77 1733629 7.74%
128M... 256M- : 11 490445 2.19%
256M... 512M- : 10 889448 3.97%
512M... 1024M- : 2 343904 1.54%
1G... 2G- : 22 10217801 45.64%
debugfs:
通过去简单浏览它所提供的简要描述,你可以试试更多的请求,比如,创建或删除文件或目录,改变当前工作目录等等。要退出 debugfs,使用 q。
现在就这些!我们收集了不同分类下的相关文章,你可以在里面找到对你有用的内容。
文件系统使用信息:
检查磁盘或分区健康状况:
维护一个健康的文件系统可以提升你的 Linux 系统的整体性能。如果你有任何问题或更多的想法,可以使用下面的评论去分享。
本文由 LCTT 原创编译,Linux中国 荣誉推出
linux ext3 ext4 查看,技术|Linux 中管理 EXT2、 EXT3 和 EXT4 健康状况的 4 个工具相关推荐
- linux显示usb内容,技术|Linux中显示系统中USB信息的lsusb命令
通用串行总线(USB)被设计成为连接计算机外设的标准,如键盘.鼠标.打印机.数码相机.便携式媒体播放器.磁盘和网络适配器等等 - 来源:Wikipedia 它已经成为了一个工业标准,现在很难看到一个没 ...
- linux有哪些容器技术,Linux容器技术和docker
发展历程: 容器技术最早出现在FreeBSD上叫做 jail,将一个进程放入jail中运行,不管这个进程在其中发生怎样的错误都不会影响到系统上其他进程的运行 jail技术在Linux中的实现叫做vse ...
- linux重定向到程序,技术|Linux I/O 重定向基础
Linux 管理的一个最重要并且有趣的话题是 I/O 重定向.此功能在命令行中使你能够将命令的输入输出取自或送到文件中,或者可以使用管道将多个命令连接在一起以形成所谓的"命令管道" ...
- Linux请求调页技术,linux零页技术.doc
linux零页技术 Linux 中的零拷贝技术,第 1 部分 概述 黄 晓晨, 软件工程师, IBM 黄晓晨,IBM system Z 自动化技术支持软件工程师. 冯 瑞, 软件工程师, IBM 冯瑞 ...
- linux的相关优化技术,Linux性能优化及跟踪.md
# Linux性能优化及跟踪 # 说明: * 图例.术语及内容很多来源于互联网,尤其是[Brendan Gredd' Blog](http://www.brendangregg.com/).[leez ...
- 鸟哥的Linux私房菜(基础篇)- 附录 B: EXT2 / EXT3 文件系统
附录 B: EXT2 / EXT3文件系统 第二延伸文件系统 (EXT2) 全文出处: http://www.freeos.com/articles/3912/ 第二延伸文件系统(ext2)介绍 自从 ...
- linux服务器状态查看命令,Linux服务器操作系统查看命令
Linux服务器操作系统的性能分析我们可以通过命令来查看详细信息.下面由学习啦小编为大家整理了Linux服务器操作系统查看命令,希望对大家有帮助! Linux服务器操作系统查看命令 一 .linux服 ...
- linux命令ls查看内存,Linux ls 命令详解
Linux ls命令详解 Linux中ls命令用于显示指定工作目录下之内容,其内容就是指定的工作目录所含之文件及子目录,该命令的用法为"ls [参数] [目录名]",其常用参数有& ...
- linux 识别文件类型,技术|Linux 中 7 个判断文件系统类型的方法
文件通过文件系统在磁盘及分区上命名.存储.检索以及更新,文件系统是在磁盘上组织文件的方式. 文件系统分为两个部分:用户数据和元数据(文件名.创建时间.修改时间.大小以及目录层次结构中的位置等). 在本 ...
最新文章
- C++:随笔5---this指针和类的继承
- MOSS字段编辑权限控制方案--发布源码
- Generic Access Profile (GAP)
- 面试官灵魂拷问:为什么 SQL 语句不要过多的 join?
- SpringBoot yaml的配置及使用
- 20150905-Y1506401-19+benz2015+at、crontab等使用方法
- 学习总结之 WebApi 用户登录和匿名登录,及权限验证
- linux下升级glibc-2.14问题
- tomcat日志打印乱码
- Confluence 6 使用 Decorator 宏
- 三年一个人使用虚幻引擎(UDK)开发的一个游戏心路
- 计算机未来发展展望3000字,关于我的计算机职业生涯规划3000字
- 变速恒频风电机组的优缺点_变速恒频双馈风力发电机的主要优点和基本原理
- java mina框架教程_[Java教程]Mina框架HelloWorld入门
- 前端——面试(苏小妍)
- 基于 WebRTC 的 P2P 文件传输
- python的积木式编程
- 2021美赛Latex排版美化 完整代码2
- 一维数组二维数组对称矩阵三角矩阵三对角矩阵地址的计算
- 《CSS3实战》——成林,50实战例 第一天