PostgreSQL server failed to start, could not create lock file: permission denied
Solution 1
Change the owner of /var/run/postgresql
and set it to postgres
:
sudo chown -R postgres:postgres /var/run/postgresql
If the user you are running as does not have sudo privilege, then
Change to root:
su -
Change ownership of
/var/run/postgresql
to userpostgres
and grouppostgres
:chown -R postgres:postgres /var/run/postgresql
I had the same problem when installing postgres
on Ubuntu 14.04 and changing the ownership fixed the problem for me.
Solution 2
The lock file ends up in /var/run
. To fix the permissions of this dir, I needed to run sudo chmod a+w /var/run/postgresql
.
Solution 3
Could you check the file permissions of /var/run?
ls -l /var/run
If 'write' permission is missing, try
sudo chmod o+w /var/run
Related videos on Youtube
dawsondiaz
I am a novice programmer, who sides more with web development. I have most experience with Python, HTML, CSS, and JavaScript. I have created a "hello world," and worked in several other languages including Java, Ruby, and Batch. Links: GitHub
Updated on July 09, 2022Comments
-
dawsondiaz almost 2 years
I am attempting to install and run a postgreSQL server, whenever I install it using
sudo apt-get install postgresql
I get the following error:
* Starting PostgreSQL 9.1 database server * The PostgreSQL server failed to start. Please check the log output: 2014-04-03 17:18:16 PDT FATAL: could not create lock file "/var/run/postgresql/.s.PGSQL.5432.lock": Permission denied [fail] invoke-rc.d: initscript postgresql, action "start" failed. dpkg: error processing postgresql-common (--configure): subprocess installed post-installation script returned error exit status 1 dpkg: dependency problems prevent configuration of postgresql-9.1: postgresql-9.1 depends on postgresql-common (>= 115~); however: Package postgresql-common is not configured yet. dpkg: error processing postgresql-9.1 (--configure): dependency problems - leaving unconfigured dpkg: dependency problems prevent configuration of postgresql: postgresql depends on postgresql-9.1; however: Package postgresql-9.1 is not configured yet. dpkg: error processing postgresql (--configure): dependency problems - leaving unconfigured No apport report written because the error message indicates its a followup error from a previous failure. Errors were encountered while processing: postgresql-common postgresql-9.1 postgresql E: Sub-process /usr/bin/dpkg returned an error code (1)
I am guessing it's a permissions issue; how do I go about solving it? I am running Ubuntu 13.10
-
Jan Krajewski about 10 yearsHere u have the solution. I think that it should help u. askubuntu.com/questions/371722/uninstall-postgresql-from-ubuntu
-
-
dawsondiaz about 10 yearsWhen I enter that I get,
lrwxrwxrwx 1 root root 4 april 1 17:46 /var/run -> /run
I then executesudo chmod o+w /var/run
Then follow that with running the postgresql server, same issue. -
new_sys_admin about 10 yearsCould you try "sudo apt-get update" and then "sudo apt-get install postgresql" ?
-
Craig Ringer about 10 yearsIt's a symlink. What're the perms on
/run
?ls -ld /run
-
dawsondiaz about 10 yearsI tried, however this is what was returned; screenshot
-
Jessica Chiang about 10 yearsHi dawsondiaz, thanks for the screenshot. You have to change to root first. You missed the "sudo" before the chown command. If the dawson user does not have sudo priviledge, then 1) Change to root by "su -" and 2) "chown -R postgres:postgres /var/run/postgresql"
-
danielricecodes over 9 yearsThis worked for me too, but I already had Postgres 9.3 installed. Synaptic Package Manager wanted to issue an update and after that update ran, Postgres failed to restart for the same reason detailed in your question. Manually fixing the permission issue allowed me to restart my local postgres server again.
-
Frederik Krautwald about 9 yearsThis is also the solution on Linux Mint.
-
Mukesh Sai Kumar over 4 yearsI run postgresql as a different user than postgres and it didn't allow me to create a lock file at
/var/run/postgresql
. IMHO allowing global read/writes is bad and I just added my user to thepostgres
group. -
Asalle almost 4 yearson fedora changing owner to
postgres:postgres
didn't work for me, but changing it to my current user workedsudo chown -R $USER:$USER /var/run/postgresql