Ict-创新/LPI/104.2
考生应该能够维护标准文件系统,以及与日志文件系统相关的额外数据。
关键知识领域
- 验证文件系统的完整性。
- 监控可用空间和 inode[检查拼写]。
- 修复简单的文件系统问题。
在块设备上创建文件系统后,您将需要了解如何监控文件系统并检查其是否存在错误,并在可能的情况下从错误中恢复。幸运的是,文件系统提供了一些命令和工具来帮助您完成此过程。
df(磁盘剩余空间)和磁盘使用情况(du)命令可用于报告磁盘剩余空间量,并查询目录和文件使用了多少空间。df 在设备级别运行,而不是目录级别。
df 工具显示已使用和可用的磁盘空间。默认情况下,此信息以 1K 块为单位给出。
$ df -h 文件系统 大小 已用 可用 使用% 挂载点 /dev/hda9 289M 254M 20M 93% / /dev/hda2 23M 7.5M 14M 35% /boot 无 62M 0 61M 0% /dev/shm /dev/hda5 1.4G 181M 1.1G 13% /share /dev/hda7 787M 79M 669M 11% /tmp /dev/hda3 4.3G 3.4G 813M 81% /usr /dev/hda6 787M 121M 627M 17% /var //192.168.123.2/share12G 8.8G 3.7G 71% /mnt/smb |
du 命令将显示磁盘使用情况。这是在每个目录的基础上完成的。du 不能显示可用空间,因为此信息仅在设备级别可用。
以下命令将列出/etc 目录的当前使用情况,以人类可读的单位(使用-h 开关)显示,并且只会打印总计(使用-s 开关)。
# du -sh /etc 62M /etc/ |
与文件系统监控一样,也有许多工具可以维护 Linux 文件系统,这些工具由各个文件系统的创建者提供。
如果文件系统损坏或已损坏,则应针对分区运行 fsck 实用程序(最低要求是文件系统未挂载或以只读方式挂载)。
fsck 充当前端,自动检测分区的文件系统类型。然后,与 mkfs 一样,将相应地调用工具 fsck.ext2、fsck.ext3 fsck.ext4 或 fsck.xfs 来执行系统检查,并在必要时进行修复。由于 ext3 是 Linux 的主要文件系统类型,因此有一个 e2fsck 命令专门处理此文件系统类型。您可以使用以下语法明确指定文件系统类型来调用文件系统检查
fsck –t <fstype> <device>
示例:检查 /dev/sdb10 设备上的 reiserfs 文件系统
# fsck –t reiserfs /dev/sdb10 # fsck.reiserfs /dev/sdb10 |
Ext 文件系统维护工具
由于扩展文件系统是 Linux 上使用最广泛和部署最广泛的文件系统,因此与其他文件系统相比,ext 文件系统支持的工具更多,也更全面。
Ext 文件系统调试命令
debugfs 和 dumpe2fs 很少使用,但可以用来提供有关 ext2、ext3 或 ext4 文件系统的低级信息。
debugfs [ -b blocksize ] [ -s superblock ] [ -f cmd_file ] [ -R request ] [ -V ] [ [ -w ] [ -c ] [ -i ] [ device ] ]
debugfs 程序是一个交互式文件系统调试器。它可用于检查和更改 ext2/3/4 文件系统状态。
进入 debugfs shell 后,就可以使用内部命令来更改目录、检查 inode 数据、删除文件、创建链接、转储 ext3 日志日志等。虽然这是一个非常强大的命令,但应谨慎使用,一般仅在 fsck 命令未能取得进展后使用。
dumpe2fs [ -bfhixV ] [ -ob superblock ] [ -oB blocksize ] device
dumpe2fs 打印 device 上存在的文件系统超级块和块组信息。
dumpe2fs /dev/hda1 dumpe2fs 1.35 (2004 年 2 月 28 日) 文件系统卷名称:/boot1 上次挂载点:<不可用> 文件系统 UUID:d741042c-3eaf-49ee-94c1-7dd8c5459764 文件系统魔数:0xEF53 文件系统修订版号:1(动态) 文件系统功能:has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super 默认挂载选项:(无) 文件系统状态:干净 错误行为:继续 文件系统操作系统类型:Linux inode 计数:25584 块计数:102280 保留块计数:5114 空闲块:80564 空闲 inode:25537 第一个块:1 块大小:1024 碎片大小:1024 保留 GDT 块:256 每组块:8192 每组碎片:8192 每组 inode:1968 每组 inode 块:246 文件系统创建日期:2005 年 5 月 7 日 星期六 10:40:51 上次挂载时间:2005 年 5 月 29 日 星期日 04:08:01 上次写入时间:2005 年 5 月 29 日 星期日 04:08:01 挂载计数:10 最大挂载计数:-1 上次检查时间:2005 年 5 月 7 日 星期六 10:40:51 检查间隔:0(<无>) 保留块 uid:0(用户 root) 保留块 gid:0(组 root) 第一个 inode:11 inode 大小:128 日志 inode:8 默认目录哈希:tea 目录哈希种子:50108791-6a0a-41ff-9608-0485c993eaf9 日志备份:inode 块
主超级块在 1,组描述符在 2-2 块位图在 259 (+258),inode 位图在 260 (+259) inode 表在 261-506 (+260) 0 个空闲块,1942 个空闲 inode,2 个目录 空闲块 空闲 inode:27-1968 [....] |
tune2fs
tune2fs 允许您调整 Linux 扩展文件系统上的各种文件系统参数。以下是调整扩展文件系统设置的最常用参数列表
- -c 设置在强制执行文件系统检查之前,文件系统将被挂载的次数。这通常在下次启动时进行,但可以在手动卸载文件系统时运行。
- -C 设置自上次检查后,文件系统被挂载的次数。
- -L 设置卷标签,这曾经用于唯一标识硬盘分区,但现在正被 UUID 替换。
- -i 设置文件系统检查之间的最大时间。当时间到期或挂载次数超过最大次数时,将强制执行文件系统检查,以先到者为准。
- -j 将日志记录添加到 ext2 文件系统中,使其成为 ext3 文件系统。
运行 tune2fs -l 将打印出文件系统的当前设置。
tune2fs 1.41.11 (2010 年 3 月 14 日) 文件系统卷名称:<无> 上次挂载点:/ 文件系统 UUID:6f4746c6-777e-4937-92ee-de98cf8f5aa4 文件系统魔数:0xEF53 文件系统修订版号:1(动态) 文件系统功能: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 文件系统标志:signed_directory_hash 默认挂载选项:(无) 文件系统状态:干净 错误行为:继续 文件系统操作系统类型:Linux inode 计数:26558464 块计数:106205707 保留块计数:5310285 空闲块:62912050 空闲 inode:25721258 第一个块:0 块大小:4096 碎片大小:4096 保留 GDT 块:998 每组块:32768 每组碎片:32768 每组 inode:8192 每组 inode 块:512 RAID 步长:32747 灵活块组大小:16 文件系统创建日期:2010 年 2 月 13 日 星期六 00:48:21 上次挂载时间:2010 年 9 月 28 日 星期二 07:27:39 上次写入时间:2010 年 9 月 21 日 星期二 09:14:03 挂载计数:22 最大挂载计数:25 上次检查时间:2010 年 9 月 21 日 星期二 09:14:03 检查间隔:15552000(6 个月) 下次检查时间:2011 年 3 月 20 日 星期日 09:14:03 生命周期写入:709 GB 保留块 uid:0(用户 root) 保留块 gid:0(组 root) 第一个 inode:11 inode 大小:256 所需额外 isize:28 理想额外 isize:28 日志 inode:8 第一个孤儿 inode:404853 默认目录哈希:half_md4 目录哈希种子:982f8e6c-db49-49b0-8f65-bce3725b5196 日志备份:inode 块 |
XFS 文件系统维护工具
随 XFS 提供的文件系统完整性检查工具为 xfs_info 和 xfs_metadump。
xfs_metdump 是一款文件系统调试工具,它可以将 xfs 文件系统元数据转储到文件中。该文件可用于调试文件或作为备份。之后,可以使用 xfs_restore 工具恢复元数据。
使用文件、术语和工具:* du
- df
- fsck
- e2fsck
- mke2fs
- debugfs
- dumpe2fs
- tune2fs
- xfs 工具(例如 xfs_metdump 和 xfs_info)