init.dのpostinstからスクリプトを起動すると、スクリプトは終了しません。

init.dのpostinstからスクリプトを起動すると、スクリプトは終了しません。

postinst次のスクリプトがあります。

ところで、スクリプトの最後の行でサービスを開始すると、スクリプトはpostinst停止し、端末の状態に入りません。

#!/bin/sh
set -e
# Source debconf library.
. /usr/share/debconf/confmodule
mkdir -p /var/www
mkdir -p /var/log/robotasarouter
rm -f /var/www/robot_configuration_interface
ln -s /usr/share/robot_configuration_interface /var/www/
pip install virtualenv
cd /var/www/robot_configuration_interface
virtualenv env
. env/bin/activate
pip install -r requirements.txt
update-rc.d robot-configuration-interface defaults 90 >/dev/null
service robot-configuration-interface start

答え1

このpostinstスクリプトはさまざまな方法でルールに違反するため、正常に機能するとは予想できません。明示的に許可されていないstdout.Readに予期しない出力を送信するため、中断される可能性があります。man debconf-devel

関連情報