I am very new to linux, so please bear with me.
I need a simple script (bash / .sh) to start 2 programs at server startup. Both programs should run in a detached screen of their own. So basically:
1) start a detached screen with Program A running in it
2) start a new detached screen with Program B running in it
I have it already set up that it runs a 'start.sh' script on startup - so that part works. I just need the script itself.
I've tested a bunch of things that I've found on the internet, but nothing really works.My latest test is this:
screen -dmS "minecraft" sh -c 'cd /root/lastcrafters; ./MCMA2_Linux_x86_64' &
screen -dmS "teamspeak" sh -c '/root/lastcrafters/teamspeak/ts3server_startscript.sh start; exec bash' &
Each of the 2 commands work flawless when copy/pasted into Putty. But for some reason in the startup script they dont always work properly. Sometimes it works fine and both programs start as wanted. Sometimes only 1 of the 2 programs will start, and sometimes one of the programs will start doubled (once with a screen and once without a screen).
I have absolutely NO idea why this is. I have tried a sleep command between the 2 lines, to give it some time or something, but that didnt work either.
The 'exec bash' in the 2nd command is to keep the screen from closing, because teamspeak doesnt do anything in the screen and thus the screen would close from inactivity.
The 1st command doesnt need this, as Minecraft keeps spitting out things in the screen anyways.
I appreciate ANY and all help.
Thank you for your time.
P.S.: I'm also open to any other/better way to get my goal accomplished. However, as I am completely new to linux, please explain thoroughly what I would have to do etc.