Не удалось выполнить глобальную инициализацию: Имя файла: Не удалось переименовать существующий файл журнала

#linux #mongodb #ubuntu

#линукс #mongodb #ubuntu

Вопрос:

Я получаю эту ошибку при попытке запустить mongo deamon.

УПРАВЛЕНИЕ [главная] Не удалось выполнить глобальную инициализацию: Имя файла: Не удалось переименовать существующий файл журнала «/var/lib/mongodb/log/mongod.log» в «/var/lib/mongodb/log/mongod.log.2021-12-02T14-32-24»; запустить с —logappend или вручную удалить файл: Отказано в разрешении

конфигурация

 storage:  dbPath: "/var/lib/mondodb/data"  systemLog:  destination: file  path: "/var/lib/mongodb/log/mongod.log"  

mongodb имеет права собственности /var/lib/mongodb и субдиры. Разрешения должны быть в порядке.

мондодб реж.

 drwxr-xr-x 2 mongodb mongodb 4096 Dec 2 15:42 config drwxr-xr-x 2 mongodb mongodb 4096 Dec 2 15:41 data drwxr-xr-x 2 mongodb mongodb 4096 Dec 2 15:42 log  

Сама служба также не будет работать

gt; sudo service mongod status

 ● mongod.service - MongoDB Database Server  Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor preset: enabled)  Active: failed (Result: exit-code) since Mon 2021-12-06 17:09:38 GMT; 1s ago  Docs: https://docs.mongodb.org/manual  Process: 24234 ExecStart=/usr/bin/mongod --config /etc/mongod.conf (code=exited, status=100)  Main PID: 24234 (code=exited, status=100)  Dec 06 17:09:37 GEL-R90VQK84 systemd[1]: Started MongoDB Database Server. Dec 06 17:09:38 GEL-R90VQK84 systemd[1]: mongod.service: Main process exited, code=exited, status=100/n/a Dec 06 17:09:38 GEL-R90VQK84 systemd[1]: mongod.service: Failed with result 'exit-code'.  

Ответ №1:

Вы запускаете деамон от имени root?

Проверьте принадлежность файла

/var/lib/mongodb/log/mongod.log

Комментарии:

1. Я не запускаю mongodbd от имени root. Владелец всего реж /var/lib/mongodb/ mongodb . Если я запускаюсь от имени root, я не получаю никаких ошибок в консоли, но процесс все равно завершается, и я вижу строку «Отказано в разрешении» в журнале того же файла.

2. Можете ли вы проверить, кто является владельцем файла журнала?

3. при новой установке, как я уже сказал, запуск deamon без прав root не создает файл журнала. Если я запустил деамон с судо, root это владелец.

4. Это единственная строка, которую я получаю в журнале (работает как root ): mongod.log: Permission denied

5. Если вы удалите файл журнала (с root) и попытаетесь снова запустить mongodb без sudo?