Это руководство должно работать для операционной системы 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