我想在我的vagrant provision引导bash文件(以root身份执行)中安装grails。我尝试更改安装,如圣杯手册所示:
curl -s get.gvmtool.net | sudo -u vagrant -H bash
sudo -u vagrant -H bash "$HOME/.gvm/bin/gvm-init.sh"
sudo -u vagrant -H bash gvm install grails
但这会产生错误:
bash: /root/.gvm/bin/gvm-init.sh: Permission denied
bash: gvm: No such file or directory
我做错了什么?
这可以工作:
curl -s get.sdkman.io | sudo -u vagrant -H bash -i
sudo -u vagrant -H bash -i 'source "$HOME/.sdkman/bin/sdkman-init.sh"; sdk install grails'
-i(模拟初始登录)选项
...这意味着特定于登录名的资源文件(如 .profile 或 .login)将由 shell 读取。如果指定了命令,则会将其传递给 执行。