Обсуждение: Cannot initdb for 8.2.1 - "..../postgres.bki" does not exist

Поиск
Список
Период
Сортировка

Cannot initdb for 8.2.1 - "..../postgres.bki" does not exist

От
"Simon Kinsella"
Дата:
Hello,

I'm trying to install and init 8.2.1 on a FreeBSD 6.2 server. It used to run
8.1.4 no problem.  I uninstalled 8.1, renamed /usr/local/pgsql  in case I
ever need it (I'm not really bothered about preserving the data) and built
8.2.1 - all fine.

But when I try to initdb:

---
root@cheddar> su -l pgsql
\u@cheddar> /usr/local/bin/initdb -D /usr/local/pgsql/data -E UNICODE
initdb: file "/usr/local/share/postgresql/postgres.bki" does not exist
This means you have a corrupted installation or identified
the wrong directory with the invocation option -L.
---

Tried adding " -L /usr/local/share/postgresql/" (and removing -E) but no
joy.

The .../share/postgresql/ files do exist. Not sure why this is happening
now, it's never happened before. I've got a horrible feeling it's something
embarrassingly simple but I'm stumped. And clues?

Many thanks

---
Simon Kinsella
This message has been scanned for viruses.



Re: Cannot initdb for 8.2.1 - "..../postgres.bki" does not exist

От
Scott Marlowe
Дата:
On Wed, 2007-01-31 at 01:27 +0000, Simon Kinsella wrote:
> Hello,
>
> I'm trying to install and init 8.2.1 on a FreeBSD 6.2 server. It used to run
> 8.1.4 no problem.  I uninstalled 8.1, renamed /usr/local/pgsql  in case I
> ever need it (I'm not really bothered about preserving the data) and built
> 8.2.1 - all fine.
>
> But when I try to initdb:
>
> ---
> root@cheddar> su -l pgsql
> \u@cheddar> /usr/local/bin/initdb -D /usr/local/pgsql/data -E UNICODE
> initdb: file "/usr/local/share/postgresql/postgres.bki" does not exist
> This means you have a corrupted installation or identified
> the wrong directory with the invocation option -L.

I'm go gonna out on a limb here and guess that the files postgresql is
trying to initdb with are 8.1 and not 8.2 version files.

Re: Cannot initdb for 8.2.1 - "..../postgres.bki" does not exist

От
Tom Lane
Дата:
"Simon Kinsella" <simon@bluefiresystems.co.uk> writes:
> \u@cheddar> /usr/local/bin/initdb -D /usr/local/pgsql/data -E UNICODE
> initdb: file "/usr/local/share/postgresql/postgres.bki" does not exist
> This means you have a corrupted installation or identified
> the wrong directory with the invocation option -L.

> The .../share/postgresql/ files do exist.

Looking at the code, this message is emitted if attempting to stat() the
file fails, regardless of what the actual errno is.  So I'm wondering
about permissions problems, specifically inability to search one of the
directories on the path.

We should adjust initdb to report the actual kernel errno value, instead
of presuming that it's "file not found".

            regards, tom lane

Re: Cannot initdb for 8.2.1 - "..../postgres.bki" does not exist

От
"Simon Kinsella"
Дата:
Thanks for your input guys - I had to put this problem on hold for a few
days.

In case it helps anyone in a similar boat, this problem seems to have been
due to a umask of 0027.  Changing to 022 seems to have fixed it.

Cheers,

Simon Kinsella

-----Original Message-----
From: pgsql-admin-owner@postgresql.org
[mailto:pgsql-admin-owner@postgresql.org] On Behalf Of Tom Lane
Sent: Wednesday, January 31, 2007 4:01 AM
To: Simon Kinsella
Cc: pgsql-admin@postgresql.org
Subject: Re: [ADMIN] Cannot initdb for 8.2.1 - "..../postgres.bki" does not
exist

"Simon Kinsella" <simon@bluefiresystems.co.uk> writes:
> \u@cheddar> /usr/local/bin/initdb -D /usr/local/pgsql/data -E UNICODE
> initdb: file "/usr/local/share/postgresql/postgres.bki" does not exist
> This means you have a corrupted installation or identified the wrong
> directory with the invocation option -L.

> The .../share/postgresql/ files do exist.

Looking at the code, this message is emitted if attempting to stat() the
file fails, regardless of what the actual errno is.  So I'm wondering about
permissions problems, specifically inability to search one of the
directories on the path.

We should adjust initdb to report the actual kernel errno value, instead of
presuming that it's "file not found".

            regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster