Как я могу отправить один файл на несколько удаленных сайтов одновременно?

Может ли scp использоваться для одновременного отправки одного файла на несколько удаленных серверов? Если да, то как? Если нет, то какая альтернатива?

2 Solutions collect form web for “Как я могу отправить один файл на несколько удаленных сайтов одновременно?”

pdcp из пакета pdsh является одним из вариантов. pdsh был написан, чтобы помочь с управлением кластерами HPC – я использовал его для этого, и я также использовал его для управления несколькими некластеризованными машинами.

pdsh и pdcp используют гендерные группы для определения хостов и групп хостов («группа» – это любой произвольный тег, который вы назначаете хосту, а хосты могут иметь столько тегов, сколько захотите.)

Например, если у вас была группа, называемая «webservers» в /etc/genders которая включала hostA, hostB, hostC, то pdcp -g webservers myscript.sh /usr/local/bin копировал myscript.sh в / usr / local / bin / на всех трех хостах.

Аналогично, pdsh -g all uname -r будет запускать uname -r на каждом узле, помеченном «all» в / etc / genders, с выходом каждого хоста с префиксом имени хоста.

 $ pdsh -g all uname -r indra: 3.2.0-3-amd64 kali: 3.2.0-3-amd64 ganesh: 3.2.0-3-amd64 hanuman: 3.2.0-2-686-pae 

Команды pdsh и копии pdcp выполняются параллельно (с ограничениями и таймаутами, чтобы предотвратить перегрузку исходной системы).

Когда выполняемая команда производит многострочный вывод, это может привести к недоумению чтения. Другая программа в пакете pdsh , называемая dshbak может группировать вывод по имени хоста для упрощения чтения.


после просмотра всех ваших комментариев, возможно, что pdsh & pdcp может быть излишним для ваших нужд … он действительно разработан как инструмент системного администратора, а не обычный пользовательский пользователь без использования root.

Возможно, написание простой оболочки оболочки оболочки вокруг scp может быть достаточно хорошим для вас. например, это чрезвычайно простая минималистская версия такого сценария оболочки.

 #! /bin/bash # a better version would use a command line arg (eg -h) to get a # comma-separated list of hostnames, but hard-coding it here illustrates # the concept well enough. HOSTS="mindfreak@asper.comgrid.ac mindfreak@looper.comgrid.ac" # last argument is the target directory on the remote hosts target_dir="$BASH_ARGV" # all but the last arg are the files to copy files=${@:1:$((${#@} - 1))} for h in $HOSTS; do scp $files "$h:$target_dir" done 

Вместо того, чтобы одновременно отправлять файл на несколько целей, вы можете читать его несколько раз в одно и то же время.

Перенесите файл в NFS, смонтируйте эту файловую систему на своих целевых объектах и ​​скопируйте ее из NFS в местный адрес.

Чтобы сделать это вручную и одновременно, вы можете использовать cluster-ssh (cssh) для целей.

  • Как я могу запустить Yast с помощью X и ssh?
  • Текущие свойства соединения SSH (шифр, тип авторизации, тайм-аут и т. Д.)
  • для подключения к серверу ssh требуется слишком много времени
  • Интерактивный ssh ​​работает, но не rsync или scp, на OSX
  • Как использовать открытый ключ для входа в SSH лучше, чем использование пароля?
  • SSH вечно вешается?
  • Fail2ban с firewalld
  • Почему число округлено по ssh?
  • Открытый ключ SSH не будет отправлен на сервер
  • Как настроить gnome keyring для ssh / sshfs без пароля с помощью брелка для разблокировки ключа с помощью хранимой кодовой фразы?
  • Могу ли я перевести «назад» из ssh-соединения на мой локальный emacs-сервер?
  • Interesting Posts

    Отладка ядра

    почему бы нагрузка равна 5, если в runq есть нулевые процессы?

    Как установить, какая оболочка использует Midnight Commander?

    Графика в TTY

    Исключить пользователя из OOM killer в unix

    Является ли оптимальное соотношение времени пользователя и реального времени показателем для эффективного распараллеливания?

    Запуск setuid двоичного временно без setuid?

    Почему этот переключатель будет эффективно форматировать диск на ext2 вместо ext4?

    Рекурсивно перечислить все каталоги, содержащие один или несколько файлов изображений jpg

    с учетом регистра gnu mv на Mac OS X

    Проблема OpenVPN и маршрутизации на OpenWRT

    Возможно ли зарегистрировать «виртуальные» идентификаторы пользователей / групп в системе Linux?

    Использование grep для поиска подстроки между двумя строковыми переменными, которые содержат пути

    root не может отправить почту (apticron), но пользователь может (mail / mailx)

    Загрузка Linux зависает: ACPI: Нет _BQC метод, не может определить начальную яркость

    Linux и Unix - лучшая ОС в мире.