Thread: permissions.
Hello, What is to be done here, below between the lines is an excerpt from my bash console if I want to start PostgreSQL. ----------------------------------------------------------------------------------------------------- frik@linux-cj2v:/etc/alternatives> postgres -D /bigdisk/data/postgres & [1] 10438 frik@linux-cj2v:/etc/alternatives> 2016-01-12 13:09:29 SAST FATAL: could not create lock file "/var/run/postgresql/.s.PGSQL.5432.lock": Permission denied ------------------------------------------------------------------------------------------------------ mySQL has the same problems. Perhaps worse.I know u do not do mySQL stuff, but still. I can go fix this by changing the permissions of /var/run and /var/run/postgresql/ direc tories but then one will have to change it every single time I want to start the databse. O by the way starting it as a service is even worse because the then it wants to work in it own data directory. Can this not be fixed, I mean linux is linux whichever flavour one my want to use?. Fortunately not all linux programs have these strange permissions hickups. Regards Frik Brits
[not a bug, moving to -general]
On Tue, Jan 12, 2016 at 12:46 PM, Frik Brits <fbrits@lantic.net> wrote:
Hello,
What is to be done here, below between the lines is an excerpt from my
bash console if I want to start PostgreSQL.
-----------------------------------------------------------------------------------------------------
frik@linux-cj2v:/etc/alternatives> postgres -D /bigdisk/data/postgres &
[1] 10438
frik@linux-cj2v:/etc/alternatives> 2016-01-12 13:09:29 SAST FATAL: could
not create lock file "/var/run/postgresql/.s.PGSQL.5432.lock": Permission
denied
------------------------------------------------------------------------------------------------------
mySQL has the same problems. Perhaps worse.I know u do not do mySQL stuff, but
still.
I can go fix this by changing the permissions of /var/run and
/var/run/postgresql/ direc tories but then one will have to change it every
single time I want to start the databse. O by the way starting it as a service
is even worse because the then it wants to work in it own data directory.
Can this not be fixed, I mean linux is linux whichever flavour one my want to
use?.
Fortunately not all linux programs have these strange permissions hickups.
Typically a postgres installation configured in such a way expects that the master process is started by the user named postgres. You can achieve that by using sudo(1) command, e.g: sudo -u postgres COMMAND
In your example:
$ sudo -u postgres postgres -D /bigdisk/data/postgres
Not sure why are you trying to start it in foreground. Please refer to documentation for pg_ctl(1) and your distribution init system. Something like the following should have equivalent effect (that is, starting postgres):
$ sudo pg_ctl -D /bigdisk/data/postgres start
OR
$ sudo service postgresql start
Debian and derivative systems such as Ubuntu provide pg_ctlcluster(1) command to manage multiple clusters and PostgreSQL versions.
Can you elaborate on the problems you encounter when PostgreSQL is started as a service?
--
Alex