Проверка периодические обновления
Модератор: /dev/random
Проверка периодические обновления
Здравия!
Есть ли готовые пакеты или скрипты писать/искать? Если кто знает, как в дебиане cron-apt. Докладывает на почту о наличии обновлений, а можно и сразу их применить, как сконфигурить. Что-нибудь подобное.
Есть ли готовые пакеты или скрипты писать/искать? Если кто знает, как в дебиане cron-apt. Докладывает на почту о наличии обновлений, а можно и сразу их применить, как сконфигурить. Что-нибудь подобное.
Re: Проверка периодические обновления
crontab -e
00 00 * * 0 (apt update && apt full-ugrade -q -y) >/dev/null 2>&1
Раз в неделю в 0.0 по воскресеньям.
Но стоит учитывать рекомендации дебиана
00 00 * * 0 (apt update && apt full-ugrade -q -y) >/dev/null 2>&1
Раз в неделю в 0.0 по воскресеньям.
Но стоит учитывать рекомендации дебиана
Observe that this tool may be a security risk, so you should not set it to do more than necessary. Automatic upgrade of all packages is NOT recommended unless you are in full control of the package repository.
Re: Проверка периодические обновления
Gentoo и apt?
Вопрос был
Если кто знает, как в дебиане cron-apt. Докладывает на почту о наличии обновлений, а можно и сразу их применить, как сконфигурить. Что-нибудь подобное.
Re: Проверка периодические обновления
Сделать в gentoo, как в дебиане. cron-eix хочу :-)
Re: Проверка периодические обновления
Посмотрите, как это сделано в Calculate Linux.
Русский форум. Задаёшь вопрос, потом тебе долго рассказывают, какой ты м-к.
Спасибо сказали:
Re: Проверка периодические обновления
Не нашёл, как это сделано в calculate, набросал скрипт:
Работает, кроме сохранения цветов сообщений. Всё чёрно-белое. Не то чтобы неудобно, но токмо ради повышения уровня знаний. Отсюда пара вопросов:
1) Если grep пускать с --color=always, то он же не сохранит цвета с выхода eix, а сам по-своему раскрасит?
2) В терминале при просмотре с помощью mail цвета не будет, будут \\коды?
3) Как бы сохранить оригинальный цвет?
Код: Выделить всё
#!/bin/sh
MSG=/tmp/messaging.log
eix-sync | grep "\[*U]" > $MSG
cat $MSG | mail -s "System update needed" root
Работает, кроме сохранения цветов сообщений. Всё чёрно-белое. Не то чтобы неудобно, но токмо ради повышения уровня знаний. Отсюда пара вопросов:
1) Если grep пускать с --color=always, то он же не сохранит цвета с выхода eix, а сам по-своему раскрасит?
2) В терминале при просмотре с помощью mail цвета не будет, будут \\коды?
3) Как бы сохранить оригинальный цвет?
Re: Проверка периодические обновления
Это не grep "красит по-своему", а eix убирает раскраску, видя, что пишет не прямо в терминал. eix | cat даёт такой же эффект.
Попробуйте опцию eix --force-color
Попробуйте опцию eix --force-color
Re: Проверка периодические обновления
Попробовал, всё такое же чёрно-белое, никаких \\кодов в файле нет.
Re: Проверка периодические обновления
Ни что не мешает раскрасить вывод самому:
Код: Выделить всё
#!/bin/bash
eix|grep "\[*U]"|while read file
do
MASS=($file)
echo -ne "\033[01;32m${MASS[0]} \033[0m${MASS[1]} \n"
done
тыц
Re: Проверка периодические обновления
Раскрасить я хотел не наобум лазаря, а сохранить изначальную раскраску, которая не просто так, а пытается обозначить состояние пакетов (не- или установлен принудительно или по зависимостям и проч). Насколько я понимаю.
Re: Проверка периодические обновления
Не раскраска просто показывает что пакет находится в каком либо состоянии(т.е. установлен).
А так установленные показывает eix|grep "\[*I]" требующие обновления eix|grep "\[*U]" и уже отсутствующие ебилды eix|grep "\[*?]. Цвет раскраски у всех один и тот же. Т.е. если grep-ом это реально осуществить то раскраска как бы и не особо нужна. Так просто для красоты, ее можно самому состряпать и записать в файл.
Можно конечно оставить расцветку eix, но тогда вывод неправильно будет обрабатываться grep-ом.
export FORCE_USECOLORS=true
Re: Проверка периодические обновления
Понятно, ладно, пусть остаётся чёрно-белым.
Re: Проверка периодические обновления
Цветной лог тяжело обрабатывать grep-ом
При желании вполне можно его сделать, например так:
Код: Выделить всё
#!/bin/bash
echo >eix_log
eix|grep "\[*U]"|while read file
do
MASS=($file)
FORCE_USECOLORS=true eix ${MASS[1]} >>eix_log
done
Если нужна только верхняя строчка то команду eix можно поменять примерно так:
Код: Выделить всё
FORCE_USECOLORS=true eix ${MASS[1]}|sed '1!D' >>eix_log
А так смысла от таких логов не вижу, если все это может показать просто команда eix после выполнения eix-sync:
Код: Выделить всё
$ eix|grep "\[*U]"