Node.js 如何在Ubuntu上安装特定版本的Node?

Node.js 如何在Ubuntu上安装特定版本的Node?,node.js,ubuntu,n,Node.js,Ubuntu,N,我想在Ubuntu 12.04上安装NodeJS版本0.8.18。我尝试安装最新版本,然后使用nvm恢复到0.8.18,但是当我运行代码时,显然安装的软件包和两个版本(最新版本和0.8.18)存在一些问题。由于我不知道如何解决这个问题,我从节点安装中清理了机器,并考虑直接安装我感兴趣的版本(v0.8.18) Chris Lea的ppa回购中有0.8.23 此包允许您向apt get添加存储库:(您也可以手动执行此操作) 添加Chris Lea的存储库: sudo apt-add-reposito

我想在Ubuntu 12.04上安装NodeJS版本0.8.18。我尝试安装最新版本,然后使用
nvm
恢复到0.8.18,但是当我运行代码时,显然安装的软件包和两个版本(最新版本和0.8.18)存在一些问题。由于我不知道如何解决这个问题,我从节点安装中清理了机器,并考虑直接安装我感兴趣的版本(v0.8.18)

Chris Lea的ppa回购中有0.8.23

此包允许您向apt get添加存储库:(您也可以手动执行此操作)

添加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,则最有可能需要添加该版本。

仅供参考,chris lea回购协议中的可用版本目前为0.8.25


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

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

版本0.10也可与本ppa一起使用

apt-add-repository ppa:chris-lea/node.js
使用以下设备安装nodejs:

apt-get install nodejs=0.10.25-1chl1~precise1
谢谢我的朋友

注意:您可以使用NVM软件以更为节点化的方式来完成这项工作。 然而,我在一台不允许我使用NVM的机器上遇到了问题。所以我 必须寻找替代方案;-)

您可以手动下载并安装

sudo mv /extracted/folder/node-v0.10.28 /usr/lib/nodejs/node-v0.10.28
转到nodejs>下载>其他版本

选择要查找的版本

选择与您的环境对应的发行版文件并下载(注意32位/64位版本)。 例如:

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

建立: 先决条件(仅限Unix):

Unix/Macintosh:

./configure
make
make install
make test
如果python二进制文件位于非标准位置或具有 如果是非标准名称,请改为运行以下命令:

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

vcbuild.bat
vcbuild.bat test
要运行测试,请执行以下操作: Unix/Macintosh:

./configure
make
make install
make test
窗口:

vcbuild.bat
vcbuild.bat test
要构建文档,请执行以下操作: 要阅读文档,请执行以下操作: 也许您想(必须)将文件夹移动到一个更合适的位置,如/usr/lib/nodejs/node-v0.8.18/然后在/usr/bin上创建一个符号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替代品。以下载第二个版本之前发布的相同方式继续。例如最新版本

->

移动到您最喜欢的目的地,与要安装的其他版本相同

sudo mv /extracted/folder/node-v0.10.28 /usr/lib/nodejs/node-v0.10.28
按照README.md文件的说明操作。然后更新备选方案,对于您已下载的每个版本,使用安装备选方案

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
然后,您可以使用
updatealternations--config node
在机器中安装的任意数量的版本之间进行选择

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

curl -sL https://deb.nodesource.com/setup | sudo bash -
sudo apt-get install -y nodejs
在撰写本文时,Ubuntu的三个最新LTS版本支持这一点:10.04(lucid)、12.04 LTS(precise)和14.04(trusty)


我不确定这是否有助于安装旧版本的nodejs,但我把它放在这里,以防它帮助其他需要安装特定(更新)版本的nodejs的人,而这些nodejs不包括在发行版的存储库中。

试试这种方法。这让我很开心

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

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

  • 您可以检查:-

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

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

    • 检查ubuntu发行版的版本,
      cat/etc/lsb发行版
    • 检查操作系统的体系结构,
      uname-m
    • 从nodejs官方网站下载debian软件包的首选版本。
      • 对于4.x
      • 对于5.x
      • 对于0.12.x
    • 请仔细检查文件名中的
      nodejs dbg
      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
    

    n
    模块为我工作

    运行此代码以清除npm的缓存,安装n,并安装最新稳定版本的节点:

    sudo npm cache clean -f
    sudo npm install -g n
    sudo n stable
    
    请参阅:
    以及:


    要安装特定版本的节点,请执行以下操作:

    sudo n 6.11.2

    要检查哪个版本:

    节点-v


    您可能需要重新启动

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

    NVM(节点版本管理器)

    优点:

    • 允许您在不使用sudo的情况下使用多个版本的Node

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

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

    在Ubuntu 17.10中测试:

    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
    
    对于最新长期支持版本的特定情况(如果您可以选择,建议使用):

    由于每个新shell都必须进行寻源,因此安装脚本hacks会在
    .barshrc
    的末尾添加一些自动寻源。这是可行的,但我更喜欢删除自动添加的,然后添加我自己的:

    f="$HOME/.nvm/nvm.sh"
    if [ -r "$f" ]; then
      . "$f" &>'/dev/null'
      nvm use --lts &>'/dev/null'
    fi
    
    使用此设置,y
    f="$HOME/.nvm/nvm.sh"
    if [ -r "$f" ]; then
      . "$f" &>'/dev/null'
      nvm use --lts &>'/dev/null'
    fi
    
    which node
    
    /home/ciro/.nvm/versions/node/v0.9.0/bin/node
    
    which vaca
    
    /home/ciro/.nvm/versions/node/v0.9.0/bin/vaca
    
    npm link vaca
    node -e 'console.log(require.resolve("vaca"))'
    
    /home/ciro/.nvm/versions/node/v0.9.0/lib/node_modules/vaca/index.js
    
    sudo apt-get update
    sudo apt-get install build-essential checkinstall libssl-dev
    curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.1/install.sh | bash
    
    curl -o- -k  https://raw.githubusercontent.com/creationix/nvm/v0.32.1/install.sh | bash
    
    export NVM_NODEJS_ORG_MIRROR=http://nodejs.org/dist
    
    export NVM_DIR="$HOME/.nvm"
    [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
    [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This         loads nvm bash_completion
    
    curl https://deb.nodesource.com/gpgkey/nodesource.gpg.key | sudo apt-key add -
    sudo apt-add-repository "deb https://deb.nodesource.com/node_7.x $(lsb_release -sc) main"
    sudo apt-get update
    sudo apt-get install nodejs
    
    curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
    
    sudo apt install nodejs