On Fri, 2019-07-12 at 10:11 +0000, Chatterjee, Shibayan wrote: > I’m trying to create a symlink for ‘data’ directory present in ‘/var/lib/pgsql/’, pointing to different location. > After providing exact access permissions and ownership to postgres, I’m still unable to restart postgres after modifications. > > I’ve also modified ‘/var/lib/pgsql/postgresql.conf’ and ‘/usr/lib/systemd/system/postgresql.service’ > to point the $PGDATA location to the actual destination as respectively: > > data_directory = '/data/postgresql/data' > Environment=PGDATA=/data/postgresql/data [...] > >>> /var/log/messages > > Jul 12 10:00:51 systemd: Starting PostgreSQL database server... > Jul 12 10:00:51 postgresql-check-db-dir: "/data/postgresql/data" is missing or empty. > Jul 12 10:00:51 postgresql-check-db-dir: Use "postgresql-setup initdb" to initialize the database cluster. > Jul 12 10:00:51 postgresql-check-db-dir: See /usr/share/doc/postgresql-9.2.24/README.rpm-dist for more information. > Jul 12 10:00:51 systemd: postgresql.service: control process exited, code=exited status=1 > Jul 12 10:00:51 systemd: Failed to start PostgreSQL database server. > Jul 12 10:00:51 systemd: Unit postgresql.service entered failed state. > Jul 12 10:00:51 systemd: postgresql.service failed. So there is some "postgresql-check-db-dir" (not part of PostgreSQL) that complains that there is nothing in /data/postgresql/data. Is that accurate? It looks like you succeeded in getting the startup process to look for the PostgreSQL data directory in the new location, but - alas - there is no data directory there yet. You could follow the instructions and run "initdb" to create the data directory. Yours, Laurenz Albe -- Cybertec | https://www.cybertec-postgresql.com