公司的一个项目上线,需要用到Nodejs和npm环境,这里记录下安装过程,方便回看同时供大家参考。
1)yum安装方式(版本比较老点,v5.12.0 + 3.8.6)
需要在centos中添加epel和remi源 添加epel源(如果提前安装了其他的epel-release-7-11.noarch,则需要先卸载它,否则会和下面的冲突) 64位: [root@node-test src]# rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm =========================================================================================== 32位: [root@node-test src]# rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm =========================================================================================== 导入key: [root@node-test src]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 添加remi源 [root@node-test src]# rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm [root@node-test src]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-remi 安装完成后,执行 [root@node-test src]# curl --silent --location https://rpm.nodesource.com/setup_5.x | bash - [root@node-test src]# yum -y install nodejs [root@node-test src]# node -v v5.12.0 [root@node-test src]# npm -v 3.8.6 nodejs环境如上就已经部署好了,此时就可以执行*.js程序了。
2)tar包安装(制定版本安装,v8.1.0+5.0.3)
下载地址:https://nodejs.org/dist/ 这里下载v8.1.0 [root@node-test src]# wget https://nodejs.org/dist/v8.1.0/node-v8.1.0-linux-x86.tar.gz [root@node-test src]# tar -zvxf node-v8.1.0-linux-x86.tar.gz [root@node-test src]# mv node-v8.1.0-linux-x86 /usr/local/node-v8.1.0 [root@node-test src]# ls /usr/local/node-v8.1.0 bin CHANGELOG.md include lib LICENSE README.md share 接着通过下面两个命令建立node和npm的软连接,在较高级版本的nodejs中自带了npm,所以这里不需要另行下载。 [root@node-test src]# ln -s /usr/local/node-v8.1.0/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm [root@node-test src]# ln -s /usr/local/node-v8.1.0/bin/node /usr/local/bin/node 上面操作类似于将node和npm添加进系统环境变量,但是在后期安装head插件过程中出现报错,问题是在Path路径中找不到指定文件 为此解决这个问题,直接再修改/etc/profile,添加node的目录到Path即可,具体见下面这个 [root@node-test src]# vim /etc/profile ...... export PATH=$PATH:/usr/local/node-v8.1.0/bin [root@node-test src]# source /etc/profile 查看版本,检查是否安装成功 [root@node-test src]# node -v v8.1.0 [root@node-test src]# npm -v 5.0.3 ====================可能出现的报错==================== 报错1: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory 因为64位系统中安装了32位程序。解决方法: [root@node-test src]# yum install glibc.i686 报错2: node: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory 解决办法: [root@node-test src]# yum whatprovides libstdc++.so.6 Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.tuna.tsinghua.edu.cn * epel: mirrors.yun-idc.com * extras: ftp.sjtu.edu.cn * updates: ftp.sjtu.edu.cn libstdc++-4.4.7-23.el6.i686 : GNU Standard C++ Library Repo : base Matched from: Other : libstdc++.so.6 然后执行 [root@node-test src]# yum install libstdc++-4.4.7-23.el6.i686 ==================解决npm install过慢问题================== 如果后期在使用npm install安装过程中出现了长时间停留在fetchMetadata sill 一直不动的现象,那应该是npm源出了问题。 这时候可以切换到国内的npm源来解决这个问题,执行下面两个命令即可(大概测试了下,速度提升了10-100倍之多) [root@node-test src]# npm config set registry https://registry.npm.taobao.org [root@node-test src]# npm config get registry