DNF-AUTOMATIC(8) DNF DNF-AUTOMATIC(8)

dnf-automatic - اجرای خودکار و دوره‌ای ارتقا و به‌روزرسانی بسته‌ها در DNF

dnf-automatic [<config file>]

رابط خط فرمان جایگزین برای dnf upgrade همراه با امکانات ویژه جهت مناسب‌سازی آن برای اجرای خودکار و منظم از طریق تایمرهای systemd، جاب‌های cron و موارد مشابه.

عملکرد این ابزار معمولاً توسط فایل پیکربندی یا واحدهای تایمر با عملکردهای خاص کنترل می‌شود (در ادامه ببینید). این دستور تنها یک آرگومان اختیاری را می‌پذیرد که به فایل پیکربندی اشاره دارد، به‌علاوه برخی آرگومان‌های کنترلی که برای استفاده توسط سرویس‌های پشتیبان واحدهای تایمر در نظر گرفته شده‌اند. اگر هیچ فایل پیکربندی از طریق خط فرمان ارائه نشود، از /etc/dnf/automatic.conf استفاده می‌شود.

این ابزار متاداده بسته‌ها را در صورت نیاز همگام‌سازی کرده و سپس به‌روزرسانی‌های موجود برای سیستم مورد نظر را بررسی می‌کند و پس از آن یا خارج می‌شود، یا بسته‌ها را بارگیری می‌کند و یا آن‌ها را بارگیری کرده و اعمال می‌نماید. نتیجه عملیات توسط یک سازوکار انتخابی، برای نمونه از طریق خروجی استاندارد، رایانامه (ایمیل) یا پیام‌های MOTD گزارش داده می‌شود.

واحد تایمر سیستم‌دی dnf-automatic.timer مطابق با آنچه در فایل پیکربندی مشخص شده است (در ادامه ببینید)، در رابطه با بارگیری یا اعمال به‌روزرسانی‌ها رفتار خواهد کرد. چند واحد تایمر دیگر نیز ارائه شده‌اند که با رفتارهای استاندارد مشخصی، تنظیمات فایل پیکربندی را بازنویسی (override) می‌کنند:

  • dnf-automatic-notifyonly
  • dnf-automatic-download
  • dnf-automatic-install

صرف‌نظر از تنظیمات فایل پیکربندی، تایمر اول تنها در دسترس بودن به‌روزرسانی‌ها را اطلاع‌رسانی می‌کند. تایمر دوم آن‌ها را بارگیری کرده اما نصب نمی‌کند. تایمر سوم آن‌ها را بارگیری و نصب می‌نماید.

می‌توانید گزینه‌ای را که بیشترین مطابقت را با نیازهای شما دارد انتخاب کنید، /etc/dnf/automatic.conf را برای هرگونه رفتار خاص سفارشی‌سازی نمایید، و واحد تایمر مربوطه را فعال کنید.

برای مثال: systemctl enable --now dnf-automatic-notifyonly.timer

فایل پیکربندی به بخش‌های موضوعی مجزا تقسیم شده است.

تنظیم حالت عملکرد برنامه.

بولی (boolean)، پیش‌فرض: False

مشخص می‌کند که آیا بسته‌های شامل به‌روزرسانی‌های موجود باید توسط dnf-automatic.timer اعمال شوند (یعنی از طریق RPM نصب شوند) یا خیر. این گزینه مستلزم download_updates است. توجه داشته باشید که اگر این مقدار روی False تنظیم شود، بسته‌های بارگیری‌شده تا تراکنش موفق بعدی DNF در حافظه موقت (کَش) باقی می‌مانند. توجه داشته باشید که سایر واحدهای تایمر این تنظیم را بازنویسی می‌کنند.

بولی (boolean)، پیش‌فرض: False

مشخص می‌کند که آیا بسته‌های شامل به‌روزرسانی‌های موجود باید توسط dnf-automatic.timer بارگیری شوند یا خیر. توجه داشته باشید که سایر واحدهای تایمر این تنظیم را بازنویسی می‌کنند.

زمان به ثانیه، پیش‌فرض: 60

حداکثر زمانی که dnf-automatic منتظر برخط (آنلاین) شدن سیستم می‌ماند. مقدار 0 به این معنی است که تشخیص در دسترس بودن شبکه نادیده گرفته خواهد شد.

زمان به ثانیه، پیش‌فرض: 0

حداکثر تاخیر تصادفی پیش از بارگیری. توجه داشته باشید که به‌طور پیش‌فرض، تایمرهای systemd نیز یک تاخیر تصادفی تا سقف ۱ ساعت اعمال می‌کنند.

یکی از مقادیر default، security، پیش‌فرض: default

نوع ارتقاهایی که باید بررسی شوند. مقدار default نشان‌دهنده جستجو برای تمام به‌روزرسانی‌های موجود است، و security تنها مواردی را که دارای اعلان امنیتی (security advisory) صادرشده هستند بررسی می‌کند.

یکی از مقادیر never، when-changed، when-needed، پیش‌فرض: never

مشخص می‌کند چه زمانی سیستم پس از ارتقاها باید راه‌اندازی مجدد (ریبوت) شود. مقدار never سیستم را ریبوت نمی‌کند. مقدار when-changed پس از هرگونه ارتقا راه‌اندازی مجدد را آغاز می‌کند. مقدار when-needed تنها در صورتی سیستم را ریبوت می‌کند که برای اعمال تغییرات ضروری باشد، مانند زمانی که systemd یا هسته (کرنل) ارتقا یافته باشند.

رشته، پیش‌فرض: shutdown -r +5 'Rebooting after applying package updates'

دستوری را که باید برای راه‌اندازی مجدد سیستم اجرا شود مشخص می‌کند. برای مثال، جهت صرف‌نظر کردن از تاخیر ۵ دقیقه‌ای و پیام همگانی (wall)، از shutdown -r استفاده کنید.

انتخاب نحوه گزارش نتایج.

فهرست، پیش‌فرض: email, stdio, motd

فهرست منتشرکننده‌ها (emitters) برای گزارش نتایج از طریق آن‌ها. منتشرکننده‌های موجود عبارتند از: stdio برای چاپ نتیجه در خروجی استاندارد، command برای ارسال نتیجه به یک دستور سفارشی، command_email برای ارسال رایانامه (ایمیل) با استفاده از یک دستور، email برای ارسال گزارش از طریق ایمیل، و motd که نتیجه را به فایل /etc/motd ارسال می‌کند.

رشته، پیش‌فرض: نام میزبان (hostname) سیستم داده‌شده

نامی که سیستم در گزارش‌ها با آن خوانده می‌شود.

بولی (boolean)، پیش‌فرض: False

هنگام وقوع خطا، منتشرکننده‌ها را فراخوانی می‌کند.

پیکربندی منتشرکننده دستوری. متغیرهای قابل استفاده در آرگومان‌های رشته قالب‌بندی شامل body با بدنه پیام است.

رشته قالب‌بندی، پیش‌فرض: cat

دستور شل برای اجرا.

رشته قالب‌بندی، پیش‌فرض: {body}

داده‌هایی که باید از طریق ورودی استاندارد (stdin) به دستور ارسال شوند.

پیکربندی منتشرکننده ایمیل دستوری. متغیرهای قابل استفاده در آرگومان‌های رشته قالب‌بندی عبارتند از: body با بدنه پیام، subject با موضوع رایانامه (ایمیل)، email_from با نشانی "From:" و email_to با فهرستی از گیرندگان که با فاصله از هم جدا شده‌اند.

رشته قالب‌بندی، پیش‌فرض: mail -Ssendwait -s {subject} -r {email_from} {email_to}

دستور شل برای اجرا.

رشته، پیش‌فرض: root

نشانی فرستنده پیام ("From:").

فهرست، پیش‌فرض: root

فهرست گیرندگان پیام.

رشته قالب‌بندی، پیش‌فرض: {body}

داده‌هایی که باید از طریق ورودی استاندارد (stdin) به دستور ارسال شوند.

پیکربندی منتشرکننده ایمیل.

رشته، پیش‌فرض: root

نشانی فرستنده پیام ("From:").

رشته، پیش‌فرض: localhost

نام میزبان سرور SMTP مورد استفاده برای ارسال پیام.

عدد صحیح، پیش‌فرض: 25

شماره درگاهی (پورت) که باید در سرور SMTP به آن متصل شد.

یکی از مقادیر no، yes، starttls، پیش‌فرض: no

مشخص می‌کند که برای اتصال به سرور SMTP از TLS، STARTTLS یا بدون رمزنگاری استفاده شود.

فهرست، پیش‌فرض: root

فهرست گیرندگان پیام.

می‌تواند برای بازنویسی تنظیمات موجود در فایل پیکربندی اصلی DNF استفاده شود. مرجع پیکربندی DNF را در dnf.conf(5) ببینید.

فایل AUTHORS را در توزیع منبع DNF ببینید.

2012-2020, Red Hat, Licensed under GPLv2+

December 17, 2025 4.24.0