【问题标题】:Can I Install NPM Packages Using Sudo?我可以使用 Sudo 安装 NPM 包吗?
【发布时间】:2020-12-24 20:16:38
【问题描述】:

最近有人提示我使用 npm install -g npm 安装 NPM 补丁,但此过程失败。以下是错误消息的摘录。

npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/npm
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/npm/node_modules

npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator.

使用 sudo 安装补丁是否安全?如果不是,这个问题的正确解决方法是什么?

【问题讨论】:

    标签: npm npm-install sudo


    【解决方案1】:

    是的,你可以这样做,但不,这不安全。很多人这样做,但他们不应该这样做。如果使用sudo 安装,那么包的所有依赖项和子依赖项(可以是非常多的包)都可以以root 身份运行生命周期脚本,基本上可以做任何他们想做的事情。您可以使用 --ignore-scripts 缓解这种情况,但您安装的东西可能无法正常工作。

    更好的解决方案是在the npm docs about this topic 中:使用版本管理器(如nvm)安装nodenpm 或配置npm 在不需要使用@ 的目录中进行全局安装987654329@.

    所有这一切,对于您的具体情况 - 只是更新 npm 本身 - 使用 sudo 是一种非常常见的解决方案,尽管它并不是那么可取的。如果您使用的是开发机器(例如您的个人笔记本电脑),使用版本管理器安装 npm 会更好。

    【讨论】:

      猜你喜欢
      • 2019-01-27
      • 2015-09-16
      • 1970-01-01
      • 1970-01-01
      • 2013-04-04
      • 2014-09-04
      • 2016-05-21
      • 1970-01-01
      • 2016-07-02
      相关资源
      最近更新 更多