Vagrant / etc / sysconfig / network和/etc/resolv.conf

时间:2014-02-04 15:26:42

标签: puppet

我有以下Vagrantfile:

Vagrant.configure("2") do |config|
  config.vm.define "admin" , primary: true do |node|
    node.vm.box = "centos-6.5-x86_64"
    node.vm.hostname = "admin.example.com"
    node.vm.network :private_network, ip: "10.10.10.10"
  end
end

我得到以下内容:

$ vagrant up && vagrant ssh
$ cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=admin.example.com

$ cat /etc/resolv.conf 
search example.com
nameserver 10.0.2.3

我需要HOSTNAME=admin,而不是HOSTNAME=admin.example.com

如何实现?

如果我设置node.vm.hostname = "admin", 然后/etc/resolv.conf没有search example.com

我可以添加一个vagrant shell配置器来自己创建/etc/sysconfig/network/etc/resolv.conf文件,但它看起来不太好(例如,我需要知道名称服务器)。

example.com中设置域/etc/resolv.conf的正确方法是什么?

1 个答案:

答案 0 :(得分:2)

将以下行添加到您的VagrantFile

config.vm.provider :virtualbox do |vb|
        vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
        vb.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
end