GNU/Linux >> Znalost Linux >  >> Linux

Služba MongoDB se po počátečním nastavení nespustí

Chvíli jsem to zkoumal a zdá se, jako by s výchozím démonem nefungovala složka pid a oprávnění k souboru.

Nejjednodušším řešením, se kterým jsem se setkal, je zakázat soubor pid pouhým vložením # před řádek v konfiguračním souboru.

vi /etc/mongod.conf

najděte řádek, který říká pidfilepath=/var/run/mongodb/mongod.pid a podle toho jej změňte.

# pidfilepath=/var/run/mongodb/mongod.pid

Informace o tom, co komentování dělá, najdete zde.http://docs.mongodb.org/manual/reference/configuration-options/#processManagement.pidFilePath


Pokud spouštíte mongod jako službu pomocí:

sudo služba mongod start

Ujistěte se, že adresáře definované pro logpath, dbpath a pidfilepath ve vašem mongod.conf existují a jsou vlastněny mongod:mongod.


Mám stejný problém, vyřešil jsem to dočasně, deaktivoval SELinux, restartoval počítač, odstranil mongod.lock:

#rm /var/lib/mongo/mongod.lock

Vytvořením souboru /var/run/mongodb/mongo.pid (jak je uvedeno v konfiguračním souboru /etc/mongod.conf):

#mkdir /var/run/mongodb
#touch /var/run/mongodb/mongod.pid

a udělením 777 oprávnění:

#chmod 777 /var/run/mongodb/mongod.pid 

a začínáme mongo:

#service mongod start

Problém ale přetrvává i po restartu stroje. Složka a soubor zmizí.


Co se mi osvědčilo na Fedoře 20:potřebujeme vytvořit temp dir při každém bootu, a to je řešeno pomocí systemd-tmpfiles. Vytvořte tedy soubor /lib/tmpfiles.d/mongodb.conf a vložte do něj jeden řádek:

d /var/run/mongodb 0755 mongod mongod

Zdá se, že to zvládne při restartech; pokud nechcete restartovat hned, můžete to provést pomocí:

sudo systemd-tmpfiles --create mongodb.conf

(Viz manuálové stránky pro systemd-tmpfiles)


Linux
  1. Linux – Změnit /proc/pid/environ po spuštění procesu?

  2. Proč Systemd zastavuje službu ihned po jejím spuštění?

  3. Gimp se nespustí, chyba Gegl?

  1. Ubuntu se po instalaci nespustí z pevného disku?

  2. systemctl:příkaz nenalezen

  3. služba:příkaz nenalezen

  1. chkconfig:příkaz nenalezen

  2. Jaký je správný způsob, jak spustit službu mongod na linux / OS X?

  3. Služba MongoDB ve Fedoře neběží