在Ubuntu中安装特定的Node版本

我想在Ubuntu 12.04上安装NodeJS 0.8.18版本。 我尝试安装最新的版本,然后使用nvm恢复到0.8.18,但是当我运行我的代码显然有安装软件包和两个版本(最新和0.8.18)的一些问题。 由于我不知道如何解决这个问题,我从Node安装中清理了机器,并考虑直接安装我感兴趣的版本(v0.8.18)。 不幸的是,我不知道该怎么做。 有人可以帮我吗? Google这次不是我的朋友。

谢谢

Chris Lea在他的ppa回购中有0.8.23。

这个包允许你添加一个存储库到apt-get:(你也可以手动执行)

 sudo apt-get install software-properties-common 

添加Chris Lea的存储库:

 sudo apt-add-repository ppa:chris-lea/node.js-legacy 

更新apt-get:

 sudo apt-get update 

安装Node.js:

 sudo apt-get install nodejs=0.8.23-1chl1~precise1 

我认为(随意编辑)版本号是可选的,如果你只添加node.js-legacy。 如果添加legacy和ppa / chris-lea / node.js,则最有可能需要添加该版本。

可以使用dpkg从nodejs官方发行版安装特定版本的nodejs。

例如,当前最新的4.x版本是4.2.4,但是您可以安装以前的4.2.3版本。

 curl -s -O https://deb.nodesource.com/node_4.x/pool/main/n/nodejs/nodejs_4.2.3-1nodesource1~trusty1_amd64.deb sudo apt-get install rlwrap sudo dpkg -i nodejs_4.2.3-1nodesource1~trusty1_amd64.deb 

试试这个方法。 这工作了我。

  1. wget nodejs.org/dist/v0.10.36/node-v0.10.36-linux-x64.tar.gz (下载文件)

  2. 转到下载Node.js二进制文件的目录,然后运行sudo tar -C / usr / local –strip-components 1 -xzf node-v0.10.36-linux-x64.tar.gz在“/ usr / local /”中安装Node.js二进制包。

  3. 你可以检查: –

     $ node -v v0.10.36 $ npm -v 1.4.28 

n模块为我工作。

运行这个代码清除npm的caching,安装n,然后安装最新的稳定版本的Node:

 sudo npm cache clean -f sudo npm install -gn sudo n stable 

请参阅: http : //www.hostingadvice.com/how-to/update-node-js-latest-version/
和: https : //www.npmjs.com/package/n

要安装节点的特定版本:

sudo n 6.11.2

要检查什么版本:

node -v

您可能需要重新启动

版本0.10也可以用这个ppa

 apt-add-repository ppa:chris-lea/node.js 

安装nodejs:

 apt-get install nodejs=0.10.25-1chl1~precise1 

感谢我的朋友Julian Xhokaxhiu

FYI可用于Chris Lea回购的版本目前为0.8.25

sudo apt-get install nodejs=0.8.25-2chl1~raring1

注:您可以使用NVM软件在更多nodejs时尚通道中执行此操作。 不过,我在一台机器中遇到了问题,不让我使用NVM。 所以我必须寻找替代品;-)

您可以手动下载并安装。

去nodejs>下载>其他版本http://nodejs.org/dist/

select你正在寻找的版本http://nodejs.org/dist/v0.8.18/

select对应你的环境和下载的发行文件(照顾32位/ 64位版本)。 例如: http : //nodejs.org/dist/v0.8.18/node-v0.8.18-linux-x64.tar.gz

提取文件并按照README.md上的说明进行操作:

build立:

先决条件(仅适用于Unix):

 * Python 2.6 or 2.7 * GNU Make 3.81 or newer * libexecinfo (FreeBSD and OpenBSD only) 

UNIX / Macintosh的:

 ./configure make make install 

如果您的python二进制文件位于非标准位置或具有非标准名称,请运行以下代码:

 export PYTHON=/path/to/python $PYTHON ./configure make make install 

视窗:

 vcbuild.bat 

运行testing:

UNIX / Macintosh的:

 make test 

视窗:

 vcbuild.bat test 

