rc.local
起動中に最後に実行し、終了中に最初に実行するのと同じものを作成しようとしています。
/etc/init.d/rc.local
デフォルトでは、デフォルトテンプレートをコピー/貼り付けて、タイトルを次のように更新しました。
#! /bin/sh
### BEGIN INIT INFO
# Provides: rc.shutdown
# Required-Start:
# Required-Stop: $all
# Default-Start:
# Default-Stop: 0
# Short-Description: Executes rc.shutdown if exists
# Description:
### END INIT INFO
しかし、私が走るとupdate-rc.d rc.shutdown enable
私は得ます。
update-rc.d:エラー:rc.shutdownデフォルトの起動にはランレベルが含まれておらず、中断されます。
これは終了スクリプトなので、デフォルトの起動はありません。興味深いことに、ファイルの/etc/init.d/halt
ヘッダーは同じですが、問題はないようです。
Debian 8.1 を使用しています
答え1
8.1を使用していることを考慮すると、systemdを使用して必要なものを取得できます(これが許可されているかどうかはわかりませんが、作業は完了します)。
以下は、終了時に必要なすべての操作を実行し、一般的な終了操作を実行するユニットファイルの例です。
[Unit]
Description=Run first at shutdown
DefaultDependencies=no
Before=shutdown.target halt.target
[Service]
ExecStart=/usr/local/bin/runme
Type=oneshot
このファイルを挿入して/etc/systemd/system/runme.service
を使用して有効にすることができますsystemctl enable /etc/systemd/system/runme.service
。その後、終了または停止する前に自動的に実行されます。