Linux

在 /etc/rc.local 中執行 python 腳本不起作用

  • December 14, 2013

我在我的 Amazon AWS AMI 上修改了 /etc/rc.local

#!/bin/sh
touch /var/lock/subsys/local
# setup hostname properly
/usr/bin/python /root/automation/initSystem.py

所以最後一行呼叫 Python 腳本進行配置(環境變數、主機名、網路設置等),然後執行 /etc/init.d/network restart

如果我手動執行 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

它可能會包含有關失敗原因的提示。

引用自:https://serverfault.com/questions/561305