重启后幸存的Python安装脚本

时间:2016-11-18 13:52:37

标签: python python-2.7 unix subprocess

作为PXE配置的一部分,我正在尝试编写一个python脚本,该脚本可以在一次性重启后继续完成某些配置。这是我到目前为止所做的:

我创建了/etc/init.d/pxe_reboot:

#! /bin/sh
case "$1" in
   start)
      python /home/user/pxe_setup.py &
      ;;
   stop|restart|reload)
      ;;
esac

我有以下脚本:

#! /usr/bin/python
import subprocess
import os.path
import sys

def run_command(command):
    p = subprocess.Popen(command,
                         stdout=subprocess.PIPE,
                         stderr=subprocess.PIPE,
                         shell=True)
    p.wait()
    return iter(p.stdout.readline, b'')

 def before_reboot():
      {stuff}

 def after_reboot():
      {more stuff}

 if os.path.isfile("/home/user/pxe_flag"):
      after_reboot()
      run_command("sudo rm /home/user/pxe_flag")
      run_command("sudo update-rc.d pxe_reboot remove")

 else:
      before_reboot()
      run_command("sudo touch /home/user/pxe_flag")
      run_command("sudo update-rc.d pxe_reboot defaults")
      run_command("sudo reboot")

这似乎主要起作用,除了我注意到机器关机时after_reboot()打印的一些打印语句,而不是下次启动时。

有没有更好的方法来做我想在python中实现的目标?

0 个答案:

没有答案