Starting script in screen with cron
I apologise if this has been asked before but I am not sure how to question a search query for this.
I am extremely new to linux and I have been learning as I go to solve issues.
I am trying to set up working cron jobs to restart a game server I am running.
Currently my crontab looks like this
#backup world as instructed by https://github.com/g1franc/SEDS-Setup
0 0 * * * /home/root/spaceengineers/start.sh backupworld
#close server
1 0 * * * /usr/bin/screen -S spaceengineers -X stuff "^C"
#close screen
2 0 * * * /usr/bin/screen -S spaceengineers -X stuff "^M"
#recreate server
3 0 * * * /home/root/spaceengineers/start.sh
Now on the backup world I get in my syslog file located at /var/log
i get
May 24 00:00:01 SpaceEngineers CRON[1958]: (root) CMD (/home/root/spaceengineers/start.sh backupworld)
May 24 00:00:01 SpaceEngineers CRON[1957]: (CRON) info (No MTA installed, discarding output)
and that is also the same with the recreate server
May 24 00:03:01 SpaceEngineers CRON[2269]: (root) CMD (/home/root/spaceengineers/start.sh /usr/bin/screen -x spaceengineers)
May 24 00:03:01 SpaceEngineers CRON[2268]: (CRON) info (No MTA installed, discarding output)
The other commands work perfectly fine.
now before anyone questions why I have structured my code the way I have, its because the tutorial i was following says to start the server via ~/spaceengineers/start.sh -x spaceengineers
and from what I have read i need to do /usr/bin/screen to access any screen commands in Cron
What am I doing wrong and what do I need to do to rectify my issues.
EDITED: Changed the crontab to match current contents on my server, issues remain the same
Pastebin of start.sh
http://pastebin.com/9QcWyqYF
linux bash gnu-screen cron
add a comment |
I apologise if this has been asked before but I am not sure how to question a search query for this.
I am extremely new to linux and I have been learning as I go to solve issues.
I am trying to set up working cron jobs to restart a game server I am running.
Currently my crontab looks like this
#backup world as instructed by https://github.com/g1franc/SEDS-Setup
0 0 * * * /home/root/spaceengineers/start.sh backupworld
#close server
1 0 * * * /usr/bin/screen -S spaceengineers -X stuff "^C"
#close screen
2 0 * * * /usr/bin/screen -S spaceengineers -X stuff "^M"
#recreate server
3 0 * * * /home/root/spaceengineers/start.sh
Now on the backup world I get in my syslog file located at /var/log
i get
May 24 00:00:01 SpaceEngineers CRON[1958]: (root) CMD (/home/root/spaceengineers/start.sh backupworld)
May 24 00:00:01 SpaceEngineers CRON[1957]: (CRON) info (No MTA installed, discarding output)
and that is also the same with the recreate server
May 24 00:03:01 SpaceEngineers CRON[2269]: (root) CMD (/home/root/spaceengineers/start.sh /usr/bin/screen -x spaceengineers)
May 24 00:03:01 SpaceEngineers CRON[2268]: (CRON) info (No MTA installed, discarding output)
The other commands work perfectly fine.
now before anyone questions why I have structured my code the way I have, its because the tutorial i was following says to start the server via ~/spaceengineers/start.sh -x spaceengineers
and from what I have read i need to do /usr/bin/screen to access any screen commands in Cron
What am I doing wrong and what do I need to do to rectify my issues.
EDITED: Changed the crontab to match current contents on my server, issues remain the same
Pastebin of start.sh
http://pastebin.com/9QcWyqYF
linux bash gnu-screen cron
1
The message about MTA is happening because CRON tries to send email on job completion. It can be safely ignored, unless you want the job output to be sent via email. Are the two problematic jobs actually running as expected? Do they do what you want?
– boot13
May 23 '15 at 17:33
@boot13 Just rechecked and the backup script seems to be doing something now but the recreate server job is not doing anything
– TheAngryBr1t
May 23 '15 at 17:40
Can you add the relevant bits from the start scriot
– fswings
May 24 '15 at 0:24
add a comment |
I apologise if this has been asked before but I am not sure how to question a search query for this.
I am extremely new to linux and I have been learning as I go to solve issues.
I am trying to set up working cron jobs to restart a game server I am running.
Currently my crontab looks like this
#backup world as instructed by https://github.com/g1franc/SEDS-Setup
0 0 * * * /home/root/spaceengineers/start.sh backupworld
#close server
1 0 * * * /usr/bin/screen -S spaceengineers -X stuff "^C"
#close screen
2 0 * * * /usr/bin/screen -S spaceengineers -X stuff "^M"
#recreate server
3 0 * * * /home/root/spaceengineers/start.sh
Now on the backup world I get in my syslog file located at /var/log
i get
May 24 00:00:01 SpaceEngineers CRON[1958]: (root) CMD (/home/root/spaceengineers/start.sh backupworld)
May 24 00:00:01 SpaceEngineers CRON[1957]: (CRON) info (No MTA installed, discarding output)
and that is also the same with the recreate server
May 24 00:03:01 SpaceEngineers CRON[2269]: (root) CMD (/home/root/spaceengineers/start.sh /usr/bin/screen -x spaceengineers)
May 24 00:03:01 SpaceEngineers CRON[2268]: (CRON) info (No MTA installed, discarding output)
The other commands work perfectly fine.
now before anyone questions why I have structured my code the way I have, its because the tutorial i was following says to start the server via ~/spaceengineers/start.sh -x spaceengineers
and from what I have read i need to do /usr/bin/screen to access any screen commands in Cron
What am I doing wrong and what do I need to do to rectify my issues.
EDITED: Changed the crontab to match current contents on my server, issues remain the same
Pastebin of start.sh
http://pastebin.com/9QcWyqYF
linux bash gnu-screen cron
I apologise if this has been asked before but I am not sure how to question a search query for this.
I am extremely new to linux and I have been learning as I go to solve issues.
I am trying to set up working cron jobs to restart a game server I am running.
Currently my crontab looks like this
#backup world as instructed by https://github.com/g1franc/SEDS-Setup
0 0 * * * /home/root/spaceengineers/start.sh backupworld
#close server
1 0 * * * /usr/bin/screen -S spaceengineers -X stuff "^C"
#close screen
2 0 * * * /usr/bin/screen -S spaceengineers -X stuff "^M"
#recreate server
3 0 * * * /home/root/spaceengineers/start.sh
Now on the backup world I get in my syslog file located at /var/log
i get
May 24 00:00:01 SpaceEngineers CRON[1958]: (root) CMD (/home/root/spaceengineers/start.sh backupworld)
May 24 00:00:01 SpaceEngineers CRON[1957]: (CRON) info (No MTA installed, discarding output)
and that is also the same with the recreate server
May 24 00:03:01 SpaceEngineers CRON[2269]: (root) CMD (/home/root/spaceengineers/start.sh /usr/bin/screen -x spaceengineers)
May 24 00:03:01 SpaceEngineers CRON[2268]: (CRON) info (No MTA installed, discarding output)
The other commands work perfectly fine.
now before anyone questions why I have structured my code the way I have, its because the tutorial i was following says to start the server via ~/spaceengineers/start.sh -x spaceengineers
and from what I have read i need to do /usr/bin/screen to access any screen commands in Cron
What am I doing wrong and what do I need to do to rectify my issues.
EDITED: Changed the crontab to match current contents on my server, issues remain the same
Pastebin of start.sh
http://pastebin.com/9QcWyqYF
linux bash gnu-screen cron
linux bash gnu-screen cron
edited May 24 '15 at 0:25
TheAngryBr1t
asked May 23 '15 at 17:11
TheAngryBr1tTheAngryBr1t
613
613
1
The message about MTA is happening because CRON tries to send email on job completion. It can be safely ignored, unless you want the job output to be sent via email. Are the two problematic jobs actually running as expected? Do they do what you want?
– boot13
May 23 '15 at 17:33
@boot13 Just rechecked and the backup script seems to be doing something now but the recreate server job is not doing anything
– TheAngryBr1t
May 23 '15 at 17:40
Can you add the relevant bits from the start scriot
– fswings
May 24 '15 at 0:24
add a comment |
1
The message about MTA is happening because CRON tries to send email on job completion. It can be safely ignored, unless you want the job output to be sent via email. Are the two problematic jobs actually running as expected? Do they do what you want?
– boot13
May 23 '15 at 17:33
@boot13 Just rechecked and the backup script seems to be doing something now but the recreate server job is not doing anything
– TheAngryBr1t
May 23 '15 at 17:40
Can you add the relevant bits from the start scriot
– fswings
May 24 '15 at 0:24
1
1
The message about MTA is happening because CRON tries to send email on job completion. It can be safely ignored, unless you want the job output to be sent via email. Are the two problematic jobs actually running as expected? Do they do what you want?
– boot13
May 23 '15 at 17:33
The message about MTA is happening because CRON tries to send email on job completion. It can be safely ignored, unless you want the job output to be sent via email. Are the two problematic jobs actually running as expected? Do they do what you want?
– boot13
May 23 '15 at 17:33
@boot13 Just rechecked and the backup script seems to be doing something now but the recreate server job is not doing anything
– TheAngryBr1t
May 23 '15 at 17:40
@boot13 Just rechecked and the backup script seems to be doing something now but the recreate server job is not doing anything
– TheAngryBr1t
May 23 '15 at 17:40
Can you add the relevant bits from the start scriot
– fswings
May 24 '15 at 0:24
Can you add the relevant bits from the start scriot
– fswings
May 24 '15 at 0:24
add a comment |
3 Answers
3
active
oldest
votes
Can you check the GNU screen syntax for this line:
3 0 * * * /home/root/spaceengineers/start.sh /usr/bin/screen -x spaceengineers
I would've expected something like:
3 0 * * * /usr/bin/screen -S spaceengineers -X stuff 'command with newline'
However, using the -X
means screen
expects screen commands and not a script to run.
Therefore you need to use the screen
stuff
command as per this SU question
screen -S sessionname -X stuff 'command'`echo -ne '15'`
Update
Try /bin/bash
or wherever the Shell you use is located.
3 0 * * * /bin/bash /home/root/spaceengineers/start.sh
Maybe add contents of start.sh
to help debug.
You can find shell with the which
command. Might have to sudo
or be root to find out.
I have just removed theusr/bin/screen
stuff as it is no longer needed. turns out the script is creating a screen by itself, I believe that to be when running a program through WINE. as I said I am learning on the fly. But with this stuff now removed the script is still not executing. the recreate server line now reads:3 0 * * * /home/root/spaceengineers/start.sh
The reason I have changed it to that is the backup script is working and its called the same way. have edited the question with the new crontab
– TheAngryBr1t
May 23 '15 at 23:18
In my crontab had to specify the Shell location.
– fswings
May 23 '15 at 23:41
I added /bin/bash after checking what shell I am using and making sure i had my Crontabs SHELL path set toSHELL=/bin/bash
I am still not getting anywhere. I have made sure the shebang in the script is set correctly as well. UPDATE: Finally seeing in the syslog that it is trying to run commands. For the last 2 hours I wasnt getting anything in the log.May 24 00:03:01 SpaceEngineers CRON[2594]: (root) CMD (/bin/bash /home/root/spaceengineers/start.sh)
It still is not actually creating the screen like it normally does if run manually, but i guess its a step forward.
– TheAngryBr1t
May 24 '15 at 0:22
The script may have to be modified so it uses absolute paths.
– fswings
May 24 '15 at 0:23
pastebin.com/9QcWyqYF here is pastebin of code
– TheAngryBr1t
May 24 '15 at 0:26
|
show 12 more comments
This command worked for me, though because one or more of the commands in my script required sudo, I had to set this up under the root user's cron :
17 2 29 1 * /usr/bin/screen -dmS $MYSESSIONNAME /bin/bash $FULLPATHTOMYSHELLSCRIPT $SHELLSCRIPTARG1 $SHELLSCRIPTARG2 ...
The key to getting screen working (and not just closing immediately when invoked by cron) is the -d
argument, but the m
probably helps too in some way/cases.
Below is the relevant snippet from the screen --help
output
-dmS name
Start as daemon: Screen session in detached mode."
add a comment |
@daily /usr/bin/screen -dms aquaticscenery /ig.py && python ig.py
5
Can you explain this command? :)
– bertieb
Apr 19 '17 at 13:37
1
This may be a correct solution but please explain a bit more of how this solves the question asker's question
– Eric F
Apr 19 '17 at 16:11
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "3"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f918677%2fstarting-script-in-screen-with-cron%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
Can you check the GNU screen syntax for this line:
3 0 * * * /home/root/spaceengineers/start.sh /usr/bin/screen -x spaceengineers
I would've expected something like:
3 0 * * * /usr/bin/screen -S spaceengineers -X stuff 'command with newline'
However, using the -X
means screen
expects screen commands and not a script to run.
Therefore you need to use the screen
stuff
command as per this SU question
screen -S sessionname -X stuff 'command'`echo -ne '15'`
Update
Try /bin/bash
or wherever the Shell you use is located.
3 0 * * * /bin/bash /home/root/spaceengineers/start.sh
Maybe add contents of start.sh
to help debug.
You can find shell with the which
command. Might have to sudo
or be root to find out.
I have just removed theusr/bin/screen
stuff as it is no longer needed. turns out the script is creating a screen by itself, I believe that to be when running a program through WINE. as I said I am learning on the fly. But with this stuff now removed the script is still not executing. the recreate server line now reads:3 0 * * * /home/root/spaceengineers/start.sh
The reason I have changed it to that is the backup script is working and its called the same way. have edited the question with the new crontab
– TheAngryBr1t
May 23 '15 at 23:18
In my crontab had to specify the Shell location.
– fswings
May 23 '15 at 23:41
I added /bin/bash after checking what shell I am using and making sure i had my Crontabs SHELL path set toSHELL=/bin/bash
I am still not getting anywhere. I have made sure the shebang in the script is set correctly as well. UPDATE: Finally seeing in the syslog that it is trying to run commands. For the last 2 hours I wasnt getting anything in the log.May 24 00:03:01 SpaceEngineers CRON[2594]: (root) CMD (/bin/bash /home/root/spaceengineers/start.sh)
It still is not actually creating the screen like it normally does if run manually, but i guess its a step forward.
– TheAngryBr1t
May 24 '15 at 0:22
The script may have to be modified so it uses absolute paths.
– fswings
May 24 '15 at 0:23
pastebin.com/9QcWyqYF here is pastebin of code
– TheAngryBr1t
May 24 '15 at 0:26
|
show 12 more comments
Can you check the GNU screen syntax for this line:
3 0 * * * /home/root/spaceengineers/start.sh /usr/bin/screen -x spaceengineers
I would've expected something like:
3 0 * * * /usr/bin/screen -S spaceengineers -X stuff 'command with newline'
However, using the -X
means screen
expects screen commands and not a script to run.
Therefore you need to use the screen
stuff
command as per this SU question
screen -S sessionname -X stuff 'command'`echo -ne '15'`
Update
Try /bin/bash
or wherever the Shell you use is located.
3 0 * * * /bin/bash /home/root/spaceengineers/start.sh
Maybe add contents of start.sh
to help debug.
You can find shell with the which
command. Might have to sudo
or be root to find out.
I have just removed theusr/bin/screen
stuff as it is no longer needed. turns out the script is creating a screen by itself, I believe that to be when running a program through WINE. as I said I am learning on the fly. But with this stuff now removed the script is still not executing. the recreate server line now reads:3 0 * * * /home/root/spaceengineers/start.sh
The reason I have changed it to that is the backup script is working and its called the same way. have edited the question with the new crontab
– TheAngryBr1t
May 23 '15 at 23:18
In my crontab had to specify the Shell location.
– fswings
May 23 '15 at 23:41
I added /bin/bash after checking what shell I am using and making sure i had my Crontabs SHELL path set toSHELL=/bin/bash
I am still not getting anywhere. I have made sure the shebang in the script is set correctly as well. UPDATE: Finally seeing in the syslog that it is trying to run commands. For the last 2 hours I wasnt getting anything in the log.May 24 00:03:01 SpaceEngineers CRON[2594]: (root) CMD (/bin/bash /home/root/spaceengineers/start.sh)
It still is not actually creating the screen like it normally does if run manually, but i guess its a step forward.
– TheAngryBr1t
May 24 '15 at 0:22
The script may have to be modified so it uses absolute paths.
– fswings
May 24 '15 at 0:23
pastebin.com/9QcWyqYF here is pastebin of code
– TheAngryBr1t
May 24 '15 at 0:26
|
show 12 more comments
Can you check the GNU screen syntax for this line:
3 0 * * * /home/root/spaceengineers/start.sh /usr/bin/screen -x spaceengineers
I would've expected something like:
3 0 * * * /usr/bin/screen -S spaceengineers -X stuff 'command with newline'
However, using the -X
means screen
expects screen commands and not a script to run.
Therefore you need to use the screen
stuff
command as per this SU question
screen -S sessionname -X stuff 'command'`echo -ne '15'`
Update
Try /bin/bash
or wherever the Shell you use is located.
3 0 * * * /bin/bash /home/root/spaceengineers/start.sh
Maybe add contents of start.sh
to help debug.
You can find shell with the which
command. Might have to sudo
or be root to find out.
Can you check the GNU screen syntax for this line:
3 0 * * * /home/root/spaceengineers/start.sh /usr/bin/screen -x spaceengineers
I would've expected something like:
3 0 * * * /usr/bin/screen -S spaceengineers -X stuff 'command with newline'
However, using the -X
means screen
expects screen commands and not a script to run.
Therefore you need to use the screen
stuff
command as per this SU question
screen -S sessionname -X stuff 'command'`echo -ne '15'`
Update
Try /bin/bash
or wherever the Shell you use is located.
3 0 * * * /bin/bash /home/root/spaceengineers/start.sh
Maybe add contents of start.sh
to help debug.
You can find shell with the which
command. Might have to sudo
or be root to find out.
edited Mar 20 '17 at 10:16
Community♦
1
1
answered May 23 '15 at 22:50
fswingsfswings
534423
534423
I have just removed theusr/bin/screen
stuff as it is no longer needed. turns out the script is creating a screen by itself, I believe that to be when running a program through WINE. as I said I am learning on the fly. But with this stuff now removed the script is still not executing. the recreate server line now reads:3 0 * * * /home/root/spaceengineers/start.sh
The reason I have changed it to that is the backup script is working and its called the same way. have edited the question with the new crontab
– TheAngryBr1t
May 23 '15 at 23:18
In my crontab had to specify the Shell location.
– fswings
May 23 '15 at 23:41
I added /bin/bash after checking what shell I am using and making sure i had my Crontabs SHELL path set toSHELL=/bin/bash
I am still not getting anywhere. I have made sure the shebang in the script is set correctly as well. UPDATE: Finally seeing in the syslog that it is trying to run commands. For the last 2 hours I wasnt getting anything in the log.May 24 00:03:01 SpaceEngineers CRON[2594]: (root) CMD (/bin/bash /home/root/spaceengineers/start.sh)
It still is not actually creating the screen like it normally does if run manually, but i guess its a step forward.
– TheAngryBr1t
May 24 '15 at 0:22
The script may have to be modified so it uses absolute paths.
– fswings
May 24 '15 at 0:23
pastebin.com/9QcWyqYF here is pastebin of code
– TheAngryBr1t
May 24 '15 at 0:26
|
show 12 more comments
I have just removed theusr/bin/screen
stuff as it is no longer needed. turns out the script is creating a screen by itself, I believe that to be when running a program through WINE. as I said I am learning on the fly. But with this stuff now removed the script is still not executing. the recreate server line now reads:3 0 * * * /home/root/spaceengineers/start.sh
The reason I have changed it to that is the backup script is working and its called the same way. have edited the question with the new crontab
– TheAngryBr1t
May 23 '15 at 23:18
In my crontab had to specify the Shell location.
– fswings
May 23 '15 at 23:41
I added /bin/bash after checking what shell I am using and making sure i had my Crontabs SHELL path set toSHELL=/bin/bash
I am still not getting anywhere. I have made sure the shebang in the script is set correctly as well. UPDATE: Finally seeing in the syslog that it is trying to run commands. For the last 2 hours I wasnt getting anything in the log.May 24 00:03:01 SpaceEngineers CRON[2594]: (root) CMD (/bin/bash /home/root/spaceengineers/start.sh)
It still is not actually creating the screen like it normally does if run manually, but i guess its a step forward.
– TheAngryBr1t
May 24 '15 at 0:22
The script may have to be modified so it uses absolute paths.
– fswings
May 24 '15 at 0:23
pastebin.com/9QcWyqYF here is pastebin of code
– TheAngryBr1t
May 24 '15 at 0:26
I have just removed the
usr/bin/screen
stuff as it is no longer needed. turns out the script is creating a screen by itself, I believe that to be when running a program through WINE. as I said I am learning on the fly. But with this stuff now removed the script is still not executing. the recreate server line now reads: 3 0 * * * /home/root/spaceengineers/start.sh
The reason I have changed it to that is the backup script is working and its called the same way. have edited the question with the new crontab– TheAngryBr1t
May 23 '15 at 23:18
I have just removed the
usr/bin/screen
stuff as it is no longer needed. turns out the script is creating a screen by itself, I believe that to be when running a program through WINE. as I said I am learning on the fly. But with this stuff now removed the script is still not executing. the recreate server line now reads: 3 0 * * * /home/root/spaceengineers/start.sh
The reason I have changed it to that is the backup script is working and its called the same way. have edited the question with the new crontab– TheAngryBr1t
May 23 '15 at 23:18
In my crontab had to specify the Shell location.
– fswings
May 23 '15 at 23:41
In my crontab had to specify the Shell location.
– fswings
May 23 '15 at 23:41
I added /bin/bash after checking what shell I am using and making sure i had my Crontabs SHELL path set to
SHELL=/bin/bash
I am still not getting anywhere. I have made sure the shebang in the script is set correctly as well. UPDATE: Finally seeing in the syslog that it is trying to run commands. For the last 2 hours I wasnt getting anything in the log. May 24 00:03:01 SpaceEngineers CRON[2594]: (root) CMD (/bin/bash /home/root/spaceengineers/start.sh)
It still is not actually creating the screen like it normally does if run manually, but i guess its a step forward.– TheAngryBr1t
May 24 '15 at 0:22
I added /bin/bash after checking what shell I am using and making sure i had my Crontabs SHELL path set to
SHELL=/bin/bash
I am still not getting anywhere. I have made sure the shebang in the script is set correctly as well. UPDATE: Finally seeing in the syslog that it is trying to run commands. For the last 2 hours I wasnt getting anything in the log. May 24 00:03:01 SpaceEngineers CRON[2594]: (root) CMD (/bin/bash /home/root/spaceengineers/start.sh)
It still is not actually creating the screen like it normally does if run manually, but i guess its a step forward.– TheAngryBr1t
May 24 '15 at 0:22
The script may have to be modified so it uses absolute paths.
– fswings
May 24 '15 at 0:23
The script may have to be modified so it uses absolute paths.
– fswings
May 24 '15 at 0:23
pastebin.com/9QcWyqYF here is pastebin of code
– TheAngryBr1t
May 24 '15 at 0:26
pastebin.com/9QcWyqYF here is pastebin of code
– TheAngryBr1t
May 24 '15 at 0:26
|
show 12 more comments
This command worked for me, though because one or more of the commands in my script required sudo, I had to set this up under the root user's cron :
17 2 29 1 * /usr/bin/screen -dmS $MYSESSIONNAME /bin/bash $FULLPATHTOMYSHELLSCRIPT $SHELLSCRIPTARG1 $SHELLSCRIPTARG2 ...
The key to getting screen working (and not just closing immediately when invoked by cron) is the -d
argument, but the m
probably helps too in some way/cases.
Below is the relevant snippet from the screen --help
output
-dmS name
Start as daemon: Screen session in detached mode."
add a comment |
This command worked for me, though because one or more of the commands in my script required sudo, I had to set this up under the root user's cron :
17 2 29 1 * /usr/bin/screen -dmS $MYSESSIONNAME /bin/bash $FULLPATHTOMYSHELLSCRIPT $SHELLSCRIPTARG1 $SHELLSCRIPTARG2 ...
The key to getting screen working (and not just closing immediately when invoked by cron) is the -d
argument, but the m
probably helps too in some way/cases.
Below is the relevant snippet from the screen --help
output
-dmS name
Start as daemon: Screen session in detached mode."
add a comment |
This command worked for me, though because one or more of the commands in my script required sudo, I had to set this up under the root user's cron :
17 2 29 1 * /usr/bin/screen -dmS $MYSESSIONNAME /bin/bash $FULLPATHTOMYSHELLSCRIPT $SHELLSCRIPTARG1 $SHELLSCRIPTARG2 ...
The key to getting screen working (and not just closing immediately when invoked by cron) is the -d
argument, but the m
probably helps too in some way/cases.
Below is the relevant snippet from the screen --help
output
-dmS name
Start as daemon: Screen session in detached mode."
This command worked for me, though because one or more of the commands in my script required sudo, I had to set this up under the root user's cron :
17 2 29 1 * /usr/bin/screen -dmS $MYSESSIONNAME /bin/bash $FULLPATHTOMYSHELLSCRIPT $SHELLSCRIPTARG1 $SHELLSCRIPTARG2 ...
The key to getting screen working (and not just closing immediately when invoked by cron) is the -d
argument, but the m
probably helps too in some way/cases.
Below is the relevant snippet from the screen --help
output
-dmS name
Start as daemon: Screen session in detached mode."
edited Mar 3 at 7:14
juniorRubyist
7761128
7761128
answered Jan 29 at 7:33
Jack HadleyJack Hadley
212
212
add a comment |
add a comment |
@daily /usr/bin/screen -dms aquaticscenery /ig.py && python ig.py
5
Can you explain this command? :)
– bertieb
Apr 19 '17 at 13:37
1
This may be a correct solution but please explain a bit more of how this solves the question asker's question
– Eric F
Apr 19 '17 at 16:11
add a comment |
@daily /usr/bin/screen -dms aquaticscenery /ig.py && python ig.py
5
Can you explain this command? :)
– bertieb
Apr 19 '17 at 13:37
1
This may be a correct solution but please explain a bit more of how this solves the question asker's question
– Eric F
Apr 19 '17 at 16:11
add a comment |
@daily /usr/bin/screen -dms aquaticscenery /ig.py && python ig.py
@daily /usr/bin/screen -dms aquaticscenery /ig.py && python ig.py
answered Apr 19 '17 at 13:12
Danik SokilDanik Sokil
1
1
5
Can you explain this command? :)
– bertieb
Apr 19 '17 at 13:37
1
This may be a correct solution but please explain a bit more of how this solves the question asker's question
– Eric F
Apr 19 '17 at 16:11
add a comment |
5
Can you explain this command? :)
– bertieb
Apr 19 '17 at 13:37
1
This may be a correct solution but please explain a bit more of how this solves the question asker's question
– Eric F
Apr 19 '17 at 16:11
5
5
Can you explain this command? :)
– bertieb
Apr 19 '17 at 13:37
Can you explain this command? :)
– bertieb
Apr 19 '17 at 13:37
1
1
This may be a correct solution but please explain a bit more of how this solves the question asker's question
– Eric F
Apr 19 '17 at 16:11
This may be a correct solution but please explain a bit more of how this solves the question asker's question
– Eric F
Apr 19 '17 at 16:11
add a comment |
Thanks for contributing an answer to Super User!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f918677%2fstarting-script-in-screen-with-cron%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
The message about MTA is happening because CRON tries to send email on job completion. It can be safely ignored, unless you want the job output to be sent via email. Are the two problematic jobs actually running as expected? Do they do what you want?
– boot13
May 23 '15 at 17:33
@boot13 Just rechecked and the backup script seems to be doing something now but the recreate server job is not doing anything
– TheAngryBr1t
May 23 '15 at 17:40
Can you add the relevant bits from the start scriot
– fswings
May 24 '15 at 0:24