%post kickstart期间可以运行system-config-network吗?

我目前正试图找出一个聪明的方式来设置IP,主机名,网关和DNS设置在kickstart(用户input在kickstart期间)。 在安装后用firstboot做这件事是不能接受的,所以这个必须在%post期间完成。

我已经尝试在tty6中后期运行system-config-network工具:

 #!/bin/sh chvt 6 exec < /dev/tty6 > /dev/tty6 /mnt/sysimage/usr/bin/system-config-network-tui 

这是行不通的,因为我无法捕捉用户input。

我宁愿使用内置的工具来改变后期,而不是写我自己的bash脚本来做到这一点,因为使用提供的工具不太可能破坏任何东西。

有人做了这样或类似的事情,并使其工作?

谢谢

那么这是愚蠢的。 我使用了已经支持设置主机名,ip,子网和dns信息的皮匠。 您必须将其添加为系统,如下所示:

cobbler system add –name = […] –profile = […] – ip = 10.1.1.2 –gateway = 10.1.1.1 –hostname = yourhostname.exmaple.org –name-servers = “10.1.1.1”–static = true –mac = 00:50:56:af:56:22

补鞋匠然后有一个片段,适用于你,称为“post_install_network_config”。 让我知道如果有人有任何问题。

我知道这是一个古老的问题,但我想通过search来find这个答案:

从CentOS 5开始,有一个未公开的选项,在安装过程中提示询问networkingconfiguration。 在networking语句中,将查询关键字置于–bootproto = networkingconfiguration中,如下所示:

network --device=eth0 --bootproto=query

CentOS Wiki:anaconda和kickstart的提示和技巧

我正在用wget下载脚本,并将脚本添加到/etc/rc.d/rc.local 。 在脚本里面,我正在评论rc.local中的条目,所以它不会在更多的引导下运行。 在这个脚本中,我正在做我在%post所有的东西。

编辑:
在KickStart脚本的%post部分中,我有:

 wget -O /etc/first-boot.sh http://192.168.1.10/ks/first-boot.sh echo ". /etc/first-boot.sh" >>/etc/rc.d/rc.local 

所以我不必在我正在安装的机器上连接。 只有在KickStart服务器上,我会进行更改。 在KickStart服务器上,我有一个Apache和192.168.1.10是KickStart服务器的IP地址。

编辑:
你有没有尝试过使用open

 chroot /mnt/sysimage open /usr/bin/system-config-network 

它看起来像你试图设置它们与静态值。 如果可能,请使用DHCP来设置这些项目。

你提到在kickstart期间尝试做用户交互。 我不认为这是可能的,虽然我可能是错的。 我知道RPM安装过程中的用户交互是不可能的。 这将使脚本无法进行。 同样的可能(如果我是首席devise师)将是不可能的,出于同样的原因。 相反,将这些值放在软盘上。