Amazon AWSAMIで/etc/rc.localを変更しました
#!/bin/sh
touch /var/lock/subsys/local
# setup hostname properly
/usr/bin/python /root/automation/initSystem.py
したがって、最後の行はPython構成(環境変数、ホスト名、ネットワーク設定など)を実行し、次に/etc/init.d/networkrestartを実行するスクリプトを呼び出します
rc.localを手動で実行した場合/etc/rc.localすべてが問題ありません
システムの自動起動時に機能しません。したがって、タッチコマンド(2行目-動作しました)が、pythonスクリプトは実行されません、少なくともその実行の結果(ホスト名の設定とネットワークインターフェイスの再起動はまったく動作しないようです)
何か案は?
ミステリースクリプトをデバッグすることはできません。 pythonスクリプトの実行は空の環境で機能しますか?試してみてください:
env -i /usr/bin/python /root/automation/initSystem.py
スクリプトを変更して、コマンドの出力をスクリプトにキャプチャします。
/usr/bin/python /root/automation/initSystem.py > /root/init.stdout 2> /root/init.stderr
おそらく失敗した理由についてのヒントが含まれています。