Oserei supporre che il problema risieda nei permessi della directory principale "/home/john". La tua home directory è probabilmente configurata in modo che solo il tuo utente abbia accesso (ad esempio chmod 700) ad essa (è una buona cosa che la tua home directory sia chmod 700, non cambiarla).
Fare qualcosa come:
mkdir /BSTablespace chown postgres:postgres /BSTablespace
e poi
CREATE TABLESPACE magdat OWNER maggie LOCATION '/BSTablespace';
dovrebbe funzionare bene.
Per quanto riguarda l'utente maggie:gli utenti del database non sono gli stessi degli utenti del sistema operativo. Questo non vuol dire che non potresti avere un utente in entrambi i posti chiamato maggie, ma dovresti creare l'utente sia nel database che nel sistema operativo affinché ciò avvenga.