下面为解决问题中报的错误:
Internal error XFS_WANT_CORRUPTED_GOTO at line 1635 of file fs/xfs/libxfs/xfs_alloc.c. Caller xfs_free_extent
Internal error xfs_trans_cancel at line 990 of flie fs/xfs/xfs_trans.c.
xfs_repair: /dev/mapper/cl-root contains a mounted filesystem
xfs_repair: /dev/mapper/cl-root contains a mounted writable filesystem
fatal error – couldn’t initialize XFS library
原因说明
我发觉网上找到的解决内容大部分不说明什么原因,导致大家并不知道是为何,只是跟着解决。有的人可能确实是系统目录挂载的分区出现问题,就解决了,而有的人出问题的并不是系统挂载的目录,就解决不了。
报上面的错误主要是磁盘分区的文件有问题了,所以需要修复。但是拜托大家先查看清楚是哪个挂载目录的分区出现了问题,再去修复对应的磁盘分区。
步骤:
1、首先报了下面错误后,请先查看红框的信息
可以看到是让你输入root密码,然后回车可以看到进入了root用户,可以输入命令了。
首先,先输入下面命令,df是查看已经挂载目录的分区,cat /etc/fstab 查看之前持久化挂载的分区目录信息。可以看出(红框),/book 挂载的目录没了,所以可以推断出是/dev/sdb1这个分区出现问题,需要修复。
df -h
cat /etc/fstab
2、接下来可以修复了,使用下面命令进行修复,不加L参数会报如下错误:
L参数的作用:
加上L参数,会执行完成
xfs_repair -L /dev/sdb1
最后使用下面命令重启,即可解决
init 6
提示:注意如果你修复一些并没有损坏的分区时,会报下面的错误,所以一定要找到损坏的、你需要修复的分区,再去xfs_repair