想要執行一次全局更新,發現屢次報錯:
# 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 命令失敗后,導致產生的錯誤日志文件放在錯誤的目錄下,或者是其他調用引起?未證實。
