Скачать обновления с помощью crontab

Я пытаюсь настроить crontab, чтобы он загружал все доступные обновления пакетов, не устанавливая их. К сожалению, похоже, что он не работает.

Моя команда crontab в sudo crontab -e:

1 */1 * * * sudo apt-get -d upgrade

должна выходить каждую первую минуту каждого часа и загружать все доступные пакеты в /var/cache/apt/archives/.

.

Когда я запускаю команду вручную из командной строки, она работает так, как задумано.

Может быть, я ошибаюсь с sudo и crontab как root idk. Любая помощь будет оценена.

0
задан 10 May 2019 в 13:24

2 ответа

Сначала выполните sudo crontab -e и добавьте / измените следующую строку:

1 * * * * /usr/bin/apt-get -d upgrade >/tmp/cronapt.log 2>&1

Затем проверьте /tmp/cronapt.log на наличие ошибок.

Второй способ - поместить следующий скрипт оболочки в папку /etc/cron.hourly, сделать его исполняемым и принадлежащим root:root:

#!/bin/bash

/usr/bin/apt-get -d upgrade
0
ответ дан 10 May 2019 в 13:24

У Apt уже есть возможность сделать это.

Отредактируйте файл /etc/apt/apt.conf.d/10periodic

Найдите запись:

APT::Periodic::Download-Upgradeable-Packages "0";

Эта запись сообщает apt, загружать ли новые пакеты, используя опцию apt --download-only. «0» означает, что опция отключена, поэтому apt установит загружаемые пакеты.

Измените «0» на другое число, чтобы включить --download-only. Число представляет частоту загрузки в днях: «1» для ежедневного, «2» для каждого второго дня, «7» для еженедельного и т.д. Если вы хотите получить ВСЕ доступные пакеты (а не только обновления для системы безопасности), вы также должны внести небольшое изменение в /etc/apt/apt.conf.d/50unattended-upgrades. Раскомментируйте источники, которые вы хотите включить. Это не рекомендуется для PPA и другого не-Ubuntu программного обеспечения, но легко возможно, если вы хотите рискнуть.

0
ответ дан 10 May 2019 в 13:24

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

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