全新安装Homestead/Vagrant/Laravel后npm权限问题求助
解决Homestead中npm安装权限问题的方案
我明白折腾两天还没解决npm权限问题有多闹心,结合你用的Laravel Homestead环境,给你几个针对性的排查和解决步骤,应该能帮你搞定:
别用root/sudo运行npm
虽然你在Windows端给软件开了管理员权限,但Homestead虚拟机里的默认用户是vagrant,npm本身不推荐用root权限执行操作,哪怕加sudo也容易触发权限冲突。先清理npm缓存再重试:npm cache clean --force cd ~/src/blog npm install修复npm全局目录权限
如果还是报错,大概率是npm全局目录的权限配置有问题,咱们给当前vagrant用户单独配置npm的全局目录:# 创建用户专属的npm全局目录 mkdir -p ~/.npm-global # 让npm使用这个目录 npm config set prefix '~/.npm-global' # 将这个目录加入环境变量 echo "export PATH=~/.npm-global/bin:\$PATH" >> ~/.bashrc # 刷新环境变量 source ~/.bashrc配置完成后回到项目目录重新执行
npm install。检查项目目录的权限映射
Homestead的共享目录偶尔会出现权限继承问题,先确认项目目录的所有者是vagrant用户:sudo chown -R vagrant:vagrant ~/src/blog cd ~/src/blog npm install降级npm版本适配环境
最新版npm和Ubuntu 18.04的兼容性可能存在小问题,可以降级到稳定的6.x版本试试:npm install -g npm@6 cd ~/src/blog npm install
内容的提问来源于stack exchange,提问作者TheRealPapa
相关产品推荐
相关产品推荐

