错误:EACCES:权限被拒绝,取消链接'/ usr / local / bin / npm

时间:2020-03-09 20:34:57

标签: root sudo permission-denied unlink npm-update

首先,我研究了这些先前的帖子以寻找答案:EACCES: permission denied, unlink

Error: EACCES: permission denied, unlink '/usr/local/bin/npx'

Error while building or running ngx-bootstrap tests

我在任何这些帖子中都找不到我寻求的答案,或者我不够了解,无法解释如何使用这些答案来解决我的问题。我仍在学习,因此,如果您回答我的帖子,请确保您进行解释,以便我可以完全掌握正在执行的操作以及原因。我会非常感激。

在VS Code中,我试图在一个项目上工作,但需要更新npm版本。参见示例:

VSCode npm update error

在研究了f ***(请原谅我的语言)之后,我进行了以下操作:

阅读本文后:https://flaviocopes.com/npm-fix-missing-write-access-error/ 我做了他的建议,然后尝试进行npm更新。

missing write error - fix

然后我执行以下操作,以查找谁拥有目录

npm error 2

在此之后,我几乎迷失了下一步该做什么,为什么我会有三个'drwxr-xr-x'?我有三个npm软件包,这到底是什么意思?我可以将它们全部组合成一个吗?还是最好全部删除并从头开始,但是我会遇到同样的问题吗?

我也读过:

要最大程度地减少权限错误的可能性,可以将npm配置为 使用其他目录。在此示例中,您将创建并使用 主目录中的隐藏目录。

备份计算机。在命令行的主目录中, 创建用于全局安装的目录:mkdir〜/ .npm-global 配置npm以使用新的目录路径:npm config set prefix '〜/ .npm-global'在您喜欢的文本编辑器中,打开或创建一个 〜/ .profile文件并添加以下行:export PATH =〜/ .npm-global / bin:$ PATH 在命令行上,更新系统变量:source〜/ .profile 要测试您的新配置,请在不安装任何软件包的情况下全局安装软件包 使用sudo

但是根据终端显示,如果我必须[unlink'/ usr / local / bin / npm'],该功能将起作用。老实说,我不希望重新配置,因为我需要备份所有内容,是否有人对解决方案有建议或建议?

提前谢谢大家。再一次,我想重申我仍在学习,所以请对您的回答保持友善和详尽。

1 个答案:

答案 0 :(得分:0)

看看您是否还有其他路径设置

喜欢**

/ usr / local / share / npm / bin

** 左右,然后像下面这样运行install。

**

sudo npm install npm @ latest -g

**