+++ title = "Автоматизация обновления системы archlinux" date = 2011-01-20 description = "Поскольку Оганер-сервис предоставляет самый дешевый доступ в интернет по будням с 4 ночи. то мы автоматизируем процесс обновления системы без участия пользователя (ну не сидеть же каждый день до 4 ночи :))" [taxonomies] tags = ["archlinux", "localnet", "selena", "norilsk", "cron"] [extra] quick_navigation_buttons = true toc = false mermaid = false social_media_card = "social_cards/index.png" +++ Поскольку Оганер-сервис предоставляет самый дешевый доступ в интернет по будням с 4 ночи. то мы автоматизируем процесс обновления системы без участия пользователя (ну не сидеть же каждый день до 4 ночи :)). В роли нашего помощника выступит планировщик cron. Для начала напишем простой скрипт: ```bash #! /bin/bash ## устанавливаем соединение sudo sh /usr/local/bin/selena ## ждем 5 секунд sleep 5 ## запускаем процесс обновления, опция "--noconfirm" означает обновление без всяких подтверждений. Всё выводимое на экран сохраняется в файл /home/tenkoff/UPDATE-LOG.txt для того, чтобы знать, что где обновилось. /usr/bin/yaourt -Suy --noconfirm >> /home/fantom/UPDATE-LOG.txt ## Разрываем соединение sudo sh /usr/local/bin/selena ``` Скрипт запуска и остановки интернет соединения смотрите [здесь](https://blog.zlinux.ru/blog/on-off-internet/) Сохраняем как `system_update.sh` и делаем его исполняемым (у себя для удобства я все свои скрипты сохраняю в /etc/cron.fantom/) Теперь нужно заставить планировщик запускать наш скрипт в указанное время и дни. Открываем редактором файл /var/spool/cron/fantom (от которого будет запускаться скрипт) и вписываем строчку: ```bash 12 4 * * 1-5 /etc/cron.fantom/system_update.sh ``` Перезапускаем `cron`. Таким образом скрипт будет запускаться с понедельника по пятницу в 04 часа 12 минут.