linux(ubuntu)上安装nodejs和npm报错的解决方案

虽然在linux上安装这些软件和环境应该是很方便的是,可是不知道什么原因,我这边安装一直报错,试了所有的方法,均以失败而告终,足足花了半天,这可以说是很浪费生命的。这里做个记录,希望大家能够有所受益。

网上的做法通常是这样的

先更新ubuntu软件源:

sudo apt-get update 
sudo apt-get install -y python-software-properties software-properties-common 
sudo add-apt-repository ppa:chris-lea/node.js 
sudo apt-get update
1、先在系统上安装好nodejs和npm
sudo apt-get install nodejs
sudo apt-get install nodejs-legacy
sudo apt-get install npm
2、升级npm为最新版本
sudo npm install npm@latest -g
3、安装用于安装nodejs的模块n
sudo npm install -g n
4、通过n模块安装指定的nodejs
sudo n latest
sudo n stable
sudo n lts
5、查看版本
sudo node -v
sudo npm -v

一般这样的话,都是没有什么问题的。可是我这边安装nodejs是没有问题的,可是一直卡在安装npm这里。提示报错:npm命令就会提示没有该命令。


笔者是先彻底卸载掉nodejs,以及npm的东西,运行如下命令:

sudo apt-get remove npm
sudo apt-get remove nodejs-legacy
sudo apt-get remove nodejs 
sudo rm /usr/bin/node   //如果添加了软链接到这个目录下的话,要把这里快捷方式删除

确保删除干净后,我们采用这种方法安装:

安装

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash

使用

安装成功后,需要关闭xshell,重新启动。nvm才会生效。

使用command -v nvm查看nvm是否安装成功

root@linuxidc:~# command -v nvm
nvm

查看已安装

通过nvm ls查看已安装的版本

$ nvm ls
            N/A
node -> stable (-> N/A) (default)
iojs -> N/A (default)

查看有哪些可安装

通过nvm ls-remote查看可使用版本

$ nvm ls-remote
        v0.1.14
        v0.1.15
        v0.1.16
        v0.1.17
        v0.1.18
...
        v10.6.0
        v10.7.0
        v10.8.0

安装nodejs

跟据这个列表,我们找到自己喜欢的版本,笔者这里选择最后一个:v10.8.0

通过nvm install 10.8.0来安装nodejs,后面的版本号我们可以任意选择

root@linuxidc:~# nvm install 10.8.0
Downloading and installing node v6.2.0...
Downloading https://nodejs.org/dist/v10.8.0/node-v10.8.0-linux-x64.tar.xz...

我们上面使用的是国外的服务器下载,很慢,耐心等待,nodejs和nvm成功安装!

我们运行下面的命令来确定是否已经安装好:nodejs和npm

node -v
npm -v

我们已经看到了相应的版本号了,这个时候我们看到有这样一个提示:

npm update check failed │
│ Try running with sudo or get access │
│ to the local update config store via │
│ sudo chown -R $USER:$(id -gn $USER) /home/wkp/.config

这句话的大概意思就是npm更新检查失败,还告诉了我们更新的方法,我们运行如下命令:

sudo chown -R 用户名(wkp) /home/wkp/.config
命令如下:
sudo chown -R wkp /home/wkp/.config

这个时候就不会报错了。

其实呢,笔者本来是要解决安装hexo这个东西,而这个东西又是依赖nodejs的,所以才有了这么多的问题。好的,我们继续安装hexo,运行命令:

sudo npm install hexo-cli -g

可是报错了:sudo: npm :找不到命令。后来去掉sudo,再次运行:

npm install hexo-cli -g

就不会报错了,然后我们接着继续往下走:

hexo init blog
cd blog
npm install
hexo server

基本没有什么问题了。

未经允许不得转载:哈勃私语 » linux(ubuntu)上安装nodejs和npm报错的解决方案

本文共1922个字 创建时间:2018年8月19日21:37   

分享到:更多 ()