Автоматизация обновления мира

Написал такой вот скрипт:

    #!/bin/sh
    # myupdate-world
    # Скрипт обновления мира по утрам
     
    LOG="/var/log/myupdate-world.log" 
    # log-файл
    date >> $LOG
    MIRROR=$(sed -n 's/^GENTOO_MIRRORS="\(.*\) .*/\1/p' /etc/make.conf) 
    # Задаем зеркало обновления
    while ! $(wget --spider $MIRROR/snapshots/portage-$(date -d yesterday +%Y%m%d).tar.bz2.md5sum &>/dev/null); do sleep 300; done
    # Проверяем наличие обновления, если не найдено, ждем 5 минут
    EIX_CACHEFILE=/var/cache/eix.remote eix-remote update
    # делаем снимок дерева удаленных layman-репозиториев
    eix-sync -Wq
    # синхронизируем наше дерево PORTAGE
    echo "============ eix-diff ==============" >> $LOG
    eix-diff /var/cache/eix.previous >> $LOG
    # смотрим изменения в дереве
    echo "============ emerge world =============" >> $LOG
    emerge @world -pvquDN >> $LOG
    emerge @world -uDNq
    # смотрим что обновляем и зупускаем обновление мира
    echo "============ emerge --depclean =============" >> $LOG
    emerge --depclean -pq >> $LOG
    emerge --depclean -q
    # удаляем лишние пакеты
    echo "=========== revdep-rebuild ===============" >> $LOG
    revdep-rebuild -p >> $LOG
    revdep-rebuild
    # проверяем зависимости
    echo "============ glsa-chech =============" >> $LOG
    glsa-check --test affected >> $LOG
    glsa-check --fix affected
    # проверяем пакеты на безопасность
    echo "========= eix-test-obsolete =========" >> $LOG
    eix-test-obsolete -cd | grep -v "^No" >> $LOG
    # проверяем корректность записей в /etc/portage/*
    echo "========= perl-cleaner =========" >> $LOG
    perl-cleaner --all -- -q
    echo "============ End ============= " >> $LOG
    export DISPLAY=":0.0"
    export XAUTHORITY="/var/run/slim.auth"
    # у меня slim, как в [gkx]dm не знаю, можно еще проверять $HOME/.Xauthority
    /sbin/shutdown -h +5 "Achtung!" "Shutdown system after 5m\nFor canceled enter\n'sudo shutdown -c'" &
    # выводим сообщение через zenity, что комьютер выключится через 5 минут, если нужно отменяем
    echo "============ Halt ============= " >> $LOG
    if ! $(/usr/bin/zenity --question --text="System shutdown after 5 minutes.\nNow $(date)."); then `sudo /sbin/shutdown -c`; fi
    # если не отменили выключаем

Далее вставляем в cron от root:

# crontab -e
0 6 * * * /usr/local/sbin/myupdate-world

Включаем в BIOS авоматическое включение на 5.55 ежедневно.

Теперь мы можем не беспокоиться об обновлении уходя на работу. Осталось посмотреть вечером лог и поправить, если что-то пошло не так (маскировки, конфликты), что бывает редко. Это занимает времени совсем немного (можно раз в неделю). Таким образом избегаем упреков домашних, бережем нервы, спасаем семью.

P.S. команда
# EIX_CACHEFILE=/var/cache/eix.remote eix-remote update
сохраняет снимок дерева layman-overlays в /var/cache/eix.remote .

Теперь делаем алиас:
# alias eix-cache='EIX_CACHEFILE=/var/cache/eix.remote eix'
Смотрим наличие пакетов в оверлеях по команде eix-cache.

Посмотрите здесь

Откройте для себя update ;)

Выложите где-нибудь,

Выложите где-нибудь, недоступно почему-то.

Что выложить?.. Это 4х-летняя

Что выложить?.. Это 4х-летняя дискуссия в форуме. :)

Ищите на Генту.орге в форуме - раздел Tip&Tricks

Сам скрипт здесь.

SysA написал(а): Сам скрипт

SysA написал(а):
Сам скрипт здесь.

Нет его здесь.

у вас Интернет-то есть?.. :)

у вас Интернет-то есть?.. :)

У меня тоже к серверу не

У меня тоже к серверу не подключается.

Вообще такого рода автоматическое обновление в Gentoo со временем гарантированно принесёт боль и ужас.

А вот с eix-cache идея хороша, спасибо.

Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.

Поддерживаю... автоматические

Поддерживаю... автоматические обновления можно позволить себе только дома, как у ТС.

У меня автоматом по утрам перед работой только синхронизация, подкачка файлов и письмо, если есть обновления.

Кстати, скриптик, о котором я говорил, не есть автомат... ;)

Sorry, у них сдох DNS,

Sorry, у них сдох DNS, смотрите здесь

не скрипт, а тихий ужос на

не скрипт, а тихий ужос на крыльях ночи от явно красноглазого товарища.
П.С а etc-update он у вас почему не делает ? :)))))))))))

Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)

etc-update вручную. А как

etc-update вручную. А как по-другому?
Может скрипт и неважный, но время экономить помогает.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".