Re: New User: PostgreSQL Setup - "The Program 'postgress' is needed by initdb but was not found in the same directory..."

From: Patrick Kevin McCaffrey <pkm(at)uwm(dot)edu>
To: Steve Atkins <steve(at)blighty(dot)com>
Cc: PostgreSQL General <pgsql-general(at)postgresql(dot)org>
Subject: Re: New User: PostgreSQL Setup - "The Program 'postgress' is needed by initdb but was not found in the same directory..."
Date: 2011-12-19 16:20:07
Message-ID: 286340621.857374.1324311607390.JavaMail.root@mail18.pantherlink.uwm.edu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

> Hello,
>
> I'm new to PostgreSQL, but am trying to set up a server on my machine. The PostgreSQL server is to run inside of a LXC container - I'm not sure if this is contributing to my problem or not, but it's worth mentioning. The main OS (host) of my machine is Ubuntu 11.10 (mostly, some packages are updated to newer versions), and my guest OS (inside the container) is Debian. I compiled PostgreSQL from source, and installed it inside the container. However, I did have to use the "without zlib" and "without readline" options to compile. This is strange, as both libraries are installed (confirmed via aptitude).

The development packages for them may not be installed - zlib1g-dev and libreadline-dev - without those, you can't build applications against those libraries.

> I'm following the instructions that come with the source, and am stuck on this line:
>
> /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
>
> When I run it, I get the following:
>
> sh: cannot create /dev/null: Permission denied

This line suggests that your environment is broken - the chroot container hasn't been set up fully.

> fgets failure: Success

This isn't good, either. I'm suspicious of your lxc chroot.

> The program "postgres" is needed by initdb but was not found in the
> same directory as "/usr/local/pgsql/bin/initdb".

This suggests that your build broke. Is there a /usr/local/pgsql/bin/postgres binary?

> Check your installation.
>
> initdb and postgres both reside in /usr/local/pgsql/bin, which I've also added to my PATH. Any help would be appreciated. I was hoping PostgreSQL would be reasonably straightforward to install. So far I've tried the Ubuntu tutorials, as well as one or two others online. Now I'm installing from source and using a mailing list....so much for simplicity.
>
> I realize using LXC containers may add a layer of complexity, but what is it that I'm missing here?

LXC is definitely part of your problem - it sounds like your chroot isn't being set up correctly.

Once that's fixed, you'd still be better installing postgresql from apt. If, for some reason, you need to build it from source I'd suggest building it on your host (Ubuntu) first, so you can see what a build looks like on a working platform before trying to build it in the lxc chroot.

>>>Thanks for the reply. I actually tried installing via apt before building from source, and I got the same results that I have now. I'm a bit confused, as the container appears to work correctly. I set it up a template using debootstrap, and have been copying that template container (and editing the necessary files, like /etc/network/interfaces and such). On of my containers runs an email server (Dovecot and Postfix), and everything appears to work fine there.

I'll try installing PG on the host side (Ubuntu) and see what I get. Also, I'll probably send out an email to the LXC mailing list and see what they think.

Pat

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Marti Raudsepp 2011-12-19 16:25:21 Re: Feature Request: Better handling of foreign keys in DELETE statements
Previous Message Magnus Hagander 2011-12-19 16:18:02 Re: Changing Passwords as Encrypted not Clear-Text