Здравствуйте. На меня внезапно свалилась админская задача, и мне совершенно не приходит в голову ее решение. Имеется несколько сотен совершенно одинаковых компьютеров с linux-ом и пакетным менеджером yum. Все они подключены к одному репозиторию, к которому у меня есть непосредственный доступ. Мне эти машинки нужно админить через этот репозиторий, то есть все настройки я могу делать только через выпуск своих rpm обновлений. И если с установкой и настройкой необходимого ПО все очевидно, то сейчас возникла задача потереть с них лишние пакеты вроде различных древнекитайстких шрифтов, гномовских графических мануалов итд. Тупо место закончилось, надо освободить. На тестовой машинке набросал скрипт, который будет через "rpm -qa" проверять наличие на компьютере ненужных пакетов и через "yum remove -y" их удалять. Сам по себе скрипт прекрасно фурычет. Создал пустой пакет clean c целью запилить этот скрипт в графу %post spec-файла. После этого у меня включилась голова и сказала мне, что так оно работать не будет. Потому как на момент исполнения этого скрипта менеджер yum будет запущен. А так как он не позволяет запустить одновременно два экземпляра себя, в моем скрипте не исполнится ни rpm ни yum. Следовательно, он не сработает. Значит, мне нужно как-то запустить мой скрипт после того, как менеджер пакетов уже отработает и решит что, наконец, пора бы завершиться. Вот и возник вопрос, как бы это правильно организовать. Просто sleep-ом не выйдет, потому как непонятно, на какое время моему скипту придется заснуть. Вдруг поставят новую чистую машинку и захотят ее обновить до текущей версии актуальной конфигурации системы. Тогда первое же обновление будет проходить довольно долго и заранее неизвестно сколько, ведь сеть там может сбоить, или еще какие факторы случатся, которые замедлят работу обновления. В общем вот. Заранее прошу прощения за свое дилетантство, я программист по работе, но вот иногда на меня сваливаются вот такие админсткие задачи, которые я случайно не умею. С нетерпением жду совета от более опытного поколения)
Настоятельно просим вас при общении соблюдать Правила форума и законы РФ. Наша тематика вне политики, поэтому воздержитесь от обсуждения ситуации на Украине и связанных с ней событий, независимо от того, какую сторону вы поддерживаете.
Также напоминаем, что наш форум находится в доменной зоне .ru, физически расположен на российских серверах и мы соблюдаем действующее законодательство России. Любые сообщения о политике будут удаляться.
