V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Fffys
V2EX  ›  Node.js

为什么用 npm install 不管什么都返回 -122?

  •  
  •   Fffys · 88 天前 · 1703 次点击
    这是一个创建于 88 天前的主题,其中的信息可能已经有所发展或是发生改变。
    npm ERR! code Unknown system error -122
    npm ERR! syscall close
    npm ERR! errno -122
    npm ERR! Unknown system error -122: Unknown system error -122, close
    

    用的是学校的服务器,同学用 npm install 可以,但是我不管安装什么都返回这个错误,请问要怎么排查问题在哪里啊? 谷歌到的可能答案就这些:

    • 内存不够,但是这个每个同学都有分配的空间我的空间还有很多;
    • 没有权限,我对父目录的权限为 drwxrwsr-x ,子目录的权限为 drwxr-sr-x ,父目录的所有者不是我但是子目录的所有者是我; 尝试过清理缓存:npm cache clean --force 但不管用。 更换 npm node 版本,这个是固定的我们不能换 node v20.0.0, npm 9.6.4 感谢各位!
    4 条回复    2024-01-31 09:11:08 +08:00
    dfkjgklfdjg
        1
    dfkjgklfdjg  
       88 天前   ❤️ 1
    未知系统异常,那应该就不是 node 和 npm 的问题。
    如果在学校的话,系统应该是是 win ,所以看这个 code 有可能是因为你的目录太长了?

    [symstore erroring out with error code 122. - Microsoft Q&A]( https://learn.microsoft.com/en-us/answers/questions/603272/symstore-erroring-out-with-error-code-122)
    Fffys
        2
    Fffys  
    OP
       88 天前
    问题解决了,原因有 2:
    1. 就像 dfkjgklfdjg 说的那样,目录太长;
    2. 我以为空间还有很多,但其实空间用超了,清除缓存的命令没有起效,光缓存就占用了配额的 90%(离谱!)
    手动清空了缓存文件夹并修改了目录之后就成功安装了
    Fffys
        3
    Fffys  
    OP
       88 天前
    @Fffys 对了,再次使用 npm 安装的时候用了 --verbose 以获得更详细的出错信息,正是通过这个更详细的出错信息才最终找到问题的
    dfkjgklfdjg
        4
    dfkjgklfdjg  
       88 天前
    @Fffys #2 ,用超了很有可能是和你项目的 webpack cache 有关系。配置不当就会越用越大,最后整个磁盘都塞满了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5777 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 02:35 · PVG 10:35 · LAX 19:35 · JFK 22:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.