gpt4 book ai didi

在 osx 上拒绝了对 Provision.sh 的 Vagrant 权限

转载 作者:行者123 更新时间:2023-12-02 18:12:05 24 4
gpt4 key购买 nike

我遇到了一个与在 OS X 上使用之前在 Windows 上成功测试过的 Vagrantfile/provision 运行盒子相关的问题。该盒子具有完全在虚拟机上运行 Ansible 的特殊性,但我认为问题很早就出现了。

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure(2) do |config|

config.vm.box = "ubuntu/trusty64"

config.vm.hostname = "rubicon.vm"

config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--cpus", "2" ]
vb.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate/vagrant", "1"]
end

config.vm.network "forwarded_port", guest: 8888, host: 8888
config.vm.network "private_network", ip: "192.168.33.10"

config.vm.synced_folder ".", "/vagrant"

config.vm.provision :shell,
:keep_color => true,
:inline => "export PYTHONUNBUFFERED=1 && export ANSIBLE_FORCE_COLOR=1 && cd /vagrant && ./provision.sh"
end

我在配置步骤中遇到错误:

/tmp/vagrant-shell: line 1: ./provision.sh: Permission denied

为了验证(1)是否找到了provision.sh以及(2)用户应该是root用户并拥有所有权限,我修改了provision行:

:inline => "cd /vagrant && ls -al && echo $USER &&  ./provision.sh"

输出是:

==> default: drwxr-xr-x  1 vagrant vagrant  204 Aug 12 10:06 .
==> default: drwxr-xr-x 23 root root 4096 Aug 12 10:12 ..
==> default: drwxr-xr-x 1 vagrant vagrant 136 Aug 11 14:28 ansible
==> default: -rw-r--r-- 1 vagrant vagrant 767 Aug 11 14:35 provision.sh
==> default: drwxr-xr-x 1 vagrant vagrant 102 Aug 11 14:30 .vagrant
==> default: -rwxr-xr-x 1 vagrant vagrant 785 Aug 12 10:06 Vagrantfile
==> default: root
==> default: /tmp/vagrant-shell: line 1: ./provision.sh: Permission denied

所以这没什么奇怪的。

最佳答案

您需要授予provision.sh执行权限

chmod +x provision.sh

关于在 osx 上拒绝了对 Provision.sh 的 Vagrant 权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31967637/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com