没有权限

没有权限

我试图使用以下命令在 openstack 上使用 Chef 创建并引导一个实例:

sudo knife openstack server create -N jenkins_openstack -f 0eb9c50a-07b9-4fc1-aa33-f6bd66c6bc7b --network-ids 7d5c5d7e-e447-4b22-a5f8-5dbfb53c2128 --openstack-ssh-key-id mmm --openstack-floating-ip -r 'role[jenkins]' --environment production -i /root/.ssh/mmm.pem --ssh-user centos --bootstrap-install-command ' sudo sh -c 'echo 192.168.103.194 chef.server.com >> /etc/hosts''

但这不起作用并给出此错误:

-bash: /etc/hosts: 权限被拒绝

有任何想法吗?

答案1

单引号不嵌套:

--bootstrap-install-command ' sudo sh -c  'echo 192.168.103.194 chef.server.com   >> /etc/hosts''

will的参数--bootstrap-install-commandsudo sh -c 'echo,那么杂散标记192.168.103.194 chef.server.com >>/etc/hosts 将保留,导致非 sudo 尝试追加到 file /etc/hosts。这解释了您收到的错误消息。

试试这个:

--bootstrap-install-command 'sudo sh -c "echo 192.168.103.194 chef.server.com >>/etc/hosts"'

相关内容