PostgreSQL auf ext4 und ntfs

Hallo,

ich habe Ubuntu 18.04 auf meinen Rechner mit einer Platte, die mit ext3 bzw. ext4 formatiert ist.
Nun möchte ich gerne meine externe Platte mit ntfs als Speicherplatte für postgresql benutzen (ich habe noch andere Verzeichnisse darauf). Ich habe in der postgresql.conf den Eintrag data_directory von /var/lib/postgresql/10/main in /media/Seagate/postgresql/10/main geändert und alle Dateien und Verzeichnisse an den neuen Ort mit “sudo cp -a” kopiert.

Wenn ich nun den Datenbankserver neu starte, erhalte ich

psql: could not connect to server: Datei oder Verzeichnis nicht gefunden
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

Wenn ich allerdings in der postgresql.conf einen anderen Eintrag für data_directory wähle, der unter /home auf der internen Platte liegt, kann die Datenbank ohne weiteres ansprechen.

Warum läuft die angesprochene Methode so nicht? Muss ich vielleicht noch andere Berechtigungen setzten; unter MSDOS ist wohl die Zugangsberechtigung anders geregelt.

Schöne Grüße
Ludger

Die gezeigte Meldung kommt von psql, dem Kommandozeilenclient, nicht aber von PostgreSQL.

Vermutlich stimmen Rechte nicht und der postgres-User kann nicht auf Deine NTFS-Platte zugreifen. Aber das ist nur eine Vermutung.

Vor allem ist die NTFS Rechteverwaltung etwas komplizierter als z.B bei EXT3/4.

NTFS hat recursives locking, kennt keine / path delitmiter und verwendet Rechtevererbung, was widerum erheblichen Ärger bereiten kann
Es kann z.B sein, daß Rechte die Du gerade meinst gesetzt zu haben nicht angewendet werden, da ein übergeordnetes Rechtsprinzipal dies
wieder aufhebt.Bei NTFS musst Du also immer Rechtehierachien beachten. Ausserdem musst Du aufpassen, wenn Du z.B einen Ordner eingeschränkte
Rechte verpasst hast und dann mit einem Root/Admin Account in diesen in der Shell wechselst. In dem Moment kann es passieren, das NTFS
automatisch die Rechte Einstellungen verändert. Unter Windows gibt es vor so einem Vorgang noch ein Warnbox, bei **nix weiß ich nicht ob da gewarnt wird.