Reputation: 20545
I have installed nodejs using:
apt-get install nodejs
Then i have installed npm using:
apt-get install npm
And then i have installed forever using:
npm install forever -g
Now i go to my project /var/www/myproject
and attempt to run forever start server.js
then i get the following message:
/usr/bin/env: node: No such file or directory
Can anyone tell me whats going on?
Upvotes: 109
Views: 96790
Reputation: 5881
EDIT: As of December 2018, this is no longer the correct way. See the other two answers.
You need to symlink the nodejs executable to node
sudo ln -s "$(which nodejs)" /usr/local/bin/node
The reason for this is that when you do "apt-get install node", it installs an unrelated package, so they had to choose a different name so it wouldn't conflict
Upvotes: 274
Reputation: 1087
While the accepted answer fixes the problem, the correct way to do that, at least with Debian Jessie and forward and Ubuntu 14.4 and forward1 is to install nodejs-legacy:
apt-get install nodejs-legacy
The reason is that Debian already had a package (node) providing /usr/bin/node, and the nodejs node binary had to be installed into /usr/bin/nodejs.
The nodejs-legacy package provides a symbolic link from /usr/bin/nodejs to /usr/bin/node (and conflicts with the node package).
Source: [CTTE #614907] Resolution of node/nodejs conflict and Debian bug #614907: node: name conflicts with node.js interpreter
Upvotes: 44
Reputation: 2336
It's better if you update to the latest node version
Upvotes: 22