zoukankan      html  css  js  c++  java
  • xfs文件系统修复

    1. 错误描述

    启动CentOS7系统,发现进步了图形界面,并报如下错误:

    Error getting authority: Error initializing authority:
    Could not connect: No such file or directory (g-io-error-quark, 1)
    

    根据系统提示:先登录系统,然后使用journalctl -xb查看系统日志。

    使用journalctl -xb命令

    # journalctl -xb
    
    #看到错误上是有关I/O的错误,首先想到是不是磁盘问题,搜索/mount,按n逐步搜索,看下有没有错误

    错误信息:Failed to /mount /dev/sdb1

    肯定是磁盘上坏块等原因,导致mount失败,所以我们可以先在/etc/fstab中,把该块磁盘自动mount注释掉

    2. 解决方法

    2.1 修改/etc/fstab配置文件

    # vi /etc/fstab
    
    #
    # /etc/fstab
    # Created by anaconda on Mon Jul 30 21:52:27 2018
    #
    # Accessible filesystems, by reference, are maintained under '/dev/disk'
    # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
    #
    /dev/mapper/centos-root /                       xfs     defaults        0 0
    UUID=18e49f02-2719-4b91-aae0-dfb73e36d6bc /boot                   xfs     defaults        0 0
    /dev/mapper/centos-swap swap                    swap    defaults        0 0
    #/dev/sdb1               /data                   xfs     defaults        0 0

    2.2 重启操作系统,让系统能够进入图形界面

    2.3 手动mount磁盘

    # mount /dev/sdb1 /data
    mount: /dev/sdb1 is write-protected, mounting read-only
    mount: wrong fs type, bad option, bad superblock on /dev/sdb1,
           missing codepage or helper program, or other error
    
           In some cases useful info is found in syslog - try
           dmesg | tail or so.
    

    2.4 根据报错信息,修复磁盘(xfs_repair)

    由于磁盘是xfs_repair格式,所以对应的修复命令是xfs_repair

    # xfs_repair /dev/sdb1
    Phase 1 - find and verify superblock...
    bad primary superblock - bad magic number !!!
    
    attempting to find secondary superblock...
    ..............................................

    执行一会儿后…

    verified secondary superblock...
    writing modified primary superblock
    sb realtime bitmap inode 18446744073709551615 (NULLFSINO) inconsistent with calculated value 65
    resetting superblock realtime bitmap ino pointer to 65
    sb realtime summary inode 18446744073709551615 (NULLFSINO) inconsistent with calculated value 66
    resetting superblock realtime summary ino pointer to 66
    Phase 2 - using internal log
            - zero log...
    ERROR: The filesystem has valuable metadata changes in a log which needs to
    be replayed.  Mount the filesystem to replay the log, and unmount it before
    re-running xfs_repair.  If you are unable to mount the filesystem, then use
    the -L option to destroy the log and attempt a repair.
    Note that destroying the log may cause corruption -- please attempt a mount
    of the filesystem before doing this.
    

    提示修复失败,可以尝试使用xfs_repair -L,但可能会造成数据丢失。

    2.5 执行xfs_repair -L

    # xfs_repair -L /dev/sdb1
    Phase 1 - find and verify superblock...
    sb realtime bitmap inode 18446744073709551615 (NULLFSINO) inconsistent with calculated value 65
    resetting superblock realtime bitmap ino pointer to 65
    sb realtime summary inode 18446744073709551615 (NULLFSINO) inconsistent with calculated value 66
    resetting superblock realtime summary ino pointer to 66
    Phase 2 - using internal log
            - zero log...
    ALERT: The filesystem has valuable metadata changes in a log which is being
    destroyed because the -L option was used.
            - scan filesystem freespace and inode maps...
    agi unlinked bucket 1 is 6368769 in ag 2 (inode=73477633)
    agi unlinked bucket 2 is 6368770 in ag 2 (inode=73477634)
    agi unlinked bucket 3 is 6368771 in ag 2 (inode=73477635)
    agi unlinked bucket 4 is 6368772 in ag 2 (inode=73477636)
    agi unlinked bucket 15 is 53775 in ag 2 (inode=67162639)
    agi unlinked bucket 16 is 53776 in ag 2 (inode=67162640)
    agi unlinked bucket 17 is 53777 in ag 2 (inode=67162641)
    agi unlinked bucket 21 is 53781 in ag 2 (inode=67162645)
    sb_icount 0, counted 1024
    sb_ifree 0, counted 185
    sb_fdblocks 13100529, counted 9976617
            - found root inode chunk
    Phase 3 - for each AG...
            - scan and clear agi unlinked lists...
            - process known inodes and perform inode discovery...
            - agno = 0
            - agno = 1
            - agno = 2
            - agno = 3
            - process newly discovered inodes...
    Phase 4 - check for duplicate blocks...
            - setting up duplicate extent list...
            - check for inodes claiming duplicate blocks...
            - agno = 0
            - agno = 1
            - agno = 2
            - agno = 3
    Phase 5 - rebuild AG headers and trees...
            - reset superblock...
    Phase 6 - check inode connectivity...
            - resetting contents of realtime bitmap and summary inodes
            - traversing filesystem ...
            - traversal finished ...
            - moving disconnected inodes to lost+found ...
    disconnected inode 67162639, moving to lost+found
    disconnected inode 67162640, moving to lost+found
    disconnected inode 67162641, moving to lost+found
    disconnected inode 67162645, moving to lost+found
    disconnected inode 73477633, moving to lost+found
    disconnected inode 73477634, moving to lost+found
    disconnected inode 73477635, moving to lost+found
    disconnected inode 73477636, moving to lost+found
    Phase 7 - verify and correct link counts...
    Maximum metadata LSN (1:39499) is ahead of log (1:2).
    Format log to cycle 4.
    done
    

    2.6 执行xfs_repair

    # xfs_repair /dev/sdb1
    Phase 1 - find and verify superblock...
    Phase 2 - using internal log
            - zero log...
            - scan filesystem freespace and inode maps...
            - found root inode chunk
    Phase 3 - for each AG...
            - scan and clear agi unlinked lists...
            - process known inodes and perform inode discovery...
            - agno = 0
            - agno = 1
            - agno = 2
            - agno = 3
            - process newly discovered inodes...
    Phase 4 - check for duplicate blocks...
            - setting up duplicate extent list...
            - check for inodes claiming duplicate blocks...
            - agno = 0
            - agno = 1
            - agno = 2
            - agno = 3
    Phase 5 - rebuild AG headers and trees...
            - reset superblock...
    Phase 6 - check inode connectivity...
            - resetting contents of realtime bitmap and summary inodes
            - traversing filesystem ...
            - traversal finished ...
            - moving disconnected inodes to lost+found ...
    Phase 7 - verify and correct link counts...
    done
    

    修复成功

    2.7 手动mount,修改/etc/fstab文件

    # mount /dev/sdb1 /data
    
    
    # vi /etc/fstab
    #
    # /etc/fstab
    # Created by anaconda on Mon Jul 30 21:52:27 2018
    #
    # Accessible filesystems, by reference, are maintained under '/dev/disk'
    # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
    #
    /dev/mapper/centos-root /                       xfs     defaults        0 0
    UUID=18e49f02-2719-4b91-aae0-dfb73e36d6bc /boot                   xfs     defaults        0 0
    /dev/mapper/centos-swap swap                    swap    defaults        0 0
    /dev/sdb1               /data                   xfs     defaults        0 0
    
  • 相关阅读:
    javascript判断页面第一次加载还是刷新操作【转】
    vs 2008 不能切换到设计视图的解决办法
    sql update 触发器 获得被update的行的信息
    方便winform中的数据验证,制作一个使用正则表达式验证数据的复合控件
    求一个n选x的算法
    在html链接里执行js和使用标签事件执行的不同
    咸吃萝卜淡操心:导入xlsx文件表格新增数据
    我亲爱的你,有两副面孔:表格末尾添加新内容
    Torture:跨域访问的功臣:window.name
    那么轻,那么重:图片下载与压缩包下载
  • 原文地址:https://www.cnblogs.com/wanbin/p/9514661.html
Copyright © 2011-2022 走看看