Alexander Cohen <alex@toomuchspace.com> writes:
> Im getting this error when trying to start postgres:
> FATAL: could not create lock file "/tmp/.s.PGSQL.5432.lock":
> Permission denied
> im running under an unprivileged user, and have set up pgsql in a
> different place on my hard drive then the normal one. The user does not
> have rights to /tmp, how can i set this up so the tmp file are written
> into a place where the permissions are ok?
My recommendation is to fix the brain-dead permissions on /tmp.
*All* Unix programs expect to be able to write in /tmp ... you are
eventually going to decide that that wasn't a good idea, so why not
now?
It is possible to relocate the socket (in recent PG releases) but it's a
pretty serious pain in the neck, since both the postmaster and the
clients have to be told about the nondefault location. See
unix_socket_directory on the postmaster side. I forget how you tell the
clients about it, but the libpq documentation will tell you. (It's also
possible to configure this at build time in pg_config_manual.h, which
would be a better answer if you're really intent on doing it.)
regards, tom lane