在VirtualBox中使用npm(gruntjs,gulp)安装软件包时出现"错误:ETXTBSY"

Ser*_*y A 1 npm gruntjs

我尝试通过npm安装gruntjs包,但命令

npm install grunt --save-dev
Run Code Online (Sandbox Code Playgroud)

收到错误:

npm ERR! error rolling back Error: ETXTBSY, unlink   '/home/me/www/public_html/test/try/node_modules/grunt/node_modules/lodash/lodash.js'
npm ERR! error rolling back  grunt@0.4.4 { [Error: ETXTBSY, unlink '/home/me/www/public_html/test/try/node_modules/grunt/node_modules/lodash/lodash.js']
npm ERR! error rolling back   stack: 'Error: ETXTBSY, unlink \'/home/me/www/public_html/test/try/node_modules/grunt/node_modules/lodash/lodash.js\'',
npm ERR! error rolling back   errno: -26,
npm ERR! error rolling back   code: 'ETXTBSY'
Run Code Online (Sandbox Code Playgroud)

试图安装gulp导致类似的错误.

我尝试使用Ubuntu 12的虚拟机,我的主机系统是Windows 8.

Pau*_*ner 10

我遇到了同样的问题,而且我对这一切也是新手,但我找到了其他地方输入以下内容

sudo npm install grunt -g
Run Code Online (Sandbox Code Playgroud)

这对我有用,希望对你有所帮助

另一件可能有用的事情是避免符号链接创建,因此您可以键入

sudo npm install grunt -g --no-bin-link
Run Code Online (Sandbox Code Playgroud)

  • 当然你还需要`--no-bin-links`来安装插件(`npm install --no-bin-links`).每当您在vbox共享文件夹中安装某些内容时,您都需要它,因为无法在这些位置存储符号链接.所以通常没有必要将`-g`与`--no-bin-links`结合起来. (2认同)