You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu14.04安装PostgreSQL-9.6.4时initdb报Aborted (core dumped)错误求助

解决Ubuntu 14.04下PostgreSQL 9.6.4 initdb核心转储(exit code 134)问题

我来帮你排查这个问题——exit code 134对应的是SIGABRT信号,说明进程因为严重错误主动终止了,常见原因包括依赖缺失、编译配置问题、权限不足或者系统库兼容性冲突。下面是针对你的场景的具体解决步骤:

1. 补全编译依赖,重新编译安装

Ubuntu 14.04编译PostgreSQL 9.6需要不少基础依赖包,很可能你编译时漏掉了关键库,导致运行时崩溃。先安装完整依赖:

sudo apt-get update
sudo apt-get install build-essential libreadline6-dev zlib1g-dev libssl-dev libxml2-dev libxslt1-dev libpam0g-dev

安装完成后,清理之前的编译残留并重新编译安装:

cd /path/to/postgresql-9.6.4-source
make clean
./configure --prefix=/path/to/install
make
sudo make install

2. 验证目录权限与路径

  • 先确认目标数据目录是干净的:
    rm -rf /path/to/install/data
    mkdir -p /path/to/install/data
    
  • 确保执行initdb的user1对安装目录和数据目录有完整的读写权限:
    sudo chown -R user1:user1 /path/to/install
    
    切换到user1用户后再执行initdb:
    su - user1
    initdb -U user1 -D /path/to/install/data
    

3. 分析核心转储定位具体错误

如果上面的步骤没解决问题,我们可以通过核心转储信息找到崩溃的具体原因:

  • 先开启系统的core dump功能:
    ulimit -c unlimited
    
  • 再次执行initdb,生成core文件后,用gdb分析回溯信息:
    gdb /path/to/install/bin/postgres core
    (gdb) bt
    
    这个回溯会显示崩溃发生在哪个函数或库中,比如如果是glibc相关的问题,你可能需要调整系统库版本(Ubuntu14.04默认glibc 2.19是兼容PostgreSQL9.6的,但可以尝试安装backports版本),或者检查编译时是否链接了错误的库文件。

4. 改用官方仓库安装(更稳定的替代方案)

如果源码编译的问题难以排查,Ubuntu 14.04可以通过PostgreSQL官方仓库直接安装9.6版本,避免编译时的兼容性问题:

# 添加PostgreSQL官方源
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
# 安装PostgreSQL 9.6
sudo apt-get install postgresql-9.6

安装完成后,系统会自动创建postgres用户并初始化数据库集群,你可以直接使用或根据需求调整配置。

内容的提问来源于stack exchange,提问作者faring

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:38:34