npm 全局执行 update 、 outdated 出现 npm-debug.log 404 错误的问题

想要执行一次全局更新,发现屡次报错:

# npm update -g

提示的错误信息包含如下内容:

npm ERR! code E404
npm ERR! 404 Registry returned 404 for GET on https://registry.npmjs.org/npm-debug.log

寻找解决方案未果。后来看到一个不相关的回答: npm cache clean ,脑洞大开想到可能是 npm 的 modules 文件夹下多出了一个 npm-debug.log 的文件,导致查询仓库时把这个文件名也拿去查询了。 locate 一下发现果真如此:

$ locate npm-debug.log

/home/xxxxxx/npm-debug.log
/usr/lib/node_modules/npm-debug.log

把在系统目录下的这个 npm-debug.log 文件删掉后,再次执行全局的 update 或 outdated 命令,一切恢复正常。

猜测有可能是某次用了 root 用户执行 npm 命令失败后,导致产生的错误日志文件放在错误的目录下,或者是其他调用引起?未证实。

posted @ 2017-02-08 18:51  BlackStorm  阅读(...)  评论(... 编辑 收藏