У меня есть сценарий, который, безусловно, займет много времени для выполнения. У меня есть установка с несколькими машинами. При загрузке (желательно) я бы хотел, чтобы скрипт работал на каждой машине. Тем не менее, я хотел бы сделать это асинхронно.
В качестве альтернативы я мог бы выполнить vagrant ssh для каждой машины.
В первом случае я добавляю в файл Vagrant:
Vagrant.configure("2") do |config|
config.vm.provision "shell", run: "always", inline: 'bash /home/vagrant/shared_folder/script.sh &'
...
Тем не менее, хотя я вижу процесс, запущенный на каждом госте, он не выполняется.
Для второго случая:
vagrant ssh client5 -c "/home/vagrant/shared_folder/script.sh & sleep 1"
Сон 1 - это "взлом", предложенный в другом посте. Тем не менее, он запускается только один раз, а затем выходит.
Содержание скрипта:
while [ true ];
do
rand=`shuf -i 10-200 -n 1`
curl "192.168.56.10/pages/"$rand"K.html"
sleep 5
done
Когда я выполняю скрипт изнутри гостя, все работает отлично.