Подтвердить что ты не робот

MongoDB работает только при запуске с правами root на Ubuntu - проблема с каталогом данных

Я установил MongoDB с официальными пакетами (mongodb-stable) и выполнил руководство по быстрому запуску, которое включает в себя:

По умолчанию MongoDB будет хранить данные в /data/db, но он не будет автоматически создайте этот каталог. Чтобы создать его, сделать:

$ sudo mkdir -p /data/db/
$ sudo chown `id -u` /data/db

Вы также можете сказать, что MongoDB использует другой каталог данных, с --dbpath.

MongoDB запускается только в том случае, если я запускаю sudo mongod - если я пытаюсь запустить только mongod, я получаю ошибку:

Mon Mar 14 15:27:07 [initandlisten] couldn't open /data/db/test.ns errno:13 Permission denied
Mon Mar 14 15:27:07 [initandlisten]   couldn't open file /data/db/test.ns terminating
Mon Mar 14 15:27:07 dbexit:

Что дает?

4b9b3361

Ответ 1

Вы создали /data/db как root, чтобы иметь эти разрешения. Вы можете изменить разрешения на свою учетную запись пользователя или на то, что у вас есть mongo, как.

chown -R username /data/db

или /data

Вы также можете установить группу

chown -R username.groupname

-R делает это рекурсивно, поэтому он будет влиять на все созданные вами файлы, запустив mongoDB как уже существующий.