NPM在Windows上缺少写入权限

4

我收到了这个消息:

npm WARN checkPermissions Missing Write Access to D:\my\path\node_module\bcrypt

在使用npm i bcrypt安装bcrypt包时。

我尝试以管理员身份从cmdpowershell执行命令,但都没有成功。我还清除了缓存npm cache clean并手动删除了%AppData%/npm_cache目录。

我正在使用:
npm 3.7.3
node 5.9.1
windows 7

为什么npm无法获得写入权限?请注意,npm可以很好地安装和编写其他模块(例如angular2、mongoose、express等)。


这个文件夹真正拥有什么权限?我遇到过几种情况,其中一些文件夹最终成为了SYSTEM作为所有者(因此没有用户所有者写入权限,即使是管理员也是如此);根据npm模块所在的位置,它应该是您自己帐户的配置文件(这样您就可以拥有它全部),或者是Program Files的TrustedInstaller(允许管理员写入访问)。 - user2864740
简而言之,我的第一步将是重置npm根目录的所有者。 - user2864740
我已经给node_modules目录(当前项目中的目录)的所有用户/组分配了写入权限。 “重置npm根目录的所有者” - 我没听懂你的意思。请注意,npm可以很好地安装和编写其他模块。 - rakeen
分配适当的所有者(您自己或TrustedInstaller)对于NPM根目录/文件夹(模块也可以),递归地进行 - 在根目录上执行此操作是为了确保一切都是一致的。适当的所有者授予所有必需的权限,而不更改任何其他安全访问。其他模块与特定模块/文件夹的特定权限无关。 - user2864740
我曾经遇到过类似的问题。目标模块文件夹甚至没有被创建,我自己创建了它,然后安装成功了。 - Qwerty
1个回答

4
在我的情况下,这是一个权限/所有者问题。我删除了node_modules并再次运行npm install,没有出现问题。

仍然出现“缺少写入访问权限”错误。 - Philip Rego

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接