【发布时间】:2022-08-26 19:22:33
【问题描述】:
我有一个嵌入式系统(Linux/Debian),我在不同的控制台上运行了几个 python 脚本。这些脚本是 Web 服务器,因此它们相互通信并且不应该完成。因此在不同的控制台中运行它。
我直接连接到这台机器 (ssh) 并在不同的控制台中运行脚本。但是现在我想在不同的机器上同时运行这些脚本(相同的)。我想我可以在每个系统上都有一个.sh,并通过 ssh 调用它,但甚至是一个.py file can work。
类似init_all_processes.sh:
#!/bin/bash
sudo python3 /home/proj1/webServer.py
sudo python3 /home/proj2/server/main.py
sudo python3 /home/proj1/test/test_server.py
sudo python3 /home/proj2/process_receiving_images.py
但是通过这样做并在所有远程机器上运行init_all_processes.sh(
ssh root@MachineB 'bash -s' < init_all_processes.sh
@ 987654322@,脚本是否在本地无关紧要,因为所有相关代码/存储库也在这些机器中)来自我的主机/本地服务器,如果它是一个网络服务器(不仅仅是'运行并完成在某个点',但因为它会一直运行直到被杀死)它不会运行其他脚本。我见过screen can work。
是否有直接的方法来运行不同的脚本,就好像它们在不同的控制台/进程中运行一样?我首先考虑的是通过 ssh 使用 ips 的主(主机)/从(远程/服务器)结构。通过这样做,我什至可以将参数发送到每个脚本(例如,num_epochs,现在不重要)以获得不同的结果。但是问题仍然存在于每个脚本未完成(因为它们不打算完成),因此无法运行以下脚本。如果这是一个问题,我不需要日志。
【问题讨论】:
标签: python ssh embedded-linux