Thread: New User: PostgreSQL Setup - "The Program 'postgress' is needed by initdb but was not found in the same directory..."
New User: PostgreSQL Setup - "The Program 'postgress' is needed by initdb but was not found in the same directory..."
From
Patrick Kevin McCaffrey
Date:
Hello, First off, sorry if this has been received by everyone already. I sent it last night, and got an error about not being alist member, so I joined, and am resending it now. 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 mymachine 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 usethe "without zlib" and "without readline" options to compile. This is strange, as both libraries are installed (confirmedvia aptitude). 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 fgets failure: Success The program "postgres" is needed by initdb but was not found in the same directory as "/usr/local/pgsql/bin/initdb". 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?
Re: New User: PostgreSQL Setup - "The Program 'postgress' is needed by initdb but was not found in the same directory..."
From
Tom Lane
Date:
Patrick Kevin McCaffrey <pkm@uwm.edu> writes: > 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 LXCcontainer - 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 usethe "without zlib" and "without readline" options to compile. This is strange, as both libraries are installed (confirmedvia aptitude). I don't know Ubuntu at all, but on many Linux distributions the problem would likely be that you don't have the "-devel" or "-dev" subpackages installed for zlib and readline. The base package is enough to run programs against the library, but not enough to compile against. > 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 That's bizarre. I don't know much about LXC either, but it sounds like it's not providing /dev/null to programs inside the container. That's pretty nasty :-(. You might consider trying to get PG running without a container first, so as to debug one problem at a time. regards, tom lane