我使用该选项安装 CentOS 7 ks=http://10.0.0.100:8080/anaconda-ks.cfg
,并通过运行一个简单的 Web 服务器来提供静态配置文件:python -m SimpleHTTPServer 8080
。
在我的系统中anaconda-ks.cfg
,我当前设置的主机名如下:
network --hostname=centdev
但是,我希望从与我相同的位置读取一个文本文件(最好是使用 Python 的 JSON)anaconda-ks.cfg
,并根据字典检查当前硬件 ID,以确定要使用哪个主机名。
我可以以某种方式避免硬编码吗http://10.0.0.100:8080
anaconda-ks.cfg
例如通过环境变量进入并获取该位置?我是否只需
anaconda-ks.cfg
使用%pre
下面的方法嵌入我的 python 脚本?
%pre
#!/bin/python
print 'Read JSON file here...'
%end
答案1
这就是我所做的...我在anaconda-ks.cfg
脚本中添加了以下内容:
# Pre python
%pre --interpreter=/usr/bin/python
print 'python code goes here to define "myhostname"'
...
hfile = open("/tmp/hostname.ks", "w")
hfile.write("network --hostname=" + myhostname)
hfile.close()
%end
# Network information
network --bootproto=dhcp --device=eth0 --ipv6=auto --activate
%include "/tmp/hostname.ks"