Довольно долгое время читал, первый раз писал плакат. Я не скриптер (пока), но кое-что понимаю / знаю. Не все основы, но некоторые.
Я много искал, но пока не нашел свой конкретный случай.
Я пишу сценарий для отправки нескольких файлов rpm в несколько систем, затем удаленно выполняю команду установки rpm и повторяю на следующей системе.
У меня есть простой текстовый файл со списком систем (sites.txt). Список систем представлен в файле следующим образом:
0123 aa0123
4567 aa4567
8910 aa8910
и т.д ...
Я хочу использовать этот список для передачи в SCP / Команды SSH для отправки файлов RPM, а затем для выполнения установки rpm. Но я не совсем уверен, как заставить ту же команду повторяться, пока не будет пройден список систем (sites.txt).
Чтобы лучше понять, что я пытаюсь сделать, вот что у меня есть в сценарии:
for i в cat /tmp/sites.txt | awk '{print $ 2}'
do
REG = 'expr substr $ i'
(Это нужно?)
scp / remote / install / * $ i: / remote /установить; ssh $ i "rpm -U / remote / install / * '
Это то, что у меня есть на данный момент.
Любая помощь / совет будет очень признателен, поскольку я не очень силен в написании сценариев.
Спасибо!
Создайте репозиторий yum из этого каталога пакета. Поделитесь им по http или ftp.
На хостах установите это yum-репо, возможно, назовите его локальным
. Установите и обновите только эти пакеты: yum --disablerepo = '*' --enablerepo = local update '*'
Для этого на многих хостах используйте программное обеспечение для автоматизации. Ansible очень хорош в том, что просто помещает ssh в ящик и делает что-то параллельно с приличной обработкой ошибок. Это будет игра с двумя задачами для Ansible.