2015-03-11 13 views
22

Ho appena finito di installare MongoDB su OSX e ho impostato una struttura di directory con sudo mkdir -p /data/db.Impostazione autorizzazioni di lettura/scrittura sulla cartella Mongodb

Quando si tenta di eseguire mongod dal mio account utente, viene restituito un errore che indica che il mio account utente non dispone dell'autorizzazione di lettura/scrittura per /data/db.

Come è possibile impostare le autorizzazioni di lettura/scrittura corrette per il mio account per /data/db?

risposta

-1

Basta eseguire

sudo chown group:user /data/db 

dove group è un gruppo di vostro utente

49

Assicurarsi che account utente che esegue mongod ha le autorizzazioni di directory appropriata. È possibile controllare quali autorizzazioni sono impostate in questo modo:

ls -ld /data/db/ 

Se sono impostati correttamente Dovrebbero essere simile a questo ..

drwxr-xr-x X user wheel XXX Date Time /data/db/

Se le autorizzazioni sono impostate in modo non corretto si sarà probabilmente visualizzato un errore simile a questo quando si tenta di eseguire mongod

exception in initAndListen: XXXXX Unable to create/open lock file: /data/db/mongod.lock errno:13 Permission denied Is a mongod instance already running?, terminating

per ottenere i permessi impostati come dovrebbero essere è possibile eseguire il seguente comando

sudo chmod 0755 /data/db && sudo chown $USER /data/db 
+10

$ sudo chmod 0755/data/db && sudo ** ** chown $ USER/dati/db – EvgenyKolyakov

+0

SÌ! NON dimenticare 'sudo' su' chown'! – coblr

4

Questo è ciò che ha funzionato per me. Sto usando un Mac, anche se potresti provare se stai usando Windows.

sudo chmod 777 /data/db 
+0

sudo chmod 0755/data/db && chown $ USER/data/db –

+0

grazie funziona! – John

0

Nessuna delle risposte fornite funzionava per me. Ho finito per configurare il mio utente del sistema operativo personale per essere l'utente root, quindi sono andato manualmente alla cartella db - fatto clic con il tasto destro per visualizzare le informazioni - e mi sono aggiunto con i permessi di lettura e scrittura.

6
sudo chmod 777 /data/db/ 

Dovrebbe funzionare su Mac. Prima di eseguire questo cmd, i permessi sembrano

drwxr-xr-x X User wheel Date /data/db 

dopo l'esecuzione del cmd

drwxrwxrwx X User wheel Date /data/db 
1

Ci sono tre categorie di utenti: i proprietari, quelli del gruppo, e tutti gli altri; chmod 777 /path/to/file consente a tutti di leggere/scrivere il file, ma chmod 775 /path/to/file consente solo al proprietario/gruppo di leggere/scrivere il file. Utilizzare sicuramente chmod 775 /path/to/file se si sta sviluppando un server Web.

qualche lettura utile, soprattutto per il ragionamento che sta dietro perché 777, 775, e così via sono usati piuttosto che altri numeri: https://www.maketecheasier.com/file-permissions-what-does-chmod-777-means/

Problemi correlati