build立文档:

 make doc 

阅读文档:

 man doc/node.1 

也许你想(必须)把文件夹移动到一个更适合的位置,比如/usr/lib/nodejs/node-v0.8.18/,然后在/ usr / bin上创build一个符号Lynk来从任何地方访问你的安装。

 sudo mv /extracted/folder/node-v0.8.18 /usr/lib/nodejs/node-v0.8.18 sudo ln -s /usr/lib/nodejs/node-v0.8.18/bin/node /usr/bin/node 

如果你想在同一台机器上发布不同的版本,你可以使用debian的替代品。 继续以同样的方式发布之前下载第二个版本。 例如最新版本。

http://nodejs.org/dist/latest/ – > http://nodejs.org/dist/latest/node-v0.10.28-linux-x64.tar.gz

移动到您最喜欢的目的地,您想要安装的其他版本。

 sudo mv /extracted/folder/node-v0.10.28 /usr/lib/nodejs/node-v0.10.28 

遵循README.md文件的说明。 然后更新替代scheme,对于每个版本你有下载安装替代。

 sudo update-alternatives --install genname symlink altern priority [--slave genname symlink altern] Add a group of alternatives to the system. genname is the generic name for the master link, symlink is the name of its symlink in the alternatives directory, and altern is the alternative being introduced for the master link. The arguments after --slave are the generic name, symlink name in the alternatives directory and alternative for a slave link. Zero or more --slave options, each followed by three arguments, may be specified. If the master symlink specified exists already in the alternatives system's records, the information supplied will be added as a new set of alternatives for the group. Otherwise, a new group, set to automatic mode, will be added with this information. If the group is in automatic mode, and the newly added alternatives' priority is higher than any other installed alternatives for this group, the symlinks will be updated to point to the newly added alternatives. 

例如:

 sudo update-alternatives --install /usr/bin/node node /usr/lib/nodejs/node-v0.10.28 0 --slave /usr/share/man/man1/node.1.gz node.1.gz /usr/lib/nodejs/node-v0.10.28/share/man/man1/node.1 

然后,可以使用update-alternatives --config node在机器中安装的任意版本之间进行select。

仅供参考,根据nodejs github repo的wiki中的这个页面 ,Chris Lea的PPA(在其他一些答案中提到)已经被NodeSource发行版所取代,作为在Ubuntu中从源代码安装nodejs的主要方式:

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

这是支持三个最新的(在写这篇文章的时候)LTS版本的Ubuntu:10.04(清晰),12.04 LTS(精确)和14.04(可信)。

我不确定这将有助于安装旧版本的nodejs,但是我将其放在这里以防止其他人需要安装未包含在发行版本库中的特定(更新版本)的nodejs版本。

Node.js项目最近推出了一个新的稳定版本0.10.0版本在Ubuntu 13x上使用以下命令sudo apt-get install nodejs = 0.10.18-1chl1〜raring1

是的,它是一个重复的答案,但我坚持使用n模块安装特定版本(以下命令安装节点版本6.9.5)。

 npm install -gn n 6.9.5 

NVM(节点版本pipe理器)

在Ubuntu 17.10中testing:

 curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | sh source ~/.nvm/nvm.sh nvm install 0.9.0 nvm install 0.9.9 nvm use 0.9.0 node --version #v0.9.0 nvm use 0.9.9 node --version #v0.9.9 

对于最近的长期支持版本的特定情况(build议如果您可以select):

 nvm install --lts nvm use --lts npm --version npm install --global vaca vaca 

由于必须为每个新的shell执行采购,因此您可能需要将以下内容添加到您的.bashrc

 f="$HOME/.nvm/nvm.sh" if [ -r "$f" ]; then . "$f" &>'/dev/null' nvm use --lts &>'/dev/null' fi 

优点:

  • 允许您使用多个版本的节点,而不使用sudo

  • 类似于Ruby RVM和Python Virtualenv,被广泛认为是Ruby和Python社区的最佳实践

  • 在可能的情况下下载预编译的二进制文件,如果没有,则下载源代码并为您编译一个