问题背景

宿主环境:Windows10

开发环境:vagrant(ubuntu) 

操作目录:synced_folder (共享目录 )

执行命令:npm install

错误信息:

npm ERR! code ETXTBSY
npm ERR! errno -26
npm ERR! syscall rename
npm ERR! ETXTBSY: text file is busy, rename '/vagrant/parse-server-advanced/node_modules/cookie-signature/package.json.3666899342' -> '/vagrant/parse-server-advanced/node_modules/cookie-signature/package.json'

这就是一个文件权限的错误,因为client环境(vagrant box)对共享目录(synced_folder)中的文件操作权限不够

解决方案

windows + vagrant (ubuntu) 开发

经常需要在  共享目录(shared_folder)中进行文件操作,包括但不限于:

  • 解压缩,如 tar xzf,unzip
    • 避免在共享目录中操作,到 vagrant(ubuntu) 非共享目录中操作;如果需要,再挪到共享目录(mv)

  • 安装,如 npm install (本地安装,非 -g)

    • 在host环境(windows)中进行(这就需要host环境中也要装node)

    • 在client环境中非共享目录安装后,再挪到共享目录(mv)

 

相关问题

https://www.cnblogs.com/ganiks/p/Error-EACCES-permission-denied-symlink.html

 

版权声明:本文为ganiks原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/ganiks/p/do-not-install-or-unzip-at-vagrant-synced-folder.html