2015-06-24 49 views
1

我使用PXE安裝ISO。有兩種腳本用於環境配置,我想將它們添加到kickstart文件中,以便在系統安裝完成後自動完成環境設置。如何使用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可以在系統重新啓動後通過使用kic kstart文件?或者換句話說,重啓後只執行一次腳本2。

謝謝。

回答

2

我這樣做的方法是創建一個啓動腳本,調用二級腳本,在您的情況下是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啓動啓動腳本。

在你的啓動腳本

  • 後的script2.sh成功完成,禁用啓動腳本與另一chkconfig *service_name* off所以它不是對未來的重新啓動運行。
  • +0

    太棒了!其實這正是我所做的。我在'/etc/rc.d/rc.local'中添加了'script2.sh'。並添加自我刪除以確保它在執行後會從'/ etc/rc.d/rc.local'中刪除。 – Marslo

    +0

    太棒了!很高興它對你有效。我發現這種「firstboot」方法比在'%post'中打包命令更容易管理後期安裝配置。 –

    相關問題