【问题标题】:How to execute script after system reboot by using kickstart如何在系统重启后使用 kickstart 执行脚本
【发布时间】:2015-09-10 10:51:34
【问题描述】:

我正在使用 PXE 安装 ISO。环境配置有两个脚本,我想把它们添加到kickstart文件中,这样系统安装后环境会自动完成设置。

但是,我的情况是:

  1. 脚本 1 必须重新启动(已添加到 script1.sh)
  2. 脚本 2 依赖于脚本 1

这里是 kickstart 文件的一部分:

...
...
%post

wget http://xxx/script1.sh
wget http://xxx/script2.sh

sh -x script1.sh | tee script1.log
sh -x script2.sh | tee script2.log

%end

那么,脚本 2 是否可以在系统重启后使用 kickstart 文件执行?或者其他方式,在重启后执行一次脚本 2。

谢谢。

【问题讨论】:

    标签: rhel reboot rhel6


    【解决方案1】:

    我这样做的方法是制作一个调用辅助脚本的启动脚本,在您的情况下是 script1.shscript2.sh

    这是一个关于configuring RHEL 6 Runlevels and Services 的参考资料。或者,如果可以访问现有的 RHEL/CentOS 系统,您可以浏览 /etc/init.d/ 并复制其中一个更简单的启动脚本作为您自己的基础。

    要将所有这些放在一起,您需要:

    在您的 kickstart 文件中

    1. 添加额外的wget 调用以下载您创建的启动脚本。
    2. 您需要将启动脚本复制/移动到 /etc/init.d 。请记住,%postrun in a chroot environment
    3. 使用chkconfig 在启动时启用启动脚本。

    在你的启动脚本中

    1. 成功完成script2.sh 后,使用另一个chkconfig *service_name* off 禁用启动脚本,这样它就不会在以后重新启动时运行。

    【讨论】:

    • 太棒了!实际上这正是我所做的。我在/etc/rc.d/rc.local 中添加了script2.sh。并添加自删除,确保执行后会从/etc/rc.d/rc.local中删除。
    • 太棒了!很高兴它对你有效。我发现这种“firstboot”方法比在%post 中打包命令更容易管理安装后配置。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-23
    相关资源
    最近更新 更多