Tengo dos máquinas Ubuntu 12.10: la máquina A es una VM VMware y la máquina B es una vieja computadora portátil Acer. En ambas máquinas, instalé el nodo usando apt-get. Sin embargo, la máquina A instala el binario principal como /usr/bin/nodey la máquina B como /usr/bin/nodejs. Aquí hay algunos comportamientos que observé:
- Ambas máquinas vuelven
/usr/bin/nodeen respuesta alwhich nodecomando. Sin embargo, no existe dicho archivo en la máquina B. - La emisión del comando
nodefunciona para la máquina A, no B. En B, tengo que usarnodejsen su lugar. - En B, hay un binario llamado / sbin / node, A no lo tiene.
Estos comportamientos causan problemas de inconsistencia cuando se desarrollan en ambas máquinas. Por ahora, trabajé cambiando el nombre de los binarios en B como tal:
sudo mv /sbin/node /sbin/node-sbin
sudo ln -s /usr/bin/nodejs /usr/bin/node
¿Hay alguna manera de arreglar esto realmente, para que ese nodo se instale como en /usr/bin/nodelugar de /usr/bin/nodejs?

actualización: instrucciones modificadas a continuación para usar el
nodejs-legacypaquete. ( más información sobre el legado de nodos )Intente eliminar completamente el paquete de nodos en conflicto:
Esto me sucedió cuando instalé involuntariamente el
nodepaquete non-node.js . Aunque lo hiceapt-get remove nodeantes de instalar elnodejspaquete correcto , supongo--purgeque se requiere el argumento.Información de fondo :
fuente
/usr/bin/nodeen Ubuntu 13.10. Sin embargo, la respuesta de @ user229115 a continuación funciona.sudo apt-get install nodejs nodejs-legacyle dará elnodebinario como node.js Pero si ya instaló elnode(Programa de Nodo de Radio de Paquete Amateur) obviamente necesitará eliminarlo.nodejs-legacypaquete funcionará.nodejs-lecacypaquete, que puede ser solo un enlace simbólico alnodejsejecutable en realidad ...Desafortunadamente para mí, crear un enlace simbólico no funcionó. Sin embargo, lo que funcionó para mí fue crear un alias. En
~/.bashrco~/.bash_aliases(si~/.bashrccarga este archivo), simplemente agregue la siguiente línea:Reinicie su sesión de bash escribiendo
bashen la consola y su alias ahora funcionará.fuente
source ~/.bashrcpara volver a cargar el archivo .bashrc (si desea evitar reiniciar el terminal) lea más ..hash nodeinvocación en sus terminales existentes, porque los shells modernos recuerdan la ubicación de los comandos que se han buscado previamente en PATH. Elhashcomando incorporado en tales shells les dice que rehagan la búsqueda y recuerden la nueva ubicación.Creo que esto es todo:
Usando alternativas de Debian.
fuente
Respuesta tardía, pero para información actualizada ...
Si instala node.js utilizando el método recomendado del archivo léame de instalación de github de nodo , sugiere seguir las instrucciones en el artículo del blog de nodeource , en lugar de instalarlo desde la fecha desactualizada apt-get repo, node.js debería ejecutarse usando el
nodecomando, así como elnodejscomando, sin tener que hacer un nuevo enlace simbólico.Este método del artículo es:
Tenga en cuenta que esto es para v0.12, que probablemente quedará desactualizado en un futuro no muy lejano.
Además, si está detrás de un proxy corporativo (como yo), deseará agregar la opción -E al comando sudo, para preservar los entornos necesarios para el proxy:
fuente
En ubuntu 14.04 tuve el mismo problema de nodo. No tenía trabajando "nodo", y trabajando "nodejs". Lo acabo de hacer
y justo después de eso, el nodo se estaba ejecutando y nodejs también se está ejecutando :) Soy nuevo en Linux y eso es un misterio para mí. Sin embargo, Bower está funcionando!
fuente
Mi escritorio es actualmente Ubuntu 15.10 AMD64, por lo que utilizaré la siguiente URL en mi ejemplo de instalación (nuevamente, las distribuciones varían):
Luego cambie el directorio a su directorio de descarga:
Desde su directorio de descargas, ejecute lo siguiente:
Confirme su instalación de node.js con lo siguiente:
árbitro. http://www.hostingadvice.com/how-to/install-nodejs-ubuntu-14-04/
fuente
tarcomando necesitasudo.