저는 연구를 위해 데이터의 기본 분석을 위해 상시 가상 머신을 사용하고 있습니다. 이렇게 하려면 PostgreSQL 데이터베이스에 데이터를 생성하고 저장해야 합니다(또는 원한다고 가정합니다). VM은 CentOS 7을 실행 중이고 내 로그인(''이라고 함 username
)에는 루트 액세스 권한이 있습니다. 문제:
데이터는 해당 위치에 마운트된 공유 스토리지에 저장되어야 합니다 /shared/username/data
. 나(' username
')는 디렉토리와 모든 하위 디렉토리의 소유자이며 (보안상의 이유로?) 또는 를 /shared/username/
통해 변경할 수 없는 것 같습니다 . 즉 , . 아래를 참조하세요.chown
sudo chown
postgres
/shared/username/data
다음 계정으로 로그인됨 postgres
:
bash-4.2$ /usr/pgsql-9.4/bin/initdb -D /shared/username/data
could not change directory to "/shared/username": Permission denied
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
initdb: could not access directory "/shared/username/data": Permission denied
저는 PostgreSQL을 처음 접했지만 한동안 다양한 형태의 Linux를 사용해 왔습니다. 파일 권한이 때때로 나를 혼란스럽게 하지만.
이 문제에 대한 가능한 해결책이 있습니까? 아마도 어떻게든 initdb가 에 대한 액세스 권한을 취소하는 것을 막을 수 있을까요 username
? 도움을 주시면 감사하겠습니다. 추가 정보를 제공해 드리겠습니다.