公司的一個專案上線,需要用到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