- 主题:这 btrfs 报错,文件系统没救了吧? (转载)
【 以下文字转载自 LinuxDev 讨论区 】
发信人: hgoldfish (老鱼), 信区: LinuxDev
标 题: 这 btrfs 报错,文件系统没救了吧?
发信站: 水木社区 (Tue Feb 17 17:35:52 2026), 站内
[4577327.581156] BTRFS: Transaction aborted (error -17)
[4577327.581231] WARNING: CPU: 11 PID: 6066 at ../fs/btrfs/extent-tree.c:1523 __btrfs_inc_extent_ref+0x243/0x250 [btrfs]
[4577327.581474] CPU: 11 PID: 6066 Comm: btrfs-transacti Tainted: G W n 6.4.0-150600.23.60-default #1 SLE15-SP6 f1157a511e82b5e66a5280abe6e670e5580e4f4e
[4577327.581478] Hardware name: Dell Inc PowerEdge R730xd-10G/0WCJNT, BIOS 2.19.0 12/12/2023
[4577327.581480] RIP: 0010:__btrfs_inc_extent_ref+0x243/0x250 [btrfs]
[4577327.581925] BTRFS: error (device sda1: state A) in __btrfs_inc_extent_ref:1523: errno=-17 Object already exists
[4577327.581932] BTRFS info (device sda1: state EA): forced readonly
[4577327.581935] BTRFS error (device sda1: state EA): failed to run delayed ref for logical 930349056 num_bytes 16384 type 182 action 1 ref_mod 1: -17
[4577327.581942] BTRFS: error (device sda1: state EA) in btrfs_run_delayed_refs:2168: errno=-17 Object already exists
--
修改:hgoldfish FROM 112.47.216.*
FROM 112.47.216.*
查了下硬盘的 smartctl 都没问题。
这个看起来是 btrfs 自己分配 extent 时出了错。
除了重建文件系统外,还有什么招数吗?
数据倒是有备份。
【 在 hgoldfish 的大作中提到: 】
: 【 以下文字转载自 LinuxDev 讨论区 】
: 发信人: hgoldfish (老鱼), 信区: LinuxDev
: 标 题: 这 btrfs 报错,文件系统没救了吧?
: ...................
--
FROM 112.47.216.*
ext4 确实简单实在。
【 在 poocp 的大作中提到: 】
: 我的办法是不用btrfs,不用f2fs,不用bcachefs。我就用ext4,啥问题没有。
--
FROM 112.47.216.*
没有。
格了。
【 在 ttaudi 的大作中提到: 】
: 救回来没?
--
FROM 110.87.26.*
zfs 加不了不同容量的硬盘。
讲道理, btrfs 的功能还是更多。而且数据结构就一个 b+ 树也比 zfs 简单容易理解。
但是实现上不太行。大厂们都不愿意投入。
【 在 aosp 的大作中提到: 】
: zfs mirror稳得很
--
修改:hgoldfish FROM 110.87.26.*
FROM 110.87.26.*
这我就没法忍了哈哈哈。
反正我都双机备份。文件系统坏了就格掉重建。
【 在 cppbuilder 的大作中提到: 】
: 我有个8盘zfs就是不同容量,按小的算也不是不能用..
--
FROM 110.87.26.*
我就是 btrfs mirror 挂掉的。。
看错误信息是 extent 分配出错了。按说那台机器的负载并不重不知道为啥会这样。
【 在 cppbuilder 的大作中提到: 】
: btrfs mirror算是比较稳妥的了,不用焦虑
--
FROM 112.51.42.*