我需要在第一次启动时对自定义 ISO 服务器安装执行各种操作。它需要完全无需动手和互联网。
我在这里有什么选择?我看到了带有 kickstart 的安装前和安装后脚本,但它们似乎没有做任何事情。例如,我尝试使用安装后脚本设置我的主机名,但没有成功,但 ks 文件中的其他选项却成功了。
第一次运行时我需要做的事情是:
- 设置唯一的主机名
- 在 conf 文件中添加行
- 放置公钥
- 为特定用户放置自定义 shell
- 使用 ufw 设置防火墙规则
- 设置一些与互联网相关的内容并通过 VPN 连接到 Chef
我认为其中大多数(如果不是全部)只是静态文件,可以放在 ISO 上的自定义 .deb 文件中,并在系统安装期间“安装”。但是,对于那些需要运行服务的文件,通常的处理方法是什么?
答案1
在安装后脚本中,您不能调用 BASH 脚本吗?然后您可以在 BASH 脚本中处理吗?
启动时没有地方检查这些选项吗?为了理解这里的要求,我想问一下你为什么要进行安装后操作,而是有一个在启动时运行的配置脚本,尝试挂接到 grub 配置之类的操作?
答案2
我在这里听从了 shvahabi 的建议我怎样才能让“rc.local”在启动时运行?。我正在创建一个自定义 /etc/rc.local 文件并将其包含在自定义 deb 中,该文件将放置在 ISO 上并在安装时安装。rc.local 文件只添加了一行,运行我编写的脚本来实现我上面列出的多项功能。
我还将完成所有工作的实际脚本放在自定义 deb 包中,因此它也放在系统中。
诸如 ssh 密钥之类的东西也将放置在这个自定义的 deb 包中,并在安装时简单地放置到文件系统上。