古いSystemVスクリプトを使用して終了する前に必要なものがある場合は、/etc/rc0.d/にこのようなスクリプトを置きます。
K400rc.local.shutdown.sh
これを編集し、終了前に実行したいコマンドを入力します。 systemdを使用するLinuxでは、次のような「マニフェスト」を作成しました。
vim /lib/systemd/system/rc-local-shutdown.service
[Unit]
Description=/etc/rc.local.shutdown Compatibility
ConditionFileIsExecutable=/etc/rc.local.shutdown
DefaultDependencies=no
After=rc-local.service basic.target
Before=shutdown.target reboot.target
[Service]
Type=oneshot
ExecStart=/etc/rc.local.shutdown
StandardInput=tty
RemainAfterExit=yes
[Install]
WantedBy=shutdown.target
うまくいきます...終了する前にコマンドを入力できます。問題は... Solaris smfを使用してそのようなマニフェストを実行する方法を知っている人はいますか? rc.localを実行する方法はわかっていますが、rc.local.shutdownマニフェストを実行する方法はわかりません。知っている人はいますか?
ベストアンサー1
Solarisはsmf
以前のスクリプトを尊重するため、終了時にスクリプトが/etc/rc0.d/K400rc.local.shutdown.sh
実行されます。プレフィックスK40
とサフィックスは.sh
唯一の重要な部分であり、残りはオペレーティング0rc.local.shutdown
システムには意味がありません。
このタスクをサービスに変換するには、smf
シャットダウンと実行のレベルについて考えるのではなく、サービスが何に依存するかを判断することをお勧めします(選択したサービスが終了するとサービスは停止します)。
exec-method
次に、何もせずに起動し、終了スクリプトを停止として使用するマニフェストを作成しますexec-method
。