Eu tenho o seguinte script, que inicia o X e lança um programa gráfico:
#!/bin/sh
#startGraphics.sh
#Starts X and runs the graphics program
xinit /opt/common/graphics/bin/launchGraphics.sh &
sleep 10 ;
echo "Successfully launched graphics program!"
Eu adicionei o sleep e o echo porque se eu simplesmente executasse o script, ele mataria o X e o programa gráfico imediatamente quando a sessão do SSH fosse fechada. O problema é que, embora o sono e o eco façam X e o programa gráfico iniciar, a sessão SSH não termina.
No entanto, se eu fizer SSH manualmente na máquina, depois executar o script startGraphics.sh e sair da sessão SSH assim que o servidor X e o programa forem iniciados, eles continuarão a ser executados e a sessão do SSH não seria interrompida.
O que estou fazendo de errado aqui? Qual é a maneira correta de fazer o que estou tentando, ou seja, como faço para iniciar o X remotamente com o programa gráfico e ter a sessão SSH completa sem desligar e sem o X terminar imediatamente?
Embora não seja relevante para o problema, aqui está o script launchGraphics.sh, apenas para o caso:
#!/bin/sh
#launchGraphics.sh
#Starts the graphics program. Requires X to be running
xrandr -s 1920x1050 ;
/opt/common/graphics/bin/graphics --position 0,0 --mode 1 &
/opt/common/graphics/bin/graphics --position 100,0 --mode 2 &
/opt/common/graphics/bin/graphics --position 300,0 --mode 3