npm 5.4.0 安装软件报errno -4048错误:npm ERR! Error: EPERM: operation not permitted
npm升级到5.4.0后,使用npm安装软件总是报errno -4048的错误。
错误信息:
npm ERR! path D:\workspace\test\node_modules\fsevents\node_modules\ansi-regex\package.json
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall unlink
npm ERR! Error: EPERM: operation not permitted, unlink 'D:\workspace\test\node_modules\fsevents\node_modules\ansi-regex\package.json' npm ERR! at Error (native)
npm ERR! { Error: EPERM: operation not permitted, unlink 'D:\workspace\test\node_modules\fsevents\node_modules\ansi-regex\package.json'
npm ERR! at Error (native)
npm ERR! stack: 'Error: EPERM: operation not permitted, unlink \'D:\workspace\test\node_modules\fsevents\node_modules\ansi-regex\package.json\'\n at Error (native)',
npm ERR! errno: -4048,
npm ERR! code: 'EPERM',
npm ERR! syscall: 'unlink',
npm ERR! path: 'D:\workspace\test\node_modules\fsevents\node_modules\ansi-regex\package.json' }
npm ERR! npm ERR! Please try running this command again as root/Administrator.
解决方法
npm安装软件报-4048错误,需要从几方面检查:
1、 如错误信息提示的‘Please try running this command again as root/Administrator.’,你需要使用root或者管理员来运行命令。
2、确保其他进程没有正在使用相关文件,这会导致文件被锁定。如你在编辑器打开了相关文件等
3、如果确定安装的是npm5.4.0或npm5.4.1,这可能是npm的bug引起,这个bug在npm5.4.2已经修复。修复信息查阅install: fix bug with rollback of failed optional packages on Windows。解决方法就是升级到npm5.4.2或者降级到npm5.3。