Estou tentando medir a largura de banda, a perda de pacotes, a latência e o jitter entre dois computadores em uma conexão de rede sem fio 802.11s.
Estou tentando fazer um (meu primeiro) script bash que pode fazer o seguinte:
- SSH para outro computador e comece a registrar dados dos serviços (
ptpd
, tcpdump
, iperf
).
- Inicie os mesmos processos no meu computador e comece a registrar dados.
- Quando a transmissão de
iperf
no meu computador estiver concluída, o SSH deverá ser enviado para o computador remoto e os serviços serão eliminados.
A idéia é que essas três etapas sejam executadas em um loop, aumentando o tamanho do pacote transmitido pelo iperf para cada iteração e registrando os dados resultantes.
Eu sei como iniciar um processo no pc remoto por ssh host@adress process
.
No entanto, eu não sei como iniciar vários processos por meio do SSH e do logout, já que os processos são finalizados assim que eu efetuo o logout. Eu olhei os comandos screen
e nohup
, mas não sei como usá-los em um script.
Obrigado antecipadamente!
EDITAR:
Obrigado por toda a ajuda até agora.
Eu tenho nohup para trabalhar agora, foi bem simples como as pessoas apontaram.
Então agora eu tenho: ssh host@adress nohup ./script.sh > /dev/null 2>&1 &
no script no meu pc principal.
Isso inicia um script no PC remoto bem e, em seguida, o logout do SSH. O próximo problema é como executar o script no pc remoto como sudo, já que isso é necessário para o tcpdump.
A tentativa de ssh host@adress **sudo** nohup ./script.sh > /dev/null 2>&1 &
não funciona.
Alguma idéia?
EDIT 2:
Se alguém está com o mesmo problema, eu encontrei um guia para resolver isso:
link