Посмотрите раздел Content Limitations мерзавца Wiki: мерзавец не отслеживает принадлежность файла, состав группы, не отслеживает большинство битов полномочий, ACLs, времена доступа и время изменения, и т.д.
Мерзавец отслеживает содержание и не заботится очень о в значительной степени всем остальном.
Используйте GNU Parallel для параллелизма вашей коллекции:
parallel --slf rhel-nodes --tag --timeout 1000% --onall --retries 3 \
"rpm -q {}; rpm --queryformat '%{installtime:date} %{name}\n' -q {}" \
::: bash bc perl
Поместите узлы в ~ / .parallel / Rheel-узлы
.
- Tag
получит вывод с именем узла. - Тайм-аут 1000%
говорит, что если команда занимает в 10 раз больше, чем Median, чтобы запустить, она будет убита. - Onall
будет запустить все команды на всех серверах. - Retribe 3
запустит команду до 3 раза, если она не удастся. ::: Bash BC Perl
- это пакеты, на которые вы хотите проверить. Если у вас есть много пакетов, используйте пакеты CAT | Параллель ...
Синтаксис вместо Параллельные ... ::: Пакеты
.
GNU Parallel - это общий параллелизатор, и позволяет легко запускать задания параллельно на той же машине или на нескольких машинах, к которым у вас есть SSH.
Если у вас есть 32 различных рабочих заданий, которые вы хотите запустить на 4 процессорах, прямой путь для параллелизма - это управлять 8 рабочими заданиями на каждом процессоре:
GNU Parallel вместо этого порождает новый процесс, когда одна отделка - поддерживая процессор И, таким образом, экономить время:
Установка
Если GNU Parallel не упакован для вашего распространения, вы можете сделать личную установку, что не требует доступа к корню. Это может быть сделано за 10 секунд, делая это:
(wget -O - pi.dk/3 || curl pi.dk/3/ || fetch -o - http://pi.dk/3) | bash
для других вариантов установки см. http://git.savannah.gnu.org/cgit/parallel.git/tree/readme
Узнать больше
Увидеть больше примеров: http://www.gnu.org/software/parallel/man.html
Смотреть видео в Intro: https://www.youtube.com/playlist?list= PL284C9FF2488BC6D1
Прогулка по учебнику: http://www.gnu.org/software/parallel/parallel_tutorial.html
Зарегистрируйтесь на списке электронных напитков, чтобы получить поддержку: HTTPS: // списки .gnu.org / mailman / listinfo / parallel
Спасибо за ваши попытки решить это.
Я теперь решил проблему, и разрешение необходимо было так просто, что я чувствую себя довольно глупым сейчас.
В коде я использовал ранее,
(ssh -q -o Batchmode=yes -o PasswordAuthentication=no -o ConnectTimeout=1 $i "rpm --queryformat '%{installtime:date} %{name}\n' -q \"kexec-tools\" | cut -d \" \" -f1,2,3,4|tr \" \" \"_\"" > /dev/null) & pid=$!
все, что мне нужно было сделать, это перенаправить весь вывод в файл на локальной машине. Вот и все.
(ssh -q -o Batchmode=yes -o PasswordAuthentication=no -o ConnectTimeout=1 $i "rpm --queryformat '%{installtime:date} %{name}\n' -q \"kexec-tools\" | cut -d \" \" -f1,2,3,4|tr \" \" \"_\"" > **test**) & pid=$!
Единственная причина, по которой я решил опубликовать ответ, был, потому что ответ, который вы дали, необходимые внешние инструменты / код, которые должны быть введены и использованы, что то, что я не хочу делать. Вместо этого я хотел, чтобы решение было применено без какой-либо зависимости от наличия пакетов или версии ОС.
, тем не менее,!