当我运行节点时,没有任何反应,永远相同

时间:2014-07-13 09:16:37

标签: node.js bash ubuntu forever

我安装了node.js和forever.js,当我在终端中运行它们时(在Ubuntu 14.04上使用bash),没有任何反应。

所以看起来像:

#node
#

#forever
#forever --help
#forever listall
#

其他与节点无关的其他内容运行正常。

5 个答案:

答案 0 :(得分:19)

apt-get出现了问题,因此在安装节点时,它实际上并没有安装节点,但是它确实将一个程序放在了看似没什么的路径中。

我用

卸载了它

apt-get purge node

然后,我从这里下载了64位Linux二进制文件:http://nodejs.org/download/

我用tar -xvf filename提取了它,然后我将directory/bin设置为路径:

PATH=$PATH:/directory/to/node/bin

现在它工作正常。永远的问题是因为安装的节点根本不是节点,而是某种30kb的程序,我不知道。

以下是有关通过apt-get install node安装的程序的信息:

Package: node
Priority: optional
Section: universe/hamradio
Installed-Size: 38
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Hamradio Maintainers <debian-hams@lists.debian.org>
Architecture: all
Version: 0.3.2-7.4
Depends: ax25-node
Conflicts: nodejs-legacy
Filename: pool/universe/n/node/node_0.3.2-7.4_all.deb
Size: 1284
MD5sum: 7385a0f5916e03d9143459ca4706f0ec
SHA1: bf7aa087db81475636897ff39de344754ce1415b
SHA256: 9756770f771bcc4183cffa622f89e21a585be96bd4de27024b0a7cb167f310ad
Description-en: Amateur Packet Radio Node program (transitional package)
 The existing node package has been renamed to ax25-node. This transitional
 package exists to ease the upgrade path for existing users.
Description-md5: 1278ed271672fd829c99361f93f468da
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Origin: Ubuntu

因此,我还发现使用node安装apt-get的正确方法是apt-get install nodejs

答案 1 :(得分:9)

我有同样的问题,我认为这是因为我天真地首先安装了节点。做一个

sudo apt-get purge node

按照网络上的说明(https://github.com/nodesource/distributions):

curl -sL https://deb.nodesource.com/setup | sudo bash -
sudo apt-get install -y nodejs

为我解决了这个问题。 node并不存在,但nodejs确实存在,而其他工具现在可以使用(例如slap)。

编辑:在我更新的一台服务器上,节点确实存在。不确定究竟需要发生什么样的顺序,但无论如何......

答案 2 :(得分:8)

我遇到了这个问题,我发现要解决这个问题,我需要删除/ usr / sbin / node(找到which nodejs)中的节点文件,并将其替换为/ usr的硬链接/ bin / nodejs(找到ln /usr/bin/nodejs /usr/sbin/node

{{1}}

答案 3 :(得分:3)

安装nodejs软件包后,只需在终端上运行nodejs命令。

它将为您提供JavaScript提示或解释器。

答案 4 :(得分:1)

您遇到的问题是apt-get在二进制nodejs下安装了NodeJS。此外,当您永远执行npm安装时,它还希望二进制文件是节点。

要验证这一点,您可以执行

%永远 lrwxrwxrwx 1 root root 39 Jan 25 21:34 / usr / local / bin / forever - &gt; ../ LIB / node_modules /永远/ bin中/永远

找到永远脚本的位置。 然后检查它尝试执行的节点二进制文件。

%vim / usr / local / lib / node_modules / forever / bin / forever
  #!/ usr / bin / env node

此/ usr / bin / env节点需要更改为/ usr / bin / env nodejs。

但要绕过这个问题,你一定要考虑使用暴发。 http://howtonode.org/deploying-node-upstart-monit