debian.org / О Debian Где взять Debian Поддержка Уголок разработчика Новости Wiki

Автор Тема: Обновление без пользователя  (Прочитано 1623 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Алексей

  • Новичок форума
  • Topic Author
  • Сообщений: 6
Обновление без пользователя
« : 06 Февраль 2012, 06:39:22 »
Здравствуйте!!!

Необходимо, чтоб система сама обновлялась без участия пользователя. Как это возможно? (например, выполнялись команды apt-get update ; apt-get upgrade -y во время загрузки)

С уважением
 

Оффлайн vavun

  • ASUS K42f (Intel Core i3, 2Гб DDR3, 250gb HDD,Intel GMA HD)
  • Местный житель
  • ***
  • Сообщений: 147
  • Debian squeeze + Gnome
Re: Обновление без пользователя
« Ответ #1 : 06 Февраль 2012, 06:49:07 »
Spoiler: ShowHide
Цитата: нагуглил меньше чем за минуту
Пакет cron-apt представляет собой утилиту, с помощью которой автоматизируется скачивание, а при желании и установка обновлений. Расскажу как я обычно настраиваю его и apt sources.
Конфигурация apt

Мой /etc/apt/sources.list для серверов в российском сегменте сети выглядит так:
deb http://mirrors.yandex.ru/debian/ etch main contrib non-free

Раньше я указывал на зеркала http://ftp.uk.debian.org/debian/ или http://ftp.estpac.ee/debian/, потом перестал. Яндекс, хоть я его и не очень люблю, находится значительно ближе, да и трафиик с него российский.

Кроме основного файла создаётся ещё один или два:

/etc/apt/sources.list.d/security.list:
deb http://security.debian.org/debian-security/ etch/updates main contrib non-free

/etc/apt/sources.list.d/volatile.list:
deb http://volatile.debian.org/debian-volatile/ etch main contrib non-free

Для справки: volatile — это репозитарий, который позволяет обновлять те пакеты из текущей стабильной версии, которые требуют регулярного обновления. Нужен он для того, чтобы не вносить в стабильный репозитарий пакеты, не прошедшие стандартный путь через ветку testing.

Как пример, у меня volatile используется для обновлений clam и spamassassin.

Разумеется, это самый простой случай. Иногда приходится подключать backports.org или другие репозитарии, но это уже по месту. В общем случае этих трёх источников достаточно.
Конфигурация cron-apt

Ставится стандартно:
$ sudo aptitude install cron-apt

Конфигурацию имеет довольно гибкую. Параметры подробно описаны в /etc/cron-apt/config. Если оставить его как есть, то будет раз в сутки обновлять списки пакетов и скачивать всё, что нужно для dist-upgrade. Это уже само по-себе приятно. Когда начинаешь апдейтиться вручную пакеты уже готовы, не надо ждать пока они скачаются. Экономит время.

А чтобы автоматизировать ещё и установку, создаётся два файла.

/etc/cron-apt/action.d/4-security:
upgrade -y -o Dir::Etc::SourceList=/etc/apt/sources.list.d/security.list

/etc/cron-apt/action.d/5-volatile:
upgrade -y -o Dir::Etc::SourceList=/etc/apt/sources.list.d/volatile.list

Есть один подводный камень, на который можно наткнуться. Если вы имеете привычку редактировать стандартные конфиги, устанавливаемые пакетами, то при обновлении apt может захотеть слить изменённый конфиг с новым. Я натыкался на такую проблему, когда кроме security и volatile автоматически обновлялся ещё и из proposed-updates (что и вручную-то делать на продакшн-сервере не фонтан идея). При обновлениях из security и volatile, за 4 с лишним года использования cron-apt, таких проблем не наблюдал ни разу. Хотя справедливости ради надо сказать, что никаких документов отдельно регламентирующих процедуру автоматического обновления файлов конфигурации мне найти не удалось. Так что проявление таких проблем возможно.

Ещё одна деталь. Если вы любите получать отчёты о всех автоматизированных действиях ваших серверов, то можно сделать вот как.

/etc/cron-apt/conf.d/4-security:
MAILON="always"

/etc/cron-apt/conf.d/5-volatile:
MAILON="always"

Теперь обо всех своих действиях cron-apt будет отчитываться root’у. Параметр "always" можно заменить на "errors", и тогда отчёты будут отправляться только в случае возникновения ошибок.


http://linuxopen.ru/2008/02/21/avtomaticheskie-obnovlenija-s-pomoshhju.html
и
http://packages.debian.org/squeeze/cron-apt

Do you know why we call this beta ? Because it's betta than nothing.©
Have problems with windows, reboot. Have problems with linux, be root.©
 

Оффлайн Алексей

  • Новичок форума
  • Topic Author
  • Сообщений: 6
Re: Обновление без пользователя
« Ответ #2 : 06 Февраль 2012, 09:11:29 »
Спасибо
 

Оффлайн Indeferend

  • дебианоподобный
  • Пользователь
  • *
  • Сообщений: 42
    • Блог Павла Беляева
  • Jabber: pavelbbb@gmail.com
Re: Обновление без пользователя
« Ответ #3 : 06 Февраль 2012, 10:47:32 »
1. Логинимся в терминале под рутом
2. crontab -eu root
3. пишем строку
0 0 * * 6 apt-get -y update && apt-get -y upgrade
по субботам в полночь обновлять
4. сохраняемся

P.S.: вместо apt-get желательно писать полный путь, узнать его можно командой
which apt-get
Если вам помог мой ответ - не забывайте нажимать кнопочку "СПАСИБО"
Консультирую по
Intel Core2Duo E7500/4Gb DDR3 RAM/WD Blue 500Gb/Nvidia GeForce 210/Debian Squeeze amd64
Intel Core i5 2400/ 16Gb DDR3/ WD Green 1Tb/ Ubuntu 10.04 + kernel 3.3
HP625 + Debian squeeze
Sony Vaio VPC-EH1L1R + ubuntu 10.0
 

Оффлайн Malaheenee

  • Ветеран
  • *****
  • Сообщений: 2565
  • Учтите, мы можем дать и вредный совет.
Re: Обновление без пользователя
« Ответ #4 : 06 Февраль 2012, 11:01:58 »
vavun, не знали о таком, интересная ссылка
Алексей, так можно "поломать" систему (хоть и не Арч, но все же). Лучше всего "руками" обновлять.
Debian Sid: XFCE x 1, openbox x 2.
Все мы где-то, когда-то и в чем-то были новичками.
 

Оффлайн vavun

  • ASUS K42f (Intel Core i3, 2Гб DDR3, 250gb HDD,Intel GMA HD)
  • Местный житель
  • ***
  • Сообщений: 147
  • Debian squeeze + Gnome
Re: Обновление без пользователя
« Ответ #5 : 06 Февраль 2012, 11:42:12 »
Malaheenee, а как тут система поломается, если автоматическое обновление по сути идентично ручному, только автоматическое  :D
Если вы о случаях, когда при обновлении предлагается что то установить, чего не было или удалить, то можно настроить cron-apt на отказ от обновления с отправкой уведомления:
Цитата: типа скрипт
if
bla-bla-ok
then
apt-get update
else
send-message
fi
В принципе, если что то ломается после автоматического обновления, то сломается и после ручного, разве что находясь на месте можно с большей долей вероятности это самое "сломалось" пофиксить.

Do you know why we call this beta ? Because it's betta than nothing.©
Have problems with windows, reboot. Have problems with linux, be root.©
 

Оффлайн Malaheenee

  • Ветеран
  • *****
  • Сообщений: 2565
  • Учтите, мы можем дать и вредный совет.
Re: Обновление без пользователя
« Ответ #6 : 06 Февраль 2012, 12:18:18 »
vavun, мы так подозреваем, что ТС хочет это поставить обычным пользователям, которые "не знают, не хотят, не будут" заморачиваться. "Хлавное щоб работало".
Любая автоматизация хороша там, где четко понимаешь, что делаешь и как автоматизировано. А так... Вон у нас локальное (mirror-kt.neolabs.kz, бесплатный траффик со скоростью в 4 раза выше) зеркало и не обновляется вовсе; подключили us - сначала нормально, теперь ошибка подписи GPG; сейчас шведские зеркала стоят... А так все же увидишь да подумаешь - обновлять или нехай починят.
Debian Sid: XFCE x 1, openbox x 2.
Все мы где-то, когда-то и в чем-то были новичками.
 

Оффлайн vavun

  • ASUS K42f (Intel Core i3, 2Гб DDR3, 250gb HDD,Intel GMA HD)
  • Местный житель
  • ***
  • Сообщений: 147
  • Debian squeeze + Gnome
Re: Обновление без пользователя
« Ответ #7 : 06 Февраль 2012, 12:31:08 »
Malaheenee,
Цитировать
Любая автоматизация хороша там, где четко понимаешь, что делаешь и как автоматизировано
Вот тут не могу не согласиться. 8)

Do you know why we call this beta ? Because it's betta than nothing.©
Have problems with windows, reboot. Have problems with linux, be root.©
 

Русскоязычное сообщество Debian GNU/Linux

Re: Обновление без пользователя
« Ответ #7 : 06 Февраль 2012, 12:31:08 »


Теги:
 

[РЕШЕНО] Оффлайн обновление системы

Автор speed_vm

Ответов: 4
Просмотров: 1692
Последний ответ 13 Январь 2016, 18:52:04
от speed_vm
Обновление системы

Автор Извращенец

Ответов: 21
Просмотров: 2314
Последний ответ 14 Март 2011, 17:14:00
от Максимыч
Обновление пакетов

Автор vladimirse

Ответов: 13
Просмотров: 2243
Последний ответ 16 Декабрь 2016, 09:55:48
от vladimirse
Обновление Antix

Автор Albert

Ответов: 15
Просмотров: 741
Последний ответ 15 Апрель 2019, 22:44:11
от ferum
[РЕШЕНО] Обновление системы,проблема.

Автор cohiba

Ответов: 8
Просмотров: 2003
Последний ответ 09 Июль 2012, 15:22:22
от 3a72