2016-06-19 170 views
0

我在centOS服務器上使用節點v0.10.x,我想更新node.js,所以後面跟着一些文章。先刪除當前安裝的:centOS無法通過yum安裝nodejs

# which node 
# cd /usr 
# rm -r bin/node bin/node-waf include/node lib/node lib/pkgconfig/nodejs.pc share/man/man1/node.1 

然後檢查節點-v是不是工作正常。但使用yum不會安裝最新的Node.js的,所以我搜索了一些後,發現這個: https://www.metachris.com/2015/10/how-to-install-nodejs-5-on-centos-and-ubuntu/

所以我也跟着命令:

# rpm -Uvh https://rpm.nodesource.com/pub_5.x/el/7/x86_64/nodesource-release-el7-1.noarch.rpm 
# yum install nodejs -y 

,這就是問題所在。它會打印許多錯誤並且保持失敗。

Resolving Dependencies 
--> Running transaction check 
---> Package nodejs.x86_64 0:0.10.42-4.el6 will be updated 
--> Processing Dependency: nodejs(x86-64) = 0.10.42-4.el6 for package:  nodejs-devel-0.10.42-4.el6.x86_64 
---> Package nodejs.x86_64 0:5.11.1-1nodesource.el7.centos will be an update 
--> Running transaction check 
---> Package nodejs-devel.x86_64 0:0.10.42-4.el6 will be updated 
---> Package nodejs-devel.x86_64 0:5.11.1-1nodesource.el7.centos will be an update 
--> Finished Dependency Resolution 

Dependencies Resolved 

================================================================================ 
Package   Arch  Version       Repository  Size 
================================================================================ 
Updating: 
nodejs   x86_64 5.11.1-1nodesource.el7.centos nodesource 8.7 M 
Updating for dependencies: 
nodejs-devel x86_64 5.11.1-1nodesource.el7.centos nodesource 7.6 M 

Transaction Summary 
================================================================================ 
Upgrade 1 Package (+1 Dependent package) 

Total size: 16 M 
Is this ok [y/d/N]: y 
Downloading packages: 
Running transaction check 
Running transaction test 


Transaction check error: 
    file /usr/lib/node_modules/npm/node_modules/semver/package.json from install of nodejs-5.11.1-1nodesource.el7.centos.x86_64 conflicts with file from package nodejs-semver-2.1.0-1.el6.noarch 
    file /usr/lib/node_modules/npm/node_modules/semver/bin/semver from  install of nodejs-5.11.1-1nodesource.el7.centos.x86_64 conflicts with file from package nodejs-semver-2.1.0-1.el6.noarch 
    file /usr/lib/node_modules/npm/node_modules/semver/semver.js from install of nodejs-5.11.1-1nodesource.el7.centos.x86_64 conflicts with file from package nodejs-semver-2.1.0-1.el6.noarch 
    ... and keeps going on ... 

而且之前刪除節點,我也這樣做:

# npm cache clean -f 
# npm install -g n 
# n stable 

但這不工作,因爲總是說版本0.10.x,甚至下載最新的一個! (我鋸6.2.2或東西)

我覺得我的服務器上搞砸了,我不知道如何解決這個問題。任何人都可以給我一些建議嗎?另外如果可以,我想安裝最新的Node.js.

+1

你可以嘗試刪除包*的NodeJS-semver-2.1.0-1.el6.noarch * –

+0

@JJHakala **查找/ -name的NodeJS-semver-2.1.0-1.el6.noarch * *結果爲空。是一個文件? – modernator

+1

@modernator,rpm包不保存爲包,它們安裝到目標(/ usr /),然後從緩存中刪除。 ...刪除:#'yum刪除nodejs-semver' ... –

回答

2

從EPEL庫

yum update 
yum install epel-release 
yum install nodejs 
node --version 

安裝節點可訪問NPM來管理他們的節點包。

yum install npm 
+3

** yum更新**失敗,同樣的錯誤。 – modernator