【问题标题】:How do I fix the npm install on Linux?如何修复 Linux 上的 npm 安装?
【发布时间】:2019-09-24 03:45:49
【问题描述】:

我正在尝试使用npm install 来安装一个包,但我一直收到以下错误。

我尝试从根目录再次更新和下载,但似乎没有任何效果。

hackathonday1-2 git:(save-button) ✗ npm install file-saver --save

npm WARN checkPermissions 缺少对 /home/salman/node_modules/axios npm WARN checkPermissions Missing 写访问 /home/salman/node_modules/coffeescript npm WARN checkPermissions 缺少对 /home/salman/node_modules/coffee-script npm WARN checkPermissions 缺少对 /home/salman/node_modules/file-saver npm WARN 的写访问权限 checkPermissions 缺少对 /home/salman/node_modules/materialize-css npm WARN enoent ENOENT:否 这样的文件或目录,打开 '/home/salman/package.json' npm WARN salman 没有描述 npm WARN salman 没有存储库字段。 npm 警告 salman 没有 README 数据 npm WARN salman 没有许可证字段。

npm 错误!代码 EACCES npm 错误!系统调用访问 npm ERR!小路 /home/salman/node_modules/axios npm 错误! errno -13 npm 错误!错误: EACCES:权限被拒绝,访问“/home/salman/node_modules/axios” npm 错误! [错误:EACCES:权限被拒绝,访问 '/home/salman/node_modules/axios'] { npm 错误!堆栈:“错误:EACCES: 权限被拒绝,访问“/home/salman/node_modules/axios””,npm ERR! 错误号:-13,npm 错误!代码:'EACCES',npm 错误!系统调用:'访问', npm 错误!路径:'/home/salman/node_modules/axios' npm ERR! } npm 错误! npm 错误!该操作被您的操作系统拒绝。 npm 错误! 您可能没有权限访问此文件,因为 当前用户 npm ERR! npm 错误!如果你相信这可能是一个 权限问题,请仔细检查 npm ERR!的权限 文件及其包含的目录,或尝试运行 npm ERR!这 再次以 root/管理员身份执行命令。

npm 错误!可以在以下位置找到此运行的完整日志:npm ERR!
/home/salman/.npm/_logs/2019-09-24T03_37_30_909Z-debug.log

【问题讨论】:

  • /home/salman/.npm/_logs/2019-09-24T03_37_30_909Z-debug.log 这里有完整的日志。
  • 您是否尝试在您的主目录中运行 npm install ?里面有package.json吗?
  • stackoverflow.com/questions/48910876/… 在这里看到同样的问题-同样的错误
  • 以目录所有者身份运行npm install
  • 你用sudo试试。这是权限访问错误。

标签: javascript node.js npm npm-install


【解决方案1】:

如果 Linux 上 npm install 出现权限错误,您可以尝试在命令开头包含 sudo。须藤 npm 安装。还要确保 node.js 在你的机器上全局安装。还要确保你有一个 package.json 文件夹。

【讨论】:

    【解决方案2】:

    这只是抱怨您不拥有文件夹/home/salman/node_modules/axios/home/salman/node_modules/file-saver 等事实。由于它是您的主目录,因此实际上不应该有任何您不拥有的目录或文件/home/salman。我的猜测是,这是因为您运行 npmsudo 导致它在您的主文件夹中创建一些文件,这些文件归 root 而不是 salman

    要解决权限问题,只需重新获得node_modules 文件夹的所有权:

    cd /home/salman
    sudo chown -R salman:salman node_modules
    

    -R 标志使chown 递归地将您设置为目录中所有文件和子文件夹的所有者。

    旁注:你真的不应该使用你的主目录作为你的 npm 项目目录。在各个项目目录中执行 npm install。是的,这会浪费磁盘空间,但磁盘空间很便宜,可以随意浪费。即使你有 10 个 node.js 项目,即使有很多重复的代码文件,你也不太可能使用超过 5GB 的磁盘空间。一部高清电影有时比这更大。代码的典型磁盘空间使用量约为 2GB。

    【讨论】:

      【解决方案3】:
      sudo chown -R $USER /home/salman/node_modules
      

      这个命令很有用..在你的系统上运行它..

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-04-13
        • 1970-01-01
        • 2021-09-07
        • 2015-02-02
        • 1970-01-01
        • 1970-01-01
        • 2020-07-24
        • 1970-01-01
        相关资源
        最近更新 更多