使用dd命令遇到的xfs错误无法加载sysroot目录

博主在尝试使用dd命令克隆xfs分区的系统到新硬盘时遇到启动问题,xfs_repair也无法解决。发现只有当原始系统为ext4格式时,克隆过程才成功。此问题可能导致后续者遭遇类似困扰,建议在克隆系统时注意文件系统的兼容性和克隆方法。

使用场景描述

使用dd命令克隆原有现场的封装好的系统到另外一块硬盘(因为现有的系统已经安装了公司现有开发好的标准服务很多),为了方便,将现有的系统文件全部克隆到新硬盘,新硬盘插入新的服务器开机遇到

无法加载/sysroot目录,有个xfs报错

后来百度各种搜索执行命令修复xfs_repair -v -L /dev/dm-0 基本是解决不了问题,系统还是启动不起来。

就是很奇怪,为何不行呢?结果又克隆了另外一个系统,经过不下十几遍的安装操作系统,发现如果自己原有的系统是xfs分区格式的,用dd克隆过去的就是不行。

如果自己原有的是ext4格式的,用dd命令克隆过去是可以正常开机的。

真的很惨痛,希望后来者避免这个坑。

XFS(Extended File System)是一种高性能的日志文件系统,当遇到错误时,可以使用`fusermount`和`xfs_repair`命令配合`fack`来尝试修复。`fack`是一个针对XFS的日志分析和故障恢复工具。以下是修复流程: 1. **停止写入**: 先确保文件系统上再有任何写入操作,因为`xfs_repair`需要一个稳定的环境。通过运行: ``` umount /dev/sdX1 # 将sdb1替换成你的实际设备名称 ``` 2. **检查错误**: 使用`fusermount`只读地检查错误: ``` fusermount -u /dev/sdX1 fack -l /dev/sdX1 ``` 这将列出所有关于XFS的活动日志和潜在问题。 3. **确定问题**: 根据`fack`输出的信息判断问题所在,可能包括碎片、损坏的超级块或元数据等问题。 4. **手动修复**: 对于一些特定的问题,比如碎片过多,可以用`xfs_filler`工具。例如: ``` xfs_filler /dev/sdX1 ``` 但是,大部分情况应该直接交给`xfs_repair`: 5. **运行修复工具**: ``` xfs_repair -r /dev/sdX1 ``` `-r`标志表示进行在线修复。修复过程可能需要一段时间,期间设备可能会响应。 6. **验证修复**: 修复完成后,再次尝试挂载: ``` mount /dev/sdX1 /your mount point fsck.xfs -p /dev/sdX1 # 使用fsck进行额外检查 ``` 7. **检查服务**: 如果修复成功,系统应该能够正常运行。检查相关服务是否已恢复正常。 请注意,如果`xfs_repair`无法解决,可能需要重新分区和格式化,或者寻求专业帮助。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值