Thread: BUG #18054: Permission denied.
The following bug has been logged on the website: Bug reference: 18054 Logged by: Brigido Arana Email address: arasopero.1@gmail.com PostgreSQL version: 15.4 Operating system: UbuntuStudio 22.04 Description: I can not make backup and restoration of my db by this issues: baap@baap-notebookpc:~$ sudo su postgres [sudo] password for baap: postgres@baap-notebookpc:/home/baap$ psql could not change directory to "/home/baap": Permission denied psql (15.4 (Ubuntu 15.4-1.pgdg22.04+1)) Can you help me to solve this situation? Thank you very much.
Hi, On Sun, Aug 13, 2023 at 04:26:48AM +0000, PG Bug reporting form wrote: > The following bug has been logged on the website: > > I can not make backup and restoration of my db by this issues: > baap@baap-notebookpc:~$ sudo su postgres > [sudo] password for baap: > postgres@baap-notebookpc:/home/baap$ psql > could not change directory to "/home/baap": Permission denied > psql (15.4 (Ubuntu 15.4-1.pgdg22.04+1)) > > Can you help me to solve this situation? Are you talking about the "Permission denied" line? This is not a bug, just an indication that the current OS user doesn't have permission to use the given directory, and doesn't prevent you from using psql. Of course it means that the postgres OS user can't write data in /home/baap, and won't be able to e.g. save the psql history, but that's something enforced at the OS level not something postgres can change. You could either use "sudo su - postgres" to simulate a full login and therefore change the directory to postgres' home directory, then any if you try to write things using a relative path it should work, provided that the postgres OS user is correctly configured. Otherwise you need to specify absolute paths, pointing to directories where the postgres OS user have enough permissions for what you want to do.
PG Bug reporting form <noreply@postgresql.org> writes: > I can not make backup and restoration of my db by this issues: > baap@baap-notebookpc:~$ sudo su postgres > [sudo] password for baap: > postgres@baap-notebookpc:/home/baap$ psql > could not change directory to "/home/baap": Permission denied > psql (15.4 (Ubuntu 15.4-1.pgdg22.04+1)) You have not shown an actual failure here. The "could not change directory" warning might be alarming, but you have not explained how it causes you any problem. What is actually happening, I think, is that psql is chdir'ing to someplace else in pursuit of figuring out its own absolute path, and then it tries to chdir back to where it was started from, and fails because that directory is not readable by the postgres user. It produces a warning about that but continues anyway. So this doesn't affect your ability to use SQL commands, but it might affect your ability to run meta-commands that expect the current working directory to be "/home/baap". However, given that psql could not read any files within that directory, it's not clear to me what practical problem ensues that wouldn't manifest in some other form anyway. regards, tom lane