前言自从买了VPS之后就一直没闲着,一直想充分利用它,做出一些东西。于是决定安装nodejs搭建web服务器等,现在nodejs的稳定版已经更新到8.x了,于是尝试安装8.x。没想到又遇到坑了,折腾了好几天。总结了一下,写成笔记,送给遇到同样坑的朋友~官方推荐的安装方式(对应版本仓库安装Nodejs)我的操作系统是CentOS664Bit,查看了官方的Nodejs升级文件(包括各种支持的系统),我的系统需要执行以下命令:curl--silent--locationhttps://rpm.nodesource.com/setup_8.x|sudobash-sudoyum-yinstallnodejs当然你可能需要通过以下命令安装额外的构建工具:sudoyuminstallgcc-c++make#或者:sudoyumgroupinstall'DevelopmentTools'其他系统可以参考文档中的其他内容。这里遇到了一个坑(这种情况可能比较少,具体解决办法后面会放在文末)。上面第一项应该默默指定使用8.x的资源,方便安装而不是yum原来的远程仓库。不知道这个解释对不对。反复尝试,命令明明提示执行sudoyum-yinstallnodejs安装nodejs8.x,但是6.x一直安装。这是一个依赖问题吗?找不到原因,只好找其他的安装方法,于是发现了第二种安装方法。手动安装Nodejs获取最新安装包,解压安装。可能依赖Python2.7或以上,我慢慢说。如果只是手动安装Nodejs8.x,执行以下命令:yuminstallgcc-c++openssl-develcd/usr/local/srcwgethttp://nodejs.org/dist/v8.9.4/node-v8.9.4.tar。gztarzxvfnode-v8.9.4.tar.gz(cdintoextractedfolder:ex"cdnode-v8.9.4.tar.gz")./configure如果makeinstall顺利,应该没有问题。需要一点时间,有点长,会提示安装完成。可以执行node-v查看是否是8.x。如果是,基本上安装部分就完成了。如果不好,那就太糟糕了,如果与Python有关,请查看Linux下的Python安装和升级指南(仍在草稿中)。删除nodejs然后再看一下删除,因为你装的是低版本,需要升级,就是先删除旧版本,nodejs应该是向下兼容的,所以没去研究,可能比较蛋疼屁股我会研究如何保存多个版本的nodejs。当然,一些旧的功能可能在新版本中被取消而导致异常。虽然一般来说升级利大于弊,但是还是要考虑老项目环境是否需要升级!如果你是一个闲着就疼的人,一定要有说服我的理由,欢迎在下方留言。几乎跑题了,删除命令实在是太简单了。sudoyumremovenodejs然后根据提示输入y,回车后很快删除。所有的删除操作都令人兴奋。..其实我在安装的过程中一点都不轻松,不然也不会折腾几天了,一是版本错误,二是Python升级。很多信息丢失后才发现版本问题。原来是yum缓存问题引起的。如果遇到类似我的问题,请尝试以下命令:rm-f/etc/yum.repos.d/nodesource-el.repoyumcleanallyum-yremovenodejsyum-yinstallnodejs参考Nodejs官方文档,通过包管理安装NodejsCentos下手动安装Nodejs的方法无法在yum仓库下安装正确版本的Nodejs(类似刚才例子中的代码,清除缓存,但对我不起作用)。CentOS下安装了nodejs7.x的包但是安装了。6.9.5(我的有效解决方案)如何通过Linux命令删除Nodejs总结所以,其实遇到版本不对应该先尝试清除缓存,再用官方命令安装~我觉得既然是ayum仓库的缓存问题,除了Nodejs,其他包可能也有类似情况。如果你也发现选择需要的版本后还是安装了老版本,而且跟依赖无关,试试清缓存:)
