Как включить автоматическое автоматическое обновление для любого репозитория?

Попробуйте установить все зависимости Totem,

sudo apt-get install gnome-icon-theme gnome-icon-theme-symbolic gstreamer1.0-clutter gstreamer1.0-plugins-base gstreamer1.0-plugins-good libatk1.0-0 libc6 libcairo2 libclutter-1.0-0 libclutter-gtk-1.0-0 libcogl12 libdbus-glib-1-2 libgdk-pixbuf2.0-0 libglib2.0-0 libgstreamer-plugins-base1.0-0 libgstreamer1.0-0 libgtk-3-0 libnautilus-extension1a libpango1.0-0 plparser17 libtotem0 libtotem0 libx11-6python totem-common
1
задан 13 April 2017 в 15:23

3 ответа

Автоматический подход для ответа @Bruno Pereira: (Пожалуйста, подумайте о главном репозитории github, если вы найдете ответ полезным.)

Ссылка на код: https://github.com/abhigenie92/unattended_upgrades_repos[!d2 ] Проверить репозитории для добавления:

$ python automatic_upgrade.py 
Add repos:
"Ubuntu:xenial";
"LP-PPA-kubuntu-ppa-backports:xenial";
"LP-PPA-tuxonice:xenial";
"LP-PPA-webupd8team-sublime-text-3:xenial";

Skipping files due to not present origin or suite. Or origin being a url.:
packagecloud.io_slacktechnologies_slack_debian_dists_jessie_InRelease
tiliado.eu_nuvolaplayer_repository_deb_dists_xenial_InRelease
Теперь отредактируйте /etc/apt/apt.conf.d/50unattended-upgrades, чтобы включить их:
// Automatically upgrade packages from these (origin:archive) pairs
Unattended-Upgrade::Allowed-Origins {
    "${distro_id}:${distro_codename}-security";
    "${distro_id}:${distro_codename}-updates";
    "${distro_id}:${distro_codename}-proposed";
    "${distro_id}:${distro_codename}-backports";
  "Ubuntu:xenial";
  "LP-PPA-kubuntu-ppa-backports:xenial";
  "LP-PPA-tuxonice:xenial";
  "LP-PPA-webupd8team-sublime-text-3:xenial";
};
....
....
Проверьте, включены ли они:
$ sudo unattended-upgrade --dry-run --debug
Initial blacklisted packages: 
Initial whitelisted packages: 
Starting unattended upgrades script
Allowed origins are: ['o=Ubuntu,a=xenial-security', 'o=Ubuntu,a=xenial-updates', 'o=Ubuntu,a=xenial-proposed', 'o=Ubuntu,a=xenial-backports', 'o=Ubuntu,a=xenial', 'o=LP-PPA-kubuntu-ppa-backports,a=xenial', 'o=LP-PPA-tuxonice,a=xenial', 'o=LP-PPA-webupd8team-sublime-text-3,a=xenial']
pkgs that look like they should be upgraded: 
Fetched 0 B in 0s (0 B/s)                                                                                  
fetch.run() result: 0
blacklist: []
whitelist: []
No packages found that can be upgraded unattended and no pending auto-removals
10
ответ дан 25 May 2018 в 15:56

Есть инструкции для принудительного повторного запуска, чтобы cron запустил автоматическое обновление по следующей ссылке. Процедура остановки cron - это

sudo service anacron stop
sudo service cron stop
sudo rm -rf /var/run/unattend* /var/run/cron* /var/run/anacron*
sudo rm -rf /var/lib/apt/periodic/*

и перезапустить cron, чтобы теперь произошло автоматическое обновление (или, по крайней мере, в течение нескольких минут)

sudo service cron start
sudo anacron -fn

Как это сделать works

Несколько действий заставят его запустить.

Он запускается из режима /etc/cron.daily с помощью cron, в частности /etc/cron.daily/apt. Cron работает /etc/cron.daily в 6 ч. 5 м. (См. [F6]). Anacron работает от выскочки? и он сработает /etc/cron.daily после 5 минут безотказной работы (см. /etc/anacrontab). Примечание APT::Periodic::RandomSleep можно установить в /etc/apt/apt.conf.d/10periodic, но по умолчанию - 1800 секунд (30 минут), поэтому обновления не могут произойти до 30 минут после /etc/cron.daily/apt работает.

Как это работает

Если он работает, все должно войти в эту папку, /var/log/unattended-upgrades.

3
ответ дан 25 May 2018 в 15:56
  • 1
    Это было особенно полезно для меня, поскольку мой виртуальный хостинг-провайдер подумал, что было бы неплохо удалить /etc/cron.daily/apt из установки Ubuntu 12.04 по умолчанию - поэтому автоматические обновления APT не выполнялись :-(. ServerFault answer serverfault. com / a / 568329/95570 предоставил подробную информацию о том, как восстановить этот файл. – Alex Dupuy 29 September 2014 в 20:06

Редактирование /etc/apt/apt.conf.d/50unattended-upgrades, добавьте следующее:

Unattended-Upgrade::Origins-Pattern {
        "origin=*";
};

Это позволит автоматические обновления для всех пакетов.

2
ответ дан 25 May 2018 в 15:56
  • 1
    Да, спасибо за четкий и краткий ответ. Но есть пакеты, которые имеют origin:'', например datadog-agent из site:'apt.datadoghq.com'. В этом случае также необходимо добавить "origin=";, чтобы не пропускать пакеты с пустым началом. Но тогда лучше использовать "site=*"; вместо "origin=*";. – tobias.pal 9 May 2018 в 10:35

Другие вопросы по тегам:

Похожие вопросы: