#1 楼
su -
yum install gcc-c++ openssl-devel
cd /usr/local/src
wget http://nodejs.org/dist/node-latest.tar.gz
tar zxvf node-latest.tar.gz
(cd into extracted folder: ex "cd node-v0.10.3")
./configure
make
make install
请注意,这要求Python 2.6+使用上述
./configure
。如有必要,可以修改“配置”文件以指向第1行中的python2.7
。要创建RPM包,可以使用FPM:
# wget http://nodejs.org/dist/node-latest.tar.gz
# tar zxvf node-latest.tar.gz
(cd into extracted folder: ex "cd node-v0.10.3")
# ./configure --prefix=/usr/
# make
# mkdir /tmp/nodejs
# make install DESTDIR=/tmp/nodejs/
# tree -L 3 /tmp/nodejs/
/tmp/nodejs/
└── usr
├── bin
│ ├── node
│ ├── node-waf
│ └── npm -> ../lib/node_modules/npm/bin/npm-cli.js
├── include
│ └── node
├── lib
│ ├── dtrace
│ ├── node
│ └── node_modules
└── share
└── man
现在制作
nodejs
软件包:# fpm -s dir -t rpm -n nodejs -v 0.8.18 -C /tmp/nodejs/ usr/bin usr/lib
,然后安装并检查版本:
# rpm -ivh nodejs-0.8.18-1.x86_64.rpm
Preparing... ########################################### [100%]
1:nodejs ########################################### [100%]
# /usr/bin/node --version
v0.8.18
>来源:https://github.com/jordansissel/fpm/wiki/PackageMakeInstall
评论
但这就是假设我已经安装正确吗?我没有什么身份证?
–qodeninja
2011年8月9日在16:59
我需要包括yum install gcc-c ++
– Yeehosef
2012年6月3日在16:23
尽管从技术上讲这是正确的,但是对于任何类型的可维护性或可重复性,强烈建议通过RPM(或发行版的任何包装)来管理软件包,而不是从需要的每台机器上手动构建和安装源代码。下面的许多答案都链接到预构建的软件包。
–杰森·安特曼(Jason Antman)
2012年8月29日19:35
现在尝试通过RPM管理Node.JS及其任何生态系统都是徒劳的,我说这是短暂运行包含Node和许多模块包的yum存储库的人。
– jgoldschrafe
2012年10月25日上午11:24
@IsaacRabinovitch他们添加了一个三进制if,直到Python 2.5才出现。由于CentOS遵循将系统Python固定到某些自定义补丁程序版本2.4的RHEL路径,因此我的解决方案是yum安装python26 python26-devel,然后执行python26 configure而不是./configure。然后,由于Makefile也执行Python脚本,因此我在其中将PYTHON变量定义为python26而不是python。另外,您将在那里需要g ++,因此,如果还没有,则应安装gcc-++。
–汉克·盖伊
13年8月8日在16:13
#2 楼
如果您具有CentOS 6.x,并且已启用EPEL存储库,则可以使用yum安装node / npm:$ sudo yum install npm
安装完成后,检查以确保正确设置节点:
$ node -v
(应该返回类似
v0.10.36
的东西)。如果要使用更高版本的Node.js(例如4.x,5.x等),则可以使用Nodesource yum存储库代替EPEL。
评论
这在我的CentOS 6.4系统上可以很好地工作,并为我提供了node和npm。我得到的节点是0.10.13,与最新的src压缩包0.10.15差不多。似乎这需要更多的努力才能脱颖而出,因为它胜过“从源代码安装”选项。
–́Neek
13年8月7日在8:53
请按照此步骤安装EPEL存储库。
–李志坚
2014年8月15日下午6:25
要更新启用epel存储库,请运行yum install -y epel-release,然后可以使用yum安装node和npm。
–svassr
2015年12月11日的15:00
我无法在v4.2.x的yum上使用epel或epel-release。下面的nave.sh回答效果很好。
– jcollum
16年1月9日在20:10
通过yum安装为我提供了一个非常旧的版本v0.10.42 ...如何通过yum / rpm安装Node以获取最新版本(当前为5.9.0)?
– dokaspar
16 Mar 18 '16在8:34
#3 楼
要点“通过软件包管理器安装Node.js”不再包含在CentOS上安装nodejs的说明。从Fedora 18开始,nodejs成为标准存储库的一部分。我尝试使用“ epel-fedora-nodejs”存储库,发现它不再更新,版本保持在过时的0.6.0。好消息是,我们拥有一个简单的虚拟环境节点,为我们提供帮助。
https://github.com/isaacs/nave
现在安装nodejs非常简单。
$ wget https://raw.github.com/isaacs/nave/master/nave.sh
$ chmod +x nave.sh
$ ./nave.sh install 0.8.8
$ ./nave.sh use 0.8.8
$ node -v
v0.8.8
在nave.sh文件中,您可能必须将本地URL更改为与nodejs的最新dist结构匹配的URL。对于0.11.0,我将nave.sh更改为具有以下URL
“ http://nodejs.org/dist/v$version/node-v$version-linux-x64.tar。 gz“
评论
nodejs.tchol.org现在死了
–explunit
13年2月15日在17:54
@explunit我只是更新答案。请尝试中堂。
–user974312
13年2月26日在15:14
仅供参考:这似乎仅为此用户安装。如果要为整个系统安装它:./nave.sh usemain <您的版本>
–awl
13年4月23日在20:23
“ nodejs成为标准存储库的一部分” –在CentOS 7上,它已经过时了。安装的版本是v10.x(在IT部门始终使用的CentOS上)。
– jcollum
16年1月9日在20:12
#4 楼
对于CentOSyum install gcc-c++ make git
cd /usr/local/src/
git clone git://github.com/joyent/node.git
cd node
./configure
make
make install
评论
除非您打算为节点项目做贡献,否则您应该使用发行版而不是github版本。
– B T
2013年9月27日23:33
#5 楼
[编辑]谢谢大卫,在下面的评论中指出nodejs.tchol.org网站现在指向垃圾邮件站点(原文如此!)。因此,此答案不再起作用,请不要使用它! br />我可以确认Chris在其解决方案中解释的方法在CentOS 5.4中确实有效(我已经在一分钟前完成了:))
wget http://nodejs.tchol.org/repocfg/el/nodejs-stable-release.noarch.rpm
yum localinstall --nogpgcheck nodejs-stable-release.noarch.rpm
yum install nodejs-compat-symlinks npm
PS:当然,您必须是root用户(或使用sudo)才能进行安装。.
除了从源代码安装(始终是一种选择)之外,也许还有其他选择:在这里读到“ node.js自2012年12月起已被Fedora Rawhide接受,并将在Fedora 18中提供。”因此,也许最终它将进入标准的CentOS存储库。
我将拥有一个看这个..
评论
这在CentOS 6上效果很好。谢谢!
–凯尔·法里斯(KyleFarris)
2012年7月2日在20:52
“ nodejs.tchol.org”现在死了
– David Newcomb
2012-12-10 12:54
因此,您应该只从源代码安装。不要害怕
–约翰·亨特
13年1月3日,9:27
@JohnHunt从源代码安装意味着您无法再彻底卸载。我在Ruby中也遇到了同样的问题。幸运的是,我可以回滚VM映像...从源代码进行安装意味着您需要对要安装的软件包有深入的了解。考虑到有成千上万的linux软件包,这不是一个选择!
–基督徒
13年1月24日在8:41
“上面的链接”?答案是按投票排序的,而克里斯的答案现在低于您。
–艾萨克·拉比诺维奇(Isaac Rabinovitch)
13年3月9日在6:07
#6 楼
如上所述,“ tchol.org”不见了,使CentOS的人们开始放弃使用软件包管理器,或者转向另一个操作系统。我与自己缔结了一项协议,反对在实验/开发人员之外的所有人员(同样)上做每件事。幸运的是,仍然可以在以下位置获得rpm:
http://patches.fedorapeople .org / oldnode / stable / el6 / x86_64 /
只需忽略repo-installer的rpm,它将yum定向到已失效的站点。
那应该给我们一些时间,除非/,直到它们变得过时为止。
我会睁大眼睛寻找更新的存储库,如果发现它们,请回发。
评论
我想说您链接中的0.6版本已经过时了。目前看来RHEL / CentOS确实没有很好的选择,考虑到Red Hat本身提供了node.js PaaS,这很奇怪。
–explunit
13年2月16日在14:12
#7 楼
这在CentOS 5.7上对我有用:yum install openssl-devel
yum install python27
yum install gcc-c++
cd /usr/local/src
wget http://nodejs.org/dist/node-latest.tar.gz
tar zxvf node-latest.tar.gz
cd node-v[tab]
python2.7 configure
make PYTHON=python2.7
make install
评论
我必须在CentOS 5.10上使用python 2.6,因为python 2.7不在仓库中。
– ohho
2014年2月25日下午4:03
#8 楼
我在其他任何答案中都没有列出另一种方法,那就是使用从0.8.6开始发布的Linux二进制发行版。这里是我使用的脚本:
# get the latest stable binary
latest_node=$(curl http://nodejs.org/dist/latest/SHASUMS.txt | grep 'linux-x64.tar.gz' | awk '{ print }')
wget -O ~/nodestable.tar.gz http://nodejs.org/dist/latest/$latest_node
cd /usr/local/
sudo tar xzvf ~/nodestable.tar.gz --strip=1
或者,如果您想要特定的版本(例如,使用0.8系列) :
wget http://nodejs.org/dist/v0.8.22/node-v0.8.22-linux-x64.tar.gz
cd /usr/local/
sudo tar xzvf ~/node-v0.8.22-linux-x64.tar.gz --strip=1
在CentOS 6.3上,我必须添加以下链接,以便该节点和npm命令可以从普通用户或sudo中使用。可能不需要,具体取决于您的版本。
sudo ln -s /usr/local/bin/node /usr/bin/node
sudo ln -s /usr/local/lib/node /usr/lib/node
sudo ln -s /usr/local/bin/npm /usr/bin/npm
sudo ln -s /usr/local/bin/node-waf /usr/bin/node-waf
坦率地说,节点的情况。 CentOS / RHEL上的js相当糟糕,因为回购中都不包含node.js(请参见此处的相关问题)。此答案与前面提到的从源代码进行编译的缺点相同。
#9 楼
上面的答案已经过时了AS ROOT
curl -sL https://rpm.nodesource.com/setup | bash -
yum install -y nodejs
您已完成。
使用<验证安装br />
node -v
评论
我的curl版本似乎不喜欢该URL的SSL证书的签名授权,因此该脚本会自动失败。您可以使用curl -k选项来克服它。
–秒杀威廉姆斯
2015年1月23日在19:14
另外,将-k添加到上面的curl命令之后,您还需要在下载的“安装”脚本中更新对来自该域的curl下载的引用。然后使用bash手动运行该脚本。
–秒杀威廉姆斯
15年1月23日在19:22
#10 楼
没有人提到nvm
安全轻松地处理(多个)Node安装https://github.com/creationix/nvm?我觉得它很有用。甚至对构建节点发布文件树和自定义rpm包而无需编写太多脚本也很有用,
latest-node
,wget
,./configure
,make
,make install
等等等等。nvm install 0.10.9
将根据发行版下载二进制文件或编译源代码。
评论
是否有离线安装?
–申请肉饼
15年7月16日在15:30
#11 楼
以root身份在RHEL,CentOS或Fedora上以Node.js v4 LTS Argon的身份运行:curl --silent --location https://rpm.nodesource.com/setup_4.x | bash -
对于Node.js v5:
curl --silent --location https://rpm.nodesource.com/setup_5.x | bash -
或者用于Node.js 0.10:
curl --silent --location https://rpm.nodesource.com/setup | bash -
然后以根用户身份安装:
yum -y install nodejs
资源:https://nodejs.org/en/download/package-manager/
评论
唯一适用于CentOS 7.2的答案。并且工作如此迅速和完美。
–writeToBhuwan
16-10-2在20:30
建议:访问GitHub上的NVM项目,并从README获取明确的说明:github.com/creationix/nvm#installation
–凯V
18年7月18日在4:23
#12 楼
我有一些简单明了的说明,以及.spec文件在这里:http://www.chrisabernethy.com/installing-node-js-on-centos-redhat/
您将从源代码编译此文件,因此您需要确保拥有在系统(gcc和朋友)上执行此操作所需的所有必要软件包。这组说明是用于构建RPM的,因此,如果您缺少任何必需的软件包,rpmbuild将使您知道首先需要安装哪些软件包。
评论
欢迎来到服务器故障!尽管从理论上讲这可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。
–user9517
2011年11月14日在16:20
另外,该链接指向/ usr / src / redhat,它在我的CentOS 5安装中似乎不存在(如果我正确理解的话,它位于/ usr / local / src)。
–加藤
2011年11月17日在20:11
最近的更改还需要人们更新其Python安装(或配置将在仍使用Python 2.4的任何CentOS服务器上不起作用)。考虑更新信息并将其放在此处吗?
– Tim Post
2012年10月3日23:43
#13 楼
您还需要npmgit clone https://github.com/isaacs/npm.git
cd npm
sudo make install
评论
艾米,更多的是它带有节点。
– ThomasReggi
2012年12月28日在20:15
#14 楼
您可以使用nodebrew。
$ curl -L git.io/nodebrew | perl - setup
$ export PATH=$HOME/.nodebrew/current/bin:$PATH
$ source ~/.bashrc
$ nodebrew install-binary latest
$ nodebrew use latest
$ node -v
#15 楼
对于Ubuntu,这对我来说适用于版本0.4.10cd /usr/local/src/
sudo wget http://nodejs.org/dist/node-v0.4.10.tar.gz
sudo tar zxvf node-v0.4.10.tar.gz
cd node-v0.4.10/
sudo ./configure
sudo make
sudo make install
评论
问题是针对CentOS的
– jcollum
16年1月9日,下午1:33
#16 楼
这是我的Dockerfile,它在centOS 7中安装了节点v0.10.36FROM centos:7
RUN yum -y update
RUN yum -y install vi, vim, unzip, tar
RUN yum -y install wget, curl, git
RUN yum -y install epel-release
RUN yum -y install npm
#17 楼
对于版本4+的我的答案:yum -y install wget
wget https://nodejs.org/dist/v4.0.0/node-v4.0.0-linux-x64.tar.gz
tar xzf node-v4.0.0-linux-x64.tar.gz -C /usr/local
rm -rf node-v4.0.0-linux-x64.tar.gz
mv /usr/local/node-v4.0.0-linux-x64 /usr/local/node
ln -s /usr/local/node/bin/node /usr/bin/node
ln -s /usr/local/node/bin/npm /usr/bin/npm
检入文件夹https://nodejs.org/dist/latest/以找到最新版本的下载链接。
评论
这使我免于在运行Plesk的CentOS服务器上-由于gcc已过时,因此无法从源代码构建最新版本(5)。我会更新gcc,但通常通过yum手动更新任何内容,都会使Plesk变成一个尖叫的孩子。
–twistedpixel
15年11月19日在18:41
4.x稳定版有焦油吗?如果它在几个版本更改后仍然存在,答案会更好。
– jcollum
16年1月9日,下午1:34
我编辑了答案,以包含指向最新发行版文件夹的链接,您可以在其中找到特定于发行版的安装。
–埃文·西洛基(Evan Siroky)
16年1月9日在16:16
#18 楼
下面的代码在CentOS 6上运行良好。wget http://nodejs.tchol.org/repocfg/el/nodejs-stable-release.noarch.rpm
yum localinstall --nogpgcheck nodejs-stable-release.noarch.rpm
yum install nodejs-compat-symlinks npm
它不再起作用了,http://nodejs.tchol.org不再在线了。
评论
它曾经工作。那台机器看起来已经不存在了。
–rox0r
13年1月28日在2:06
#19 楼
不久前,我亲自完成了在RHEL 5.8上进行此安装的任务。不幸的是,随着nodejs.tchol.org脱机,唯一的选择就是从源代码进行构建。但是,构建过程变得相当复杂,因为构建脚本所涉及的Python代码没有在RHEL上使用默认版本的Python。经过大量的试验和错误(和大量的谷歌搜索),我发现了这篇博客文章,基本上描述了逐步执行以下所需任务的步骤。
a。安装Python 2.6
b。将那个版本的python设置为替代版本,然后将其设置为default
c。配置并安装node.js
d。将Python切换回默认的2.4版本。
关键是您之后应切换回Python 2.4。否则,诸如yum之类的简单操作将失败。
http://www.robeesworld.com/blog/31/installing_node_js_0_8_under_centos_5_8
#20 楼
使用最高评价的答案进行安装后,如果没有Sudo权限,我将无法安装任何全局模块(-g)。 NPM更新显示错误。下面的方法对我来说是完美的,不需要SU或SUDO权限。我使用(https://gist.github.com/isaacs中的以下方法安装了Node.js和NPM / 579814),但根据deesejohn在该页面上发表的评论中的建议修改了两行命令。
cd
sudo yum install gcc-c++
echo 'export PATH=$HOME/local/bin:$PATH' >> ~/.bashrc
. ~/.bashrc
mkdir ~/local
mkdir ~/node-latest-install
cd ~/node-latest-install
curl http://nodejs.org/dist/node-latest.tar.gz | tar xz --strip-components=1
./configure --prefix=$HOME/local
make install
curl -L https://www.npmjs.org/install.sh | sh
使用
node -v
和npm -v
检查已安装的版本
评论
感谢大家的精彩回答。我相信您现在可以同时安装nodejs和npm了!很棒dl.fedoraproject.org/pub/epel/6/x86_64/repoview/nodejs.html
...使用EPEL(如果还没有回购协议,请安装说明:rackspace.com/knowledge_center/article / ...)。
我认为EPEL的东西不再有效-或在Centos 7中不起作用。