记录次etcd故障,fatal error: bus error

报错现象

实际报错只有fatal error: bus error

解读:"总线错误(bus error)" 通常与以下原因相关:

硬件故障:内存坏块、磁盘物理损坏或 I/O 错误,导致 etcd 读取 / 写入数据时触发底层硬件异常。

数据文件损坏:etcd 的wal(预写日志)或snap(快照)文件因磁盘错误或异常关闭损坏,无法被正常解析。

架构兼容性问题:结合之前的arm64架构不支持提示,可能是 etcd 二进制与 arm64 架构存在兼容问题,导致运行时内存访问异常。

处理

硬件故障和兼容性可以排查确认,最后如果数据损坏怎么处理。

复制代码
file $(which etcd)

因为是初始化环境遇见的问题,这种情况只需要删除数据重新部署即可。

集群1.21.5版本,部署的etcd是v3.4.15,换成较新的v3.4.37版本,https://github.com/etcd-io/etcd/releases/tag/v3.4.37

根据集群部署的方式更换

把data-dir数据备份移走之后重新部署新版本,服务正常。

复制代码
# 停服(若已启动)
systemctl stop etcd

# 备份数据目录(防止误操作)
mv /etcd /etcd_bak_$(date +%F)

# 重建数据目录并设置权限
mkdir -p /etcd
chown -R etcd:etcd /etcd
chmod 700 /etcd  # 修复日志中提到的权限不安全问题

# 启动
systemctl start etcd
相关推荐
jiayou641 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
李广坤2 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
Sinclair2 天前
简单几步,安卓手机秒变服务器,安装 CMS 程序
android·服务器
Rockbean3 天前
用40行代码搭建自己的无服务器OCR
服务器·python·deepseek
爱可生开源社区3 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
茶杯梦轩3 天前
CompletableFuture 在 项目实战 中 创建异步任务 的核心优势及使用场景
服务器·后端·面试
随逸1773 天前
《从零搭建NestJS项目》
数据库·typescript
海天鹰4 天前
【免费】PHP主机=域名+解析+主机
服务器
加号34 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏4 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker