Обсуждение: BUG #15265: The program "initdb" is needed by pg_ctl but was notfound in the same directory as "pg_ctl".

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

BUG #15265: The program "initdb" is needed by pg_ctl but was notfound in the same directory as "pg_ctl".

От
PG Bug reporting form
Дата:
The following bug has been logged on the website:

Bug reference:      15265
Logged by:          Mohammed Shahid Nawaz
Email address:      mohammedshahid.r@gmail.com
PostgreSQL version: 10.4
Operating system:   CentOS7
Description:

Hello,
I am new to this forum, i am facing this issue, where i get the below
error.

sudo -u shahid ./pg_ctl -D /root/pgsql10x/data/ initdb invalid binary
"/root/pgsql10x/bin/pg_ctl" invalid binary "/root/pgsql10x/bin/pg_ctl"
invalid binary "/root/pgsql10x/bin/pg_ctl" The program "initdb" is needed by
pg_ctl but was not found in the same directory as "pg_ctl". Check your
installation.

FYI , I am trying to run this from root. I have built from the source. I am
trying version 10. on CentOS7. I downloaded direct from postgres site. I am
not facing this problem when i run as non-root user.

I have all the files in the bin directory, as shared  below , bin directory
files

-rwxrwxrwx. 1 shahid shahid 7604946 Jul  6 17:19 postgres
lrwxrwxrwx. 1 shahid shahid       8 Jul  6 17:19 postmaster -> postgres
-rwxr-xr-x. 1 shahid shahid  908965 Jul  6 17:19 ecpg
-rwxr-xr-x. 1 shahid shahid  128690 Jul  6 17:19 initdb
-rwxr-xr-x. 1 shahid shahid   30548 Jul  6 17:19 pg_archivecleanup
-rwxr-xr-x. 1 shahid shahid  112608 Jul  6 17:19 pg_basebackup
-rwxr-xr-x. 1 shahid shahid   71241 Jul  6 17:19 pg_receivewal
-rwxr-xr-x. 1 shahid shahid   72771 Jul  6 17:19 pg_recvlogical
-rwxr-xr-x. 1 shahid shahid   30009 Jul  6 17:19 pg_config
-rwxr-xr-x. 1 shahid shahid   39920 Jul  6 17:19 pg_controldata
-rwxr-xr-x. 1 shahid shahid   58438 Jul  6 17:19 pg_ctl
-rwxr-xr-x. 1 shahid shahid  400623 Jul  6 17:19 pg_dump
-rwxr-xr-x. 1 shahid shahid  164991 Jul  6 17:19 pg_restore
-rwxr-xr-x. 1 shahid shahid   97686 Jul  6 17:19 pg_dumpall
-rwxr-xr-x. 1 shahid shahid   49138 Jul  6 17:19 pg_resetwal
-rwxr-xr-x. 1 shahid shahid   88205 Jul  6 17:19 pg_rewind
-rwxr-xr-x. 1 shahid shahid   31798 Jul  6 17:19 pg_test_fsync
-rwxr-xr-x. 1 shahid shahid   26337 Jul  6 17:19 pg_test_timing
-rwxr-xr-x. 1 shahid shahid  130515 Jul  6 17:19 pg_upgrade
-rwxr-xr-x. 1 shahid shahid   86270 Jul  6 17:19 pg_waldump
-rwxr-xr-x. 1 shahid shahid  141273 Jul  6 17:19 pgbench
-rwxr-xr-x. 1 shahid shahid  454216 Jul  6 17:19 psql
-rwxr-xr-x. 1 shahid shahid   60635 Jul  6 17:19 createdb
-rwxr-xr-x. 1 shahid shahid   56335 Jul  6 17:19 dropdb
-rwxr-xr-x. 1 shahid shahid   64416 Jul  6 17:19 createuser
-rwxr-xr-x. 1 shahid shahid   56305 Jul  6 17:19 dropuser
-rwxr-xr-x. 1 shahid shahid   61135 Jul  6 17:19 clusterdb
-rwxr-xr-x. 1 shahid shahid   68735 Jul  6 17:19 vacuumdb
-rwxr-xr-x. 1 shahid shahid   64047 Jul  6 17:19 reindexdb
-rwxr-xr-x. 1 shahid shahid   59104 Jul  6 17:19 pg_isready

Requesting help at the earliest.

Thanks in advance,
Shahid


=?utf-8?q?PG_Bug_reporting_form?= <noreply@postgresql.org> writes:
> sudo -u shahid ./pg_ctl -D /root/pgsql10x/data/ initdb
> invalid binary "/root/pgsql10x/bin/pg_ctl"

I think you would get that error if pg_ctl is unable to stat itself,
which might be due to a permissions problem.  Are you sure the shahid
user can read/exec all the directories in that path (particularly /root)?

            regards, tom lane


