Это руководство должно работать для операционной системы DragonFlyBSD, FreeBSD и HardenedBSD. Оно охватывает ТОЛЬКО обновления пакетов и не применяет никаких других исправлений к базовой системе или ядру.
ПРИМЕЧАНИЕ: Все шаги, описанные на этой странице, предполагают, что ваш сервер предназначен для функционирования узла Tor (моста/сторожевого/выходного). Обратите внимание, что службы будут перезапущены во время процесса автоматического обновления программного обеспечения, описанного здесь.
1. Создайте скрипт обновления
Давайте используем /root/bin/pkg-upgrade.sh
для нашей настройки. Вот как это должно выглядеть:
#!/bin/sh
PATH="/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
RAND=$(jot -r 1 900)
ENV="BATCH=yes IGNORE_OSVERSION=yes"
sleep ${RAND}
env ${ENV} pkg update -q -f && \
env ${ENV} pkg upgrade -q -U -y --fetch-only && \
env ${ENV} HANDLE_RC_SCRIPTS=yes pkg upgrade -q -U -y
2. Задайте график обновления cron
Для этого конкретного расписания мы предпочитаем запускать скрипт ежедневно в 0:00 (в зависимости от вашего часового пояса) и запускаем сам процесс обновления пакетов в зависимости от значения, установленного для переменной $RAND
- она настроена на создание спящего режима от 0 до 900 секунд (15 минут).
# echo "0 0 * * * root /bin/sh /root/bin/pkg-upgrade.sh" > /etc/cron.d/pkg-upgrade
- Если вы хотите изменить запланированное выполнение скрипта обновления, настройте параметр crontab settings на значение, которое вы хотите использовать.
3. Перезапустите cron
Наконец, перезапустите демон cron
, чтобы внесенные в конфигурацию изменения вступили в силу.
# service cron restart