Назад | Перейти на главную страницу

Отправить rpm в несколько систем, удаленно выполнить установку rpm и повторить

Довольно долгое время читал, впервые плакат. Я (пока) не скриптер, но кое-что понимаю / знаю. Не все основы, но некоторые.

Я много искал, но пока не нашел свой конкретный случай.

Я пишу сценарий для отправки нескольких файлов rpm в несколько систем, а затем удаленно выполняю команду установки rpm и повторяю на следующей системе.

У меня есть простой текстовый файл, содержащий список систем (sites.txt). Список систем в файле выложен так:

0123 aa0123

4567 aa4567

8910 AA8910

и т.д...

Я хочу использовать этот список для перехода к командам SCP / SSH для отправки файлов RPM, а затем для выполнения установки rpm. Но я не совсем уверен, как заставить ту же команду повторяться, пока не будет пройден список систем (sites.txt).

Чтобы лучше понять, что я пытаюсь сделать, вот что у меня есть в сценарии на данный момент:

for i in cat /tmp/sites.txt | awk '{print $2}' do REG='expr substr $i'

(Это нужно?)

scp /remote/install/* $i:/remote/install; ssh $i "rpm -U /remote/install/*'

Это то, что у меня есть.

Любая помощь / совет будут очень благодарны, так как я не очень силен в написании сценариев.

Спасибо!

Создайте репозиторий yum из этого каталога пакетов. Поделитесь им по http или ftp.

На хостах установите это yum repo, возможно, назовите его local. Устанавливайте и обновляйте только эти пакеты: yum --disablerepo='*' --enablerepo=local update '*'

Чтобы сделать это на многих хостах, используйте программное обеспечение для автоматизации. Ansible очень хорош в том, чтобы просто вставить ssh в ящик и делать что-то параллельно с приличной обработкой ошибок. Это будет игра с двумя задачами на Ansible.