Re: BUG #15265: The program "initdb" is needed by pg_ctl but was notfound in the same directory as "pg_ctl".

От
Mohammed Shahid Nawaz
Дата:
Hi Tom,
Thanks for the quick response.
The same build and, the same command works fine on a non-root user. 
Since, this time i am running from a root login, the command i use is as follows.
su - shahid -c '/root/pgsql10x/bin/pg_ctl -D /root/pgsql10x/data/ initdb'

The bin folder has 777 permission with the owner being shahid here.
If you see my post I have shared the ls-lrt output for reference.

I have been using the same command for my earlier 9.6.3 version of build, and it worked without any trouble.

Thanks again,
Mohammed Shahid Nawaz



On Sat 7 Jul, 2018, 1:32 AM Tom Lane, <tgl@sss.pgh.pa.us> wrote:
PG Bug reporting form <noreply@postgresql.org> writes:
> sudo -u shahid ./pg_ctl -D /root/pgsql10x/data/ initdb
> invalid binary "/root/pgsql10x/bin/pg_ctl"

I think you would get that error if pg_ctl is unable to stat itself,
which might be due to a permissions problem.  Are you sure the shahid
user can read/exec all the directories in that path (particularly /root)?

                        regards, tom lane

Re: BUG #15265: The program "initdb" is needed by pg_ctl but was notfound in the same directory as "pg_ctl".

От
Mohammed Shahid Nawaz
Дата:
Hello Everyone,
Can anyone help me with this issue?  As this is being a road block for me, where I am able to run the commands in non-root login, but not from root with sudo or su command.
Requesting help at the earliest.
Thanks in Advance. I

Shahid



On Sat 7 Jul, 2018, 11:30 AM Mohammed Shahid Nawaz, <mohammedshahid.r@gmail.com> wrote:
Hi Tom,
Thanks for the quick response.
The same build and, the same command works fine on a non-root user. 
Since, this time i am running from a root login, the command i use is as follows.
su - shahid -c '/root/pgsql10x/bin/pg_ctl -D /root/pgsql10x/data/ initdb'

The bin folder has 777 permission with the owner being shahid here.
If you see my post I have shared the ls-lrt output for reference.

I have been using the same command for my earlier 9.6.3 version of build, and it worked without any trouble.

Thanks again,
Mohammed Shahid Nawaz



On Sat 7 Jul, 2018, 1:32 AM Tom Lane, <tgl@sss.pgh.pa.us> wrote:
PG Bug reporting form <noreply@postgresql.org> writes:
> sudo -u shahid ./pg_ctl -D /root/pgsql10x/data/ initdb
> invalid binary "/root/pgsql10x/bin/pg_ctl"

I think you would get that error if pg_ctl is unable to stat itself,
which might be due to a permissions problem.  Are you sure the shahid
user can read/exec all the directories in that path (particularly /root)?

                        regards, tom lane
On 2018-07-09 14:24, Mohammed Shahid Nawaz wrote:
> Hello Everyone,
> Can anyone help me with this issue?  As this is being a road block for me,
> where I am able to run the commands in non-root login, but not from root
> with sudo or su command.
> Requesting help at the earliest.
> Thanks in Advance. I
>
> Shahid

It’s probably because /root has its access restricted to just the root
user, so the shahid user can’t get past that first part of the path.

Further, it’s atypical to allow users to do anything inside /root. You should
probably work under /usr/local or in /home/shahid/.

Вложения

Re: BUG #15265: The program "initdb" is needed by pg_ctl but was notfound in the same directory as "pg_ctl".

От
Mohammed Shahid Nawaz
Дата:
Hello Aaron,
Talking about the restrictions, I have given permissions to user Shahid, as equivalent to root by editing the sudoers file.

I did not face this issue in earlier versions and the same setup and command steps worked flawlessly.

I have even given su permission for user shahid to run su commands.


This was never the case with 9.6.3.

I have been running for past 1yr from root by using su / sudo commands to initdb and start the database.

Thanks
Shahid

On Mon 9 Jul, 2018, 3:24 PM Aaron W. Swenson, <titanofold@gentoo.org> wrote:
On 2018-07-09 14:24, Mohammed Shahid Nawaz wrote:
> Hello Everyone,
> Can anyone help me with this issue?  As this is being a road block for me,
> where I am able to run the commands in non-root login, but not from root
> with sudo or su command.
> Requesting help at the earliest.
> Thanks in Advance. I
>
> Shahid

It’s probably because /root has its access restricted to just the root
user, so the shahid user can’t get past that first part of the path.

Further, it’s atypical to allow users to do anything inside /root. You should
probably work under /usr/local or in /home/shahid/.