Não consigo criar novos tablespaces em uma nova instalação do Postgres 15.3 no Ubuntu 22.04. Eu tentei o seguinte até agora:
- reinstale o Postgres
- afrouxe totalmente a permissão do sistema de arquivos
- SELinux desativado
Mas ainda assim os usuários do postgres relatam que não podem definir permissões na pasta do tablespace. O registro está abaixo.
$ mkdir -p /media/user/Work/Databases/geo
$ chown -R postgres:postgres /media/user/Work/Databases
$ sudo chmod -R 777 /media/user/Work/Databases
$ setenforce 0
setenforce: SELinux is disabled
$ sestatus
SELinux status: disabled
$ sudo su postgres
postgres@luis-workstation:/home/user$ psql
could not change directory to "/home/user": Permission denied
psql (15.3 (Ubuntu 15.3-1.pgdg22.04+1))
Type "help" for help.
postgres=# CREATE TABLESPACE geo
OWNER postgres
LOCATION '/media/user/Work/Databases/geo';
ERROR: could not set permissions on directory "/media/user/Work/Databases/geo": Permission denied
O PostgreSQL insiste em mudar as permissões do diretório. Isso equivale a executar o seguinte como usuário do sistema operacional
postgres
:Portanto, você deve receber a mesma mensagem de erro sobre permissões ausentes.
O usuário
postgres
deve possuirgeo
:Além disso, o usuário deve ter permissões de leitura (
r
) e execução (x
) em todos os diretórios da hierarquia. Por exemplo: