ckpunmkug
Посетитель
- Регистрация
- 22 Мар 2026
- Сообщения
- 4
- Реакции
- 0
Как не пародоксально, но здравого автоматического обновления системы по умолчанию в дебианных линуксах нет, видимо предполагается что админ будет регулярно заходить и ручками грузить обновки. Но практика показывает, что обычно бывает так - взяли VDS с Ubuntu, залили сайт и админ забыл про сервак пока он не сломается. Самое неприятное что система управления пакетами - apt, не любит автоматический режим и спотыкается, когда в обновлённых пакетах появлется иная конфигурация. Ещё иногда нужно перегрузить систему после обновления. Погуглив и покурив мануалы я накидал скрипт который на полном автомате, неспоткнувшись, установит свежие пакеты и если надо перегрузит систему, а ход обновления сохранит в лог.
В консоле создаём скрипт
Делаем его запускабельным
Предпочитаю устанавливать рандомное время для загрузки обновок
Прописываем запуск в крон
В консоле создаём скрипт
Код:
cat > /usr/local/sbin/apt_auto_update << 'EOF'
#!/bin/sh
date +"%g-%m-%d_%H:%M" > /var/log/apt/update.log
export DEBIAN_FRONTEND=noninteractive
export APT_LISTCHANGES_FRONTEND=none
apt-get update -q >> /var/log/apt/update.log
apt upgrade -q -y -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' -o Dpkg::Use-Pty=0 >> /var/log/apt/update.log
if test -f /var/run/reboot-required.pkgs
then
wall "The reboot will occur in 30 seconds."
sleep 30
reboot
fi
EOF
Делаем его запускабельным
Код:
chmod 755 /usr/local/sbin/apt_auto_update
Предпочитаю устанавливать рандомное время для загрузки обновок
Код:
echo $(( RANDOM % 61 )) $(( RANDOM % 25 ))
Прописываем запуск в крон
Код:
crontab -e
Код:
3 16 * * * /usr/local/sbin/apt_auto_updatep