Каков правильный способ обеспечения запуска `mongod` при запуске системы в 16.04?

Я установил MongoDB через программный центр в Ubuntu 16.04:

mongodb 1:2.6.10-0ubuntu1

Я считаю, что в настоящее время он содержит MongoDB 2.6.10.

Я запускаю приложение на apache2 localhost setup и запускать mongod вручную каждый раз, когда система запускается с:

mongod

Я хочу, чтобы он запускался автоматически.

Я применил два основных метода:

update-rc.d mongodb defaults

from: this

, что приводит к:

update-rc.d mongodb defaults
insserv: fopen(.depend.stop): Permission denied

Но это не вызвало ошибки:

sudo update-rc.d mongodb defaults

Я также видел несколько ссылок на редактирование «файла конфигурации MongoDB», но я не что это означает, поскольку я могу видеть файлы конфигурации в нескольких местах:

/etc/mongodb.conf /etc/init/mongodb.conf /etc/init.d/mongodb

И, однажды в правильном файле, Я не знаю, что там изменить.

В /etc/init/mongodb.conf я вижу:

start on runlevel [2345]
stop on runlevel [!2345]

Каков правильный способ обеспечения запуска mongod при запуске системы в 16.04?

Я читал это и смотрел в /etc/rc2.d и мог видеть:

S01mongodb@                       --> /etc/init.d/mongodb

Обновление:

После запуска: [!d22 ]

sudo systemctl enable mongodb

, а затем перезагрузка, запуск systemctl status mongodb возвращается:

* mongodb.service - An object/document-oriented database
   Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Mon 2016-04-18 23:42:28 AEST; 7min ago
     Docs: man:mongod(1)
  Process: 655 ExecStart=/usr/bin/mongod --config /etc/mongodb.conf (code=exited, status=100)
 Main PID: 655 (code=exited, status=100)

Apr 18 23:42:27 me-comp systemd[1]: Started An object/document-oriented database
Apr 18 23:42:28 me-comp systemd[1]: mongodb.service: Main process exited, code=exited, status=100/n/a
Apr 18 23:42:28 me-comp systemd[1]: mongodb.service: Unit entered failed state.
Apr 18 23:42:28 me-comp systemd[1]: mongodb.service: Failed with result 'exit-code'.  

Обновление:

/var/lib/mongodb = drwxr-xr-x mongodb mongodb. /var/log/mongodb = drwxr-xr-x mongodb mongodb. /var/log/mongodb/mongodb.log = -rw-r--r-- mongodb nogroup. /var/log/mongodb/mongod.log = -rw-r--r-- mongodb mongodb. /data/db/mongod.lock = -rwxrwxr-x me me и 0 байтов. /data = drwxr-xr-x root root. /data/db = drwxr-xr-x me root.

Содержимое файла конфигурации

/etc/mongodb.conf:

# Where to store the data.
dbpath=/var/lib/mongodb

#where to log
logpath=/var/log/mongodb/mongodb.log

logappend=true

bind_ip = 127.0.0.1
#port = 27017 ...

1
задан 13 April 2017 в 15:25

3 ответа

Пока вы разрабатываете, вам также может потребоваться противоположное: иметь несколько локальных разделяемых экземпляров, которые вы запускаете индивидуально, а не одну глобальную установку ...

mongod --dbpath ./mongo_db_data/ --logpath ./mongo_logs/mongodb.log --port 12345
0
ответ дан 23 May 2018 в 12:06

Для меня работает только выполнение sudo systemctl enable mongod

0
ответ дан 23 May 2018 в 12:06

Для меня это связано с неправильным разрешением пути db. просто

chown mongodb:mongodb /var/lib/mongodb
0
ответ дан 23 May 2018 в 12:06

Другие вопросы по тегам:

Похожие вопросы: