我应该使用包管理器还是从源代码在Ubuntu上安装node.js



有人知道从源代码安装最新版本是否有风险吗?我应该和包裹管理员呆在一起吗?

当前建议

  • 如果你想用你的用户帐户进行真正简单的安装,请在linux上使用安装节点(免责声明:我是作者)
  • 如果你想用你的用户帐户安装,请使用nvm+你需要定期在不同版本之间切换,而且你对工具和环境的复杂性很满意
  • 按照此处的说明通过NodeSource PPA进行安装。这很容易做到,但灵活性最低

旧答案

注意:在撰写本文时,我使用的是Ubuntu 12.10。

有很多方法可以安装node。我个人更喜欢下载最新稳定版本的源代码,然后将其安装到~/local(您可以通过将--prefix添加到./configure命令中来完成此操作,如图所示。这样做确实没有任何"风险",因为所有东西都安装在与系统其他部分分离的目录中。您可以在此处查看我的系统安装脚本中的节点配方。我定期运行update_node.py脚本,将安装升级到最新版本。

或者,您可以按照此处的说明通过软件包管理器安装最新的稳定版本。我实际上还没有这么做,所以我不能评论它的效果如何。

我不会做的是从ubuntu宇宙包中安装node。你最终会得到一个非常过时的版本(目前为0.6.19)

2013年1月26日更新:

如果您有兴趣使用您的用户(非root)帐户安装node,我强烈建议您阅读这篇博客文章。我跳过了~/.npmrc步骤,但发现~/.node_modules符号链接步骤对于使require正常工作至关重要。

更新12/30/2014:

我已经迁移到使用linux mint和进行二进制节点安装。如果你对编写自己的安装脚本感兴趣,你可以在这里找到我目前的安装脚本。具体来看一下我在node.sh中所做的工作。execute函数在第一次安装时运行,因此它可以执行诸如在.bashrc中配置路径之类的操作。install函数由update-node.sh运行,用于删除现有安装并添加新安装(最新版本或用户指定的版本)。

2016年8月1日更新:

我刚切换到使用nvm。只需安装脚本,然后运行nvm install node即可获得最新版本。这似乎是用您的用户帐户安装节点的一个很好的方法。

另一个选项是nvm(节点版本管理器):https://github.com/creationix/nvm

额外的好处是,它可以让你轻松地在版本之间切换。

虽然我生活在.rpm而不是.deb领域,但fpm可以同时做到这两件事(需要安装Ruby)。我已经能够从最新的稳定源代码中打包node.js,没有任何重大困难。在您的情况下,以下场景可能会有所帮助:

./configure --prefix=/usr
make
mkdir -p /tmp/nodejs
make install DESTDIR=/tmp/nodejs
fpm -s dir -t deb -n nodejs -v 0.8.15 -p nodejs-0.8.15.deb -C /tmp/nodejs usr

最新更新