2012-05-24 17 views
6

Estoy teniendo un problema extraño con mongodb después de la instalación que está terminando con un mensajeMongoDB no se inicia en ubuntu

invoke-rc.d: unknown initscript, /etc/init.d/mongodb not found. 
dpkg: error processing mongodb-10gen (--configure): 

¿Qué está mal aquí he seguido los pasos que se dan aquí: http://www.mongodb.org/display/DOCS/Ubuntu+and+Debian+packages

+0

cheque el camino de mongod y than do ./mongod – gsagrawal

+0

¿Qué versión de Ubuntu/Debian estás usando? ¿Qué versión de MongoDB? ¿Puedes encontrar ../bin/mongod? ¿Funcionarlo en la consola funciona? – mayhewr

+0

@mayhewr hay no hay/bin/mongod –

Respuesta

10

El problema es que usted está tratando de instalar una versión empaquetada para los servicios de Upstart init, pero Debian Squeeze sigue utilizando SysV init por defecto.

Hay una nota al respecto en la documentación de instalación: http://docs.mongodb.org/manual/tutorial/install-mongodb-on-debian-or-ubuntu-linux/#installing-mongodb

Si está usando Debian o Ubuntu que utiliza proceso de inicio al estilo SysV, utilice la siguiente línea:

deb http://downloads-distro.mongodb.org/repo/debian-sysvinit dist 10gen 
4

esto significa que es necesario crear mongodb comenzar guión en /etc/init.d/

probar este script

#!/bin/bash 
# 
# mongodb  Startup script for the mongodb server 
# 
# chkconfig: - 64 36 
# description: MongoDB Database Server 
# 
# processname: mongodb 
# 

# Source function library 
. /lib/lsb/init-functions 

if [ -f /etc/sysconfig/mongodb ]; then 
    . /etc/sysconfig/mongodb 
fi 

prog="mongod" 
mongod="/usr/local/mongodb/bin/mongod" 
RETVAL=0 

start() { 
    echo -n $"Starting $prog: " 
    daemon $mongod "--fork --logpath /var/log/mongodb.log --logappend 2>&1 >>/var/log/mongodb.log" 
    RETVAL=$? 
    echo 
    [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog 
    return $RETVAL 
} 

stop() { 
    echo -n $"Stopping $prog: " 
    killproc $prog 
    RETVAL=$? 
    echo 
    [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog 
    return $RETVAL 
} 

reload() { 
    echo -n $"Reloading $prog: " 
    killproc $prog -HUP 
    RETVAL=$? 
    echo 
    return $RETVAL 
} 

case "$1" in 
    start) 
     start 
     ;; 
    stop) 
     stop 
     ;; 
    restart) 
     stop 
     start 
     ;; 
    condrestart) 
     if [ -f /var/lock/subsys/$prog ]; then 
      stop 
      start 
     fi 
     ;; 
    reload) 
     reload 
     ;; 
    status) 
     status $mongod 
     RETVAL=$? 
     ;; 
    *) 
     echo $"Usage: $0 {start|stop|restart|condrestart|reload|status}" 
     RETVAL=1 
esac 

exit $RETVAL 

después del tipo en el terminal:

sudo chmod +x /etc/init.d/mongodb 
sudo /etc/init.d/mongodb start 
ps -A | grep mongod 
+0

Sí, lo he intentado, pero no estoy trabajando. Guardo ese archivo renombrando a mongodb en /etc/init.d y luego lo hago ejecutable pero no está funcionando. –

+0

necesita hacer algunas acciones en la terminal y darme información de salida –

+0

en /etc/init.d Recibí una línea $ lrwxrwxrwx 1 root root 21 24 de mayo 12:08 mongodb ->/lib/init/upstart-job /etc/init.d/mongodb start \\ /etc/init.d/mongodb: línea 10: /etc/rc.d/init.d/functions: Ningún archivo o directorio este error –