Aix

在啟動時啟動服務並在 AIX 下當機時自動重新生成它

  • February 8, 2018

我正在嘗試編寫一個可以將服務設置為的腳本:

  1. 殺死後自動重啟
  2. 開機時自動啟動

我可以通過使用來做到這一點,/etc/inittab但我正在處理的一些 AIX 伺服器沒有inittab. 這意味著我無法將服務設置為像 inittab 中的服務一樣。當我嘗試解決方法時,我發現了 mkssys、rmssys、startsrc 和stopsrc。所以我嘗試使用所有命令編寫腳本。

%post
if [ -f /bin/mkssys ]; then
mkssys -s myservice -p /opt/fikrie/bin/myservice -a "-n" -u -R -S -f 9 -n 15
startsrc -s myservice
else
#use the inittab's script here
fi

%postun
if [ -f /bin/stopsrc ]; then
stopsrc -s myservice
rmssys -s myservice
else
#use the inittab's script here
fi

這個腳本幾乎完成了這項工作。唯一的問題是該服務在啟動期間沒有啟動。這意味著我需要在伺服器首次啟動時手動啟動該過程。有什麼命令可以做到這一點嗎?我錯過了 mkssys 命令上的任何可用選項嗎?

我嘗試關注 sshd 服務,因為它不在 inittab 中,但在啟動時會啟動。也許我可以對我的服務使用相同的技巧。我認為 sshd 正在使用 rc.d 在啟動期間啟動服務。所以我嘗試在與 sshd 相同的目錄中編寫一個腳本,但它似乎不起作用。任何人都可以幫助或指導我走向正確的道路嗎?

我找到的解決方案之一是使用 rc.d 目錄。使用 sshd 作為範例,因為此過程沒有使用 inittab,但在啟動過程中仍然可以自動啟動。

引用自:https://unix.stackexchange.com/questions/179385