این راهنما باید برای سیستم‌عامل DragonFlyBSD،‏ FreeBSD و HardenedBSD کار کند. این فقط بسته‌های به‌روز‌رسانی/ارتقا را پوشش می‌دهد و هیچ وصلهٔ دیگری را برای سامانهٔ پایه یا هسته (kernel) اعمال نمی‌کند.

If you are running FreeBSD 15.0-RELEASE or above, the base system will be updated via pkg as well. Otherwise you would still need to rely on freebsd-update or building it from source. For more information, please see the official FreeBSD Wiki or the Handbook.

توجه: تمام گام‌های مستند در این صفحه فرض می‌کند که سرور شما به ارائه خدمات رلهٔ Tor (پل/محافظ/خروج) اختصاص داده شده است. لطفاً آگاه باشید که طی فرایند به‌روزرسانی خودکار نرم‌افزار که در اینجا مستند شده است، خدمات راه‌اندازی مجدد خواهند شد.

۱. اسکریپت به‌روز‌رسانی را ایجاد کنید

بیایید از ‎/root/bin/pkg-upgrade.sh برای تنظیمات خود استفاده کنیم. باید به این شکل باشد:

#!/bin/sh
PATH="/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
RAND=$(jot -r 1 1980 5940)
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

۲. یک کار (مجموعه وظیفه‌ها) cron را زمان‌بندی کنید

For this particular schedule we opt to run the script every 0h00 (depending on your timezone), and will trigger the packages updates process itself depending on the value set to the $RAND variable - it's configured to produce a sleep between 1980 and 5940 seconds (or: 33 and 99 minutes).

More information about the use of jot in there can be found here - thanks to our anonymous cypherpunks. Adapt that to your needs should it be more suited to you.

# echo "0 0 * * * root /bin/sh /root/bin/pkg-upgrade.sh" > /etc/cron.d/pkg-upgrade
  • اگر می‌خواهید اجرای زمان‌بندی‌شده اسکریپت به‌روز‌رسانی را تغییر دهید، تنظیمات crontab خود را روی مقدار مورد استفاده خود پیکربندی کنید.

۳. cron را راه‌اندازی مجدد کنید

در نهایت، daemon ‏cron را راه‌اندازی مجدد کنید تا از تغییرات پیکربندی استفاده شود.

# service cron restart