Автоматически обновляет и перезагружает мой компьютер без каких-либо проблем. Тем не менее, у меня есть сценарий Python, который запускается нечасто, но когда он запускается, это может занять несколько дней. Я хотел бы приостановить автоматическую перезагрузку во время работы этого скрипта.
Какой самый простой способ достичь этого?
Я решил создать сценарий, который проверяет, выполняет ли Python и создает и удаляет файл переопределения конфигурации соответственно. Конечно, тест для под управлением программы Python может быть большим количеством spicific, например, с помощью -f /proc/$(cat something.pid)/status
.
файлы удара:
#! /bin/bash
case "$(pgrep -xc python)" in
0) echo "No python running, ok to reboot" >> /root/scripts/pythonCheck.log
if [ -e "/etc/apt/apt.conf.d/60dontreboot" ]; then
rm "/etc/apt/apt.conf.d/60dontreboot"
fi
;;
*) echo "Python is running, shouldn't reboot" >> /root/scripts/pythonCheck.log
if [ ! -e "/etc/apt/apt.conf.d/60dontreboot" ]; then
echo 'Unattended-Upgrade::Automatic-Reboot "false"' > /etc/apt/apt.conf.d/60dontreboot
fi
;;
esac
В моем случае, я установил автоматическую перезагрузку в течение 4:00 (также в 50unattended-обновлениях), таким образом, я добавил crontab для выполнения вышеупомянутого сценария в 3:59. Я доволен выпуском одной минуты работы; мой сценарий Python только начнется несколько минут спустя.
crontab запись:
59 3 * * * /root/scripts/pythonCheck.sh
Можно использовать конфигурацию в этом файле (спасибо muru):
/etc/apt/apt.conf.d/50unattended-upgrades
и эта строка:
Unattended-Upgrade::Automatic-Reboot "false";
В оболочке я сделал бы это:
sudo sed -i 's/^Unattended-Upgrade::Automatic-Reboot "true";$/Unattended-Upgrade::Automatic-Reboot "false";/g' /etc/apt/apt.conf.d/50unattended-upgrades
Создают сценарий для этого и запускают Вас программа в сценарии. Если это закончено, возвращаются изменения.
<час>Или можно использовать этот файл:
/etc/apt/apt.conf.d/10periodic
и эта строка:
APT::Periodic::Unattended-Upgrade "0";
Это отключает автоматическое обновление в масштабе всей системы.