sudo:npm:未找到命令
- 2024-10-14 08:40:00
- admin 原创
- 71
问题描述:
我正在尝试升级到最新版本的 node。我按照http://davidwalsh.name/upgrade-nodejs上的说明进行操作
但当我这样做时:
sudo npm install -g n
我收到错误:
sudo: npm: command not found
npm 无需 sudo 即可运行。当我这样做时:
whereis node
我懂了:
node: /usr/bin/node /usr/lib/node /usr/bin/X11/node /usr/local/node
跑步:
which npm
演出:
/usr/local/node/bin/npm
我尝试了https://stackoverflow.com/a/5062718/1246159上的解决方案
但我仍然收到相同的错误。我也查看了文件/etc/sudoers
,相关行是:
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
我觉得这很好。如何才能让 NPM 与 sudo 命令一起工作?
解决方案 1:
我必须做
sudo apt-get install npm
这对我有用。
解决方案 2:
npm 文件应该在 中/usr/local/bin/npm
。如果不存在,请使用其网站上的包再次安装 node.js。这对我来说是有效的。
解决方案 3:
对于 MAC 用户,以下步骤对我有用。
如果您收到 Brew 错误,则您需要在终端中首先输入以下命令:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
然后运行以下命令:
$ brew update
$ brew uninstall node
$ brew install node
$ brew postinstall
解决方案 4:
我遇到了同样的问题;以下是修复该问题的命令:
sudo ln -s /usr/local/bin/node /usr/bin/node
sudo ln -s /usr/local/lib/node /usr/lib/node
sudo ln -s /usr/local/bin/npm /usr/bin/npm
sudo ln -s /usr/local/bin/node-waf /usr/bin/node-waf
解决方案 5:
编辑
警告!- 执行 achmod 777
是一个相当激进的解决方案。首先尝试这些,一次一个,当其中一个有效时停止:
$ sudo chmod -R 777 /usr/local/lib/node_modules/npm
$ sudo chmod -R 777 /usr/local/lib/node_modules
$ sudo chmod g+w /usr/local/lib
$ sudo chmod g+rwx /usr/local/lib
$ brew postinstall node
是唯一一个安装过程中出现问题的部分
Permission denied - /usr/local/lib/node_modules/npm/.github
所以我
// !! READ EDIT ABOVE BEFORE RUNNING THIS CODE !!
$ sudo chmod -R 777 /usr/local/lib
$ brew postinstall node
现在,npm 已链接
$ npm -v
3.10.10
额外的
如果您在lib-R 777
上使用,我建议将嵌套文件和目录设置为默认设置:
$
find /usr/local/lib -type f -print -exec chmod 644 {} ;
$
find /usr/local/lib -type d -print -exec chmod 755 {} ;
$
chmod /usr/local/lib 755
解决方案 6:
我必须做以下事情:
brew update
brew uninstall node
访问https://nodejs.org/en/下载文件
安装下载的文件
解决方案 7:
如果您使用 nvm 安装了 node/npm,则必须先运行 nvm 环境配置文件,然后才能使用任一包。
这通常位于 ~/.nvm/nvm.sh 中。
要自动运行它,请包括:
source ~/.nvm/nvm.sh
在您的用户的 .bash_profile 文件中
如果您随后想让该用户使用 sudo,请确保包含 -i 参数以使 sudo 设置用户环境。例如
sudo -iu jenkins npm install grunt-cli
解决方案 8:
您可以通过为 npm 和 node 创建符号链接来解决这个问题,这个方法快捷又简单:
sudo ln -s $(which npm) /usr/local/bin/npm
sudo ln -s $(which node) /usr/local/bin/node
我用它which
来获取位置,然后将其作为变量传递给命令,例如$(which npm)
。
我也为节点创建了一个符号链接,因为 npm 依赖于节点。
然后你就可以:
sudo npm -v
不需要重新安装节点或者对整个目录进行 chmod 操作。
我已经在 ubuntu 上测试过了,但它应该可以在大多数 Linux 发行版上运行。
解决方案 9:
您可以创建符号链接并使其起作用。
找到电流路径
npm
which npm
通过以下命令创建符号链接
sudo ln -s **which/npm** /usr/local/bin/npm
验证。
sudo npm -v
解决方案 10:
在 macOS 上,这对我有用:
brew reinstall node
解决方案 11:
为了使用 sudo 权限全局安装 npm 包,/usr/bin/npm
应该可用。如果npm
存在于其他目录中,请创建一个软链接,例如:
sudo ln -s /usr/local/bin/npm /usr/bin/npm
它适用于 Fedora 25、node8.0.0 和 npm5.0.0
解决方案 12:
对于 CentOS 用户,这对我有用:
sudo yum install npm
解决方案 13:
对于 Debian,安装完 node 后输入
curl -k -O -L https://npmjs.org/install.sh
ln -s /usr/bin/nodejs /usr/bin/node
sh install.sh
解决方案 14:
只需重新安装。
在 RHEL、CentOS 和 Fedora 上
sudo yum remove nodejs npm
sudo dnf remove nodejs npm [On Fedora 22+ versions]
然后
yum -y install nodejs npm
dnf -y install nodejs npm [On Fedora 22+ versions]
简单!... 现在 node 和 npm 都可以很好地运行!
解决方案 15:
我通过以下方式解决了这个问题
apt-get install npm2deb
解决方案 16:
我的解决方案是:
sudo -E env "PATH=$PATH" n stable
对我来说很好用。
在这里找到: https: //stackoverflow.com/a/29400598/861615
发生这种情况是因为您更改了默认的全局包目录
解决方案 17:
为我工作解决全局安装包时的 EACCES 权限错误
为了最大限度地减少权限错误的可能性,您可以将 npm 配置为使用其他目录。在此示例中,您将在主目录中创建并使用隐藏目录。
备份您的计算机。在命令行上,在您的主目录中,创建一个用于全局安装的目录:
mkdir ~/.npm-global
配置 npm 以使用新的目录路径:
npm config set prefix '~/.npm-global'
在您喜欢的文本编辑器中,打开或创建一个 ~/.profile 文件并添加以下行:
export PATH=~/.npm-global/bin:$PATH
在命令行上,更新系统变量:
source ~/.profile
要测试您的新配置,请在不使用 sudo 的情况下全局安装一个包:
npm install -g jshint
解决方案 18:
如果您已经下载了节点包并解压到某处,那么/opt
您可以在里面简单地创建符号链接/usr/local/bin
。
/usr/local/bin/npm -> /opt/node-v4.6.0-linux-x64/bin/npm
/usr/local/bin/node -> /opt/node-v4.6.0-linux-x64/bin/node
解决方案 19:
因此,对于那些使用:
NVM 和自制
确保设置了 node 版本。对我来说,我的 node 版本不再设置。因此,我使用以下方法检查了我拥有的版本
nvm ls
这里列出了 v16.13.1,所以我将其设置为使用这个
nvm use 16
一旦设置了 node 版本,npm 命令就可以再次工作了
解决方案 20:
我遇到了同样的问题,原因是安装 node 时未安装 npm 包管理器。这是由于以下错误造成的:在安装过程中有一个名为“自定义设置”的步骤,在这里您可以选择以下选项之一:1) Node.js 运行时(默认选择)。2) npm 包管理器 3) 在线文档快捷方式。4) 添加到路径。如果您继续这样做,npm 包管理器将不会安装,因此您将收到错误。
解决方案:获得这些选项后,请选择 npm 包管理器。这对我来说很有效。
解决方案 21:
使用 visudo 将 npm 二进制路径附加到 sudo 路径并编辑“secure_path”
现在“sudo npm”可以正常工作
解决方案 22:
我在 Homestead 也遇到了同样的问题,尝试了很多方法。我尝试过
sudo apt-get 安装 nodejs
我收到以下错误:
The following packages have unmet dependencies:
npm : Depends: nodejs but it is not going to be installed
Depends: node-abbrev (>= 1.0.4) but it is not going to be installed
Depends: node-ansi (>= 0.3.0-2) but it is not going to be installed
Depends: node-ansi-color-table but it is not going to be installed
Depends: node-archy but it is not going to be installed
Depends: node-block-stream but it is not going to be installed
Depends: node-fstream (>= 0.1.22) but it is not going to be installed
Depends: node-fstream-ignore but it is not going to be installed
Depends: node-github-url-from-git but it is not going to be installed
Depends: node-glob (>= 3.1.21) but it is not going to be installed
Depends: node-graceful-fs (>= 2.0.0) but it is not going to be installed
Depends: node-inherits but it is not going to be installed
Depends: node-ini (>= 1.1.0) but it is not going to be installed
Depends: node-lockfile but it is not going to be installed
Depends: node-lru-cache (>= 2.3.0) but it is not going to be installed
Depends: node-minimatch (>= 0.2.11) but it is not going to be installed
Depends: node-mkdirp (>= 0.3.3) but it is not going to be installed
Depends: node-gyp (>= 0.10.9) but it is not going to be installed
Depends: node-nopt (>= 3.0.1) but it is not going to be installed
Depends: node-npmlog but it is not going to be installed
Depends: node-once but it is not going to be installed
Depends: node-osenv but it is not going to be installed
Depends: node-read but it is not going to be installed
Depends: node-read-package-json (>= 1.1.0) but it is not going to be installed
Depends: node-request (>= 2.25.0) but it is not going to be installed
Depends: node-retry but it is not going to be installed
Depends: node-rimraf (>= 2.2.2) but it is not going to be installed
Depends: node-semver (>= 2.1.0) but it is not going to be installed
Depends: node-sha but it is not going to be installed
Depends: node-slide but it is not going to be installed
Depends: node-tar (>= 0.1.18) but it is not going to be installed
Depends: node-underscore but it is not going to be installed
Depends: node-which but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
最后我尝试了
sudo apt-get dist-upgrade
它工作得很好。
root@homestead:/usr/local/bin# npm -v
3.10.10
root@homestead:/usr/local/bin# node -v
v6.13.0
解决方案 23:
由于我已经使用 node.js 上提供的 .tar 文件安装了 node.js,因此我必须将节点目录的位置放在:
~/.bashrc
通过使用命令将普通用户更改为 root 来取消 root 权限:
sudo-i
然后我必须将解压后的节点路径添加到 .bashrc 文件中,如下所示:
然后使用以下方式重新引用 .bashrc
.~/.bashrc
此后
npm: command not found
走了
解决方案 24:
重新安装 node 似乎是可接受的解决方案,但问题是没有对 nodejs 文件夹 /usr/local 的权限。
输入以下命令sudo chmod -R 777 /usr/local/nodejs/
解决方案 25:
就我而言,出于某种原因,在安装了一些 Python 模块后,我突然收到消息,提示“node
未安装”或“未被识别为命令”。经检查,我的路径已在 中注册.bashrc
。因此,我找到了该文件,一切又开始正常工作。
source .bashrc
解决方案 26:
对我来说很好用......
在我的另一台电脑上
mkdir TEST
cd TEST
npm init -y
npm install npm
然后将安装好的项目文件夹复制npm
到目标电脑
cd TEST
chmod +x node_modules/.bin/npm
node_modules/.bin/npm install -g npm
npm
然后使用-g
密钥安装...
解决方案 27:
彻底删除节点:
brew uninstall --force node
再次安装:
brew install node;
which node # => /usr/local/bin/node
export NODE_PATH='/usr/local/lib/node_modules'
解决方案 28:
万一对任何使用软件包的人来说都有用,rh-*
这对我有用:
sudo ln -s /opt/rh/rh-nodejs8/root/usr/bin/npm /usr/local/bin/npm
解决方案 29:
如果你使用的是 Linux,请删除 /usr/lib 中的 node_modules 文件夹
sudo rm -rf node-modules
然后使用 curl 重新安装节点:
sudo apt-get update
sudo apt install curl build-essential
curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt install -y nodejs
解决方案 30:
我的解决方法是以 root 身份登录,这样我就不必再使用 sudo 了
su root
- 2024年20款好用的项目管理软件推荐,项目管理提效的20个工具和技巧
- 2024年开源项目管理软件有哪些?推荐5款好用的项目管理工具
- 项目管理软件有哪些?推荐7款超好用的项目管理工具
- 项目管理软件哪个最好用?盘点推荐5款好用的项目管理工具
- 项目管理软件有哪些最好用?推荐6款好用的项目管理工具
- 项目管理软件有哪些,盘点推荐国内外超好用的7款项目管理工具
- 2024项目管理软件排行榜(10类常用的项目管理工具全推荐)
- 项目管理软件排行榜:2024年项目经理必备5款开源项目管理软件汇总
- 2024年常用的项目管理软件有哪些?推荐这10款国内外好用的项目管理工具
- 项目管理必备:盘点2024年13款好用的项目管理软件