Обсуждение: Starting postmaster on startup in Mac OS X 10.2.4 via shell script

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

Starting postmaster on startup in Mac OS X 10.2.4 via shell script

От
"Barry C. Hawkins"
Дата:
Colleagues,
    I recently installed PostgreSQL 7.3.2 from source on Mac OS X 10.2.4, and I
am wanting to have the server start automatically when the OS starts up.
However, I am having trouble with the shell script to start postmaster.
    I can manually su into the user account under which postmaster runs
(named 'pgsql', surprisingly I am sure) and execute the following command line
successfully:

#: /usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l logfile -i -o

    The shell script equivalent which I am trying to use is as follows:

su -c '/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l logfile -
i -o' pgsql

    Upon login, I open a terminal and run 'pg_ctl status' and it confirms that
postmaster is not running.  I have also tried the following permutations for
the shell script command line:

su - pgsql -c '/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l
logfile -i -o'

su -l pgsql -c '/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l
logfile -i -o'

su -m pgsql -c '/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l
logfile -i -o'

    I am quite new to PostgreSQL, but its feature set seems unparalleled in
open source database platforms, so I really want to get this thing running.
Since I am prompted for the password when I run 'su -l pgsql' manually, I can't
help but think that I am failing to acquire the appropriate context under which
postmaster must run.  My logfile also seems to indicate that.  I am sure this
is some neophyte error on my part, but if one of the sages would be so kind as
to direct me, I would be most grateful.

Regards,
--
Barry C. Hawkins
Systems Consultant
All Things Computed
barry.hawkins@allthingscomputed.com
404-795-9147 voice/fax






Re: Starting postmaster on startup in Mac OS X 10.2.4 via

От
Adam Witney
Дата:
There is a startup item listed on Marc Liyanage's page

http://www.entropy.ch/software/macosx/postgresql/

Look for pgsql-startupitem-1.2.pkg.tar.gz

Never tried it myself though.....

adam


> Colleagues,
>   I recently installed PostgreSQL 7.3.2 from source on Mac OS X 10.2.4, and I
> am wanting to have the server start automatically when the OS starts up.
> However, I am having trouble with the shell script to start postmaster.
>   I can manually su into the user account under which postmaster runs
> (named 'pgsql', surprisingly I am sure) and execute the following command line
> successfully:
>
> #: /usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l logfile -i -o
>
>   The shell script equivalent which I am trying to use is as follows:
>
> su -c '/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l logfile -
> i -o' pgsql
>
>   Upon login, I open a terminal and run 'pg_ctl status' and it confirms that
> postmaster is not running.  I have also tried the following permutations for
> the shell script command line:
>
> su - pgsql -c '/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l
> logfile -i -o'
>
> su -l pgsql -c '/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l
> logfile -i -o'
>
> su -m pgsql -c '/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l
> logfile -i -o'
>
>   I am quite new to PostgreSQL, but its feature set seems unparalleled in
> open source database platforms, so I really want to get this thing running.
> Since I am prompted for the password when I run 'su -l pgsql' manually, I
> can't
> help but think that I am failing to acquire the appropriate context under
> which
> postmaster must run.  My logfile also seems to indicate that.  I am sure this
> is some neophyte error on my part, but if one of the sages would be so kind as
> to direct me, I would be most grateful.
>
> Regards,


--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.


Re: Starting postmaster on startup in Mac OS X 10.2.4 via shell script

От
Jeff Fitzmyers
Дата:
> I recently installed PostgreSQL 7.3.2 from source on Mac OS X 10.2.4,
> and I
> am wanting to have the server start automatically when the OS starts
> up.

The simple way is to download and install this package:
http://www2.entropy.ch/download/pgsql-startupitem-1.2.pkg.tar.gz

The main page:
http://www.entropy.ch/software/macosx/postgresql/

Jeff


Re: Starting postmaster on startup in Mac OS X 10.2.4 via shell script

От
"Barry C. Hawkins"
Дата:
Adam and Jeff,
    Thank you for your replies.  I actually tried using Marc Liyanage's startup
item prior to attempting to write my own.  In fact, Marc uses the following
syntax, which is the same as one of the ones I tried, except that his pg_ctl
path and unprivileged account name differ from mine and the order of the two
switches -i and -o are reversed:

su - postgres -c '/usr/local/bin/pg_ctl start -D /usr/local/pgsql/data -l
logfile -o -i'

    The only difference between what Liyanage does and what I did is the method
for creating the user account to run postmaster.  I used NetInfo manager much
in the way described on Apple's web article for the setup of MySQL
(http://developer.apple.com/internet/macosx/osdb.html - see "Adding a User with
NetInfo Manager").  This worked fine for installing MySQL from source and
configuring it to start automatically; of course, the user account for starting
mysqld can be passed as a command line argument.
    In an effort to test my hypothesis of the user creation method being an
issue, I deleted user pgsql in NetInfo Manager and recreated it through the
Accounts tool in System Preferences in OS X.  I then installed Marc Liyanage's
startup item package over my own and modified the user account and path to
pg_ctl.  I then issued 'sudo chmod -R pgsql /usr/local/pgsql'.  As before, I am
able to su into pgsql and start postmaster, but the startup item fails.
    Creating a user in NetInfo Manager foregoes the creation of a home
directory and a few other minor tasks.  The home directory for a user created
in NetInfo manager is /dev/null by default, so I thought that perhaps this was
causing a hiccup with the su directive passed in the script.  I have now
eliminated that possibility.
    Any other ideas?

Regards,
--
Barry C. Hawkins
Systems Consultant
All Things Computed
barry.hawkins@allthingscomputed.com
404-795-9147 voice/fax



Quoting Adam Witney <awitney@sghms.ac.uk>:

>
> There is a startup item listed on Marc Liyanage's page
>
> http://www.entropy.ch/software/macosx/postgresql/
>
> Look for pgsql-startupitem-1.2.pkg.tar.gz
>
> Never tried it myself though.....
>
> adam
>
>
> > Colleagues,
> >   I recently installed PostgreSQL 7.3.2 from source on Mac OS X 10.2.4, and
> I
> > am wanting to have the server start automatically when the OS starts up.
> > However, I am having trouble with the shell script to start postmaster.
> >   I can manually su into the user account under which postmaster runs
> > (named 'pgsql', surprisingly I am sure) and execute the following command
> line
> > successfully:
> >
> > #: /usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l logfile -i
> -o
> >
> >   The shell script equivalent which I am trying to use is as follows:
> >
> > su -c '/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l
> logfile -
> > i -o' pgsql
> >
> >   Upon login, I open a terminal and run 'pg_ctl status' and it confirms
> that
> > postmaster is not running.  I have also tried the following permutations
> for
> > the shell script command line:
> >
> > su - pgsql -c '/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data
> -l
> > logfile -i -o'
> >
> > su -l pgsql -c '/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data
> -l
> > logfile -i -o'
> >
> > su -m pgsql -c '/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data
> -l
> > logfile -i -o'
> >
> >   I am quite new to PostgreSQL, but its feature set seems unparalleled in
> > open source database platforms, so I really want to get this thing
> running.
> > Since I am prompted for the password when I run 'su -l pgsql' manually, I
> > can't
> > help but think that I am failing to acquire the appropriate context under
> > which
> > postmaster must run.  My logfile also seems to indicate that.  I am sure
> this
> > is some neophyte error on my part, but if one of the sages would be so kind
> as
> > to direct me, I would be most grateful.
> >
> > Regards,
>
>
> --
> This message has been scanned for viruses and
> dangerous content by MailScanner, and is
> believed to be clean.
>
>