Tôi chỉ gắn một HD bên ngoài để lưu trữ không gian bảng mới của tôi.
postgres@vostro ~ $ df -k
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sdb1 480589520 71580 456082280 1% /mnt/DB
postgres@vostro ~ $ ls -l /mnt/DB/
total 4
drwxrwxrwx 2 postgres postgres 4096 May 25 17:02 postgres
demisc@vostro /mnt $ mount | grep -i sdb1
/dev/sdb1 on /mnt/DB type ext4 (rw,nosuid,nodev,relatime,data=ordered)
Tôi đã đưa ra tất cả các quyền cần thiết để posgres có thể tạo ts mới /mnt/DB/postgres
. Đây là nhóm người dùng:
postgres@vostro ~ $ id
uid=123(postgres) gid=131(postgres) groups=131(postgres),112(ssl-cert),1000(demisc)
Xảy ra rằng khi chạy lệnh tạo vùng bảng tôi nhận được như sau:
postgres=# create tablespace ts_project location '/mnt/DB/postgres';
ERROR: could not set permissions on directory "/mnt/DB/postgres":
Permission denied
Tôi đang thiếu gì?
ls -ln /mnt/DB/postgres
trả về:
demisc@vostro /mnt/DB $ ls -ln /mnt/DB/postgres/
total 0
Mọi thứ trông có vẻ tốt. Không có lý do tại sao người dùng postgres không thể tạo không gian bảng. Nếu tôi chuyển sang postgres và cố gắng tạo tập tin hoặc thư mục trong đường dẫn thì nó hoạt động tốt.