我在 xen 上启动了一个客户虚拟机,我想在配置文件中指定 guest-domU 的主机名。像这样
...
extra='ip=::::myguest-vm-hostname::dhcp'
...
它是用于设置网络启动网络环境的内核命令行。
它在 gentoo 上运行良好。文件中的一些代码/etc/init.d/hostname
是
start(){
hostname=${hostname-${HOSTNAME-localhost}}
hostname $hostname
}
这会将网络启动主机名分配到真实主机名中。
但是!在 ubuntu 12 上,脚本/etc/init/hostname.conf
(upstart)只能获取hostname
中的值/etc/hostname
,否则将为无...
我试过在 ubuntu 上编辑 /etc/init/hostname.conf
exec hostname=${hostname-${HOSTNAME-localhost}}
exec hostname "$hostname"
但它不起作用......
任何帮助都将不胜感激!谢谢!
答案1
我来这里是为了回答我的问题...我不应该删除 /etc/init/hostname.conf(ubuntu) 中的所有内容,并将 /etc/init.d/hostname(gentoo) 的相同代码写入其中。原始的 /etc/init/hostname.conf 是
task
exec hostname -b -F /etc/hostname
可行的 hostname.conf 是
task
export hostname=${hostname-${HOSTNAME-localhost}}
exec hostname $hostname
在 Ubuntu 上,我不应该直接分配像这样的变量hostname=xxx
,而应该将其添加export
到其前面。
看起来真的很蠢...哈哈。