【问题标题】:npm: command not found centos 7npm:找不到命令centos 7
【发布时间】:2019-03-08 06:32:47
【问题描述】:

我有 centos 7 并且已经在我的机器上安装了 npm,但是当我尝试 npm 命令时它显示错误为

npm: 找不到命令

[vinit@NL577 ~]$ sudo yum install npm
[sudo] password for vinit: 
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
epel/x86_64/metalink                                                                                                           | 3.5 kB  00:00:00     
 * base: repos.del.extreme-ix.org
 * epel: repos.del.extreme-ix.org
 * extras: repos.del.extreme-ix.org
 * updates: repos.del.extreme-ix.org
adobe-linux-x86_64                                                                                                             | 3.0 kB  00:00:00     
base                                                                                                                           | 3.6 kB  00:00:00     
epel                                                                                                                           | 4.7 kB  00:00:00     
extras                                                                                                                         | 3.4 kB  00:00:00     
google-chrome                                                                                                                  | 1.3 kB  00:00:00     
sublime-text                                                                                                                   | 2.9 kB  00:00:00     
updates                                                                                                                        | 3.4 kB  00:00:00     
Package 1:npm-3.10.10-1.6.16.0.1.el7.x86_64 already installed and latest version
Nothing to do



[vinit@NL577 ~]$ npm
bash: npm: command not found...

【问题讨论】:

  • locate npmwhereis npm 可能会有所帮助。我对那个版本号有点怀疑,1.3.6 来自epel yum repo
  • 在下面的位置找到命令后 /usr/lib/node_modules/npm/
  • 将 npm 作为单独的包安装对我来说似乎很奇怪。通常,npm 与 Node 捆绑在一起。如果我是你,我会改用 nvm 之类的版本管理器。如果您愿意,我可以发布一个对此进行扩展的答案。
  • @James Hibbard 是的,它会有所帮助
  • echo $PATH 是否包含 npm bin 文件夹?

标签: node.js npm centos7 yum


【解决方案1】:

更新系统并安装必要的软件包

yum install curl sudo

从 NodeSource 存储库安装 Node.js 和 npm

我们将从 NodeSource 存储库安装 Node.js v6 LTS 和 npm,这取决于可用的 EPEL 存储库。

要在您的 CentOS 7 VPS 上启用 EPEL 存储库,请发出以下命令:

sudo yum install epel-release

启用 EPEL 存储库后,运行以下命令以添加 Node.js v6 LTS 存储库:

curl --silent --location https://rpm.nodesource.com/setup_6.x | sudo bash -

启用 NodeSource 存储库后,我们可以继续安装 Node.js v6 LTS 和 npm:

sudo yum install nodejs

如果不起作用,请尝试卸载 NodeJs 并重复所有操作。

sudo rm -rf /var/cache/yum
sudo yum remove -y nodejs
sudo rm /etc/yum.repos.d/nodesource*
sudo yum clean all

【讨论】:

    【解决方案2】:

    正如 cmets 中提到的,将 npm 作为单独的包安装对我来说似乎很奇怪。通常,npm 与 Node 捆绑在一起。

    为此,我将删除您在 PC 上的所有 Node 版本,然后使用版本管理器安装所需的 Node 版本(默认为 npm)。

    我使用过的最好的版本管理器是 nvm。你可以找到它here

    安装 nvm 的 TL;DR 是:

    curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash
    

    但我建议您查看 GitHub 上的项目并阅读其 README。还有一个很好的使用教程here

    nvm 启动并运行后,您可以这样安装 Node:

    nvm install node # "node" is an alias for the latest version
    

    或者安装特定版本的节点:

    nvm install 6.14.4 # or 10.10.0, 8.9.1, etc
    

    然后当您运行npm 时,该命令应该在您的$PATH 中可用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-28
      • 2020-12-09
      • 2020-06-13
      • 2019-11-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多