Перезагрузка сервера, очевидно, также убьет все запущенные приложения. Поэтому нам нужно создать файл на жестком диске, который выживет.
Этот файл должен только указывать, будет ли сервер перезагружаться или если он был просто перезагружен, как:
rebooted = False
rebooted = True
Затем мы предлагаем нашим приложениям разные пути, такие как:
rebooted = load_bootflag()
if not rebooted:
do_this()
rebooted = True
save_bootflag(rebooted)
shutdownroutine()
else:
do_that()
rebooted = False
save_bootflag(rebooted)
Где load_bootflag () и save_bootflag () - ваши подпрограммы для создания этого файла.