В данной статье мы подробно рассмотрим как отключить автоматическое обновление баз данных dnf, кэшей и пакетов в Fedora 22 и выше.
Введение
В последних релизах Fedora (начиная с 22) старый пакетный менеджер yum был заменён форком dnf, который имеет одну неприятную особенность — автоматическое обновление базы данных при наличии доступа в Интернет вне зависимости его скорости и типа соединения, что часто может привести к трате лишних средств у пользователей с оплатой по трафику (GPRS/3G).
Каждое обновление кэша пакетов обычно занимает от 10 до 50 МБ.
Отключаем автоматическое обновление кэшей
Автоматическое обновление кэша dnf реализовано в виде системного systemd сервиса dnf-makecache и systemd таймера, поэтому нужно отключить сначала сервис, затем таймер и обязательно запретить обновление кэша в главном файле конфигурации dnf.
Отключим сервис:
sudo systemctl disable dnf-makecache.service
Отключим таймер:
sudo systemctl disable dnf-makecache.timer
Теперь откроем файл /etc/dnf/dnf.conf в любом текстовом редакторе, например vim:
sudo vim /etc/dnf/dnf.conf
Пропишем в самом конце новую строку:
metadata_timer_sync=0
Сохраним изменения в файле. Теперь автоматическое обновление кэша будет полностью отключено. Стандартное ручное обновление посредством выполнения sudo dnf update продолжит работать как и раньше.
Отключаем автоматическое обновление пакетов
Автоматическое обновление пакетов в Fedora реализовано либо посредством самого dnf (пакет dnf-automatic), либо PackageKit и его пользовательских интерфейсов, индивидуальных для каждой среды (например Apper в KDE).
Соответственно, для отключения автоматического обновления потребуется удалить эти пакеты:
sudo dnf remove dnf-automatic PackageKit
Графические фронтенды для PackageKit вроде Apper будут удалены по зависимостям вместе с ним.