Crontab fails because shell path not found The 2019 Stack Overflow Developer Survey Results Are InScript not running in crontab, file not foundCan't access shell variable in crontab configurationRemoving Prior CrontabsCrontab script not runningCrontab not running entire script?Crontab env variables while using Dockercronjob cannot find environment variables defined in .bashrcCrontab says command not foundcrontab -e does not open the crontab for this userCannot run python script with cron

Is there a name of the flying bionic bird?

Are there any other methods to apply to solving simultaneous equations?

Limit the amount of RAM Mathematica may access?

"What time...?" or "At what time...?" - what is more grammatically correct?

aging parents with no investments

Springs with some finite mass

Is this food a bread or a loaf?

Should I use my personal or workplace e-mail when registering to external websites for work purpose?

On the insanity of kings as an argument against monarchy

Inflated grade on resume at previous job, might former employer tell new employer?

Why is it "Tumoren" and not "Tumore"?

Dual Citizen. Exited the US on Italian passport recently

Could JWST stay at L2 "forever"?

Patience, young "Padovan"

Carnot-Caratheodory metric

Inline version of a function returns different value than non-inline version

Access elements in std::string where positon of string is greater than its size

Where does the "burst of radiance" from Holy Weapon originate?

Can't find the latex code for the ⍎ (down tack jot) symbol

Is flight data recorder erased after every flight?

Is domain driven design an anti-SQL pattern?

What do hard-Brexiteers want with respect to the Irish border?

If the Wish spell is used to duplicate the effect of Simulacrum, are existing duplicates destroyed?

JSON.serialize: is it possible to suppress null values of a map?



Crontab fails because shell path not found



The 2019 Stack Overflow Developer Survey Results Are InScript not running in crontab, file not foundCan't access shell variable in crontab configurationRemoving Prior CrontabsCrontab script not runningCrontab not running entire script?Crontab env variables while using Dockercronjob cannot find environment variables defined in .bashrcCrontab says command not foundcrontab -e does not open the crontab for this userCannot run python script with cron



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








2















I am looking at the failure output of my crontab.



* * * * * user /usr/bin/python3 /home/user/src/code/prod.py


I get the error /bin/sh: 1: caleb: not found.



This corresponds to



X-Cron-Env: <SHELL=/bin/sh>


which is part of the email the crontab sent me. I created the crontab using



crontab -e


All of it looks like a simple setup is there anything that I am missing?










share|improve this question









New contributor




caleb baker is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.















  • 3





    When you run crontab -e it is already using your username so there is no need to add your username to the beginning of the command. The only place on the system that you add the username is in the /etc/crontab file.

    – Terrance
    Apr 4 at 14:27











  • @Terrance that fixed my problem. i got my solution from cyberciti.biz/faq/… And I looked at the format and paid no attention to the "for system jobs"

    – caleb baker
    Apr 4 at 14:32


















2















I am looking at the failure output of my crontab.



* * * * * user /usr/bin/python3 /home/user/src/code/prod.py


I get the error /bin/sh: 1: caleb: not found.



This corresponds to



X-Cron-Env: <SHELL=/bin/sh>


which is part of the email the crontab sent me. I created the crontab using



crontab -e


All of it looks like a simple setup is there anything that I am missing?










share|improve this question









New contributor




caleb baker is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.















  • 3





    When you run crontab -e it is already using your username so there is no need to add your username to the beginning of the command. The only place on the system that you add the username is in the /etc/crontab file.

    – Terrance
    Apr 4 at 14:27











  • @Terrance that fixed my problem. i got my solution from cyberciti.biz/faq/… And I looked at the format and paid no attention to the "for system jobs"

    – caleb baker
    Apr 4 at 14:32














2












2








2








I am looking at the failure output of my crontab.



* * * * * user /usr/bin/python3 /home/user/src/code/prod.py


I get the error /bin/sh: 1: caleb: not found.



This corresponds to



X-Cron-Env: <SHELL=/bin/sh>


which is part of the email the crontab sent me. I created the crontab using



crontab -e


All of it looks like a simple setup is there anything that I am missing?










share|improve this question









New contributor




caleb baker is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.












I am looking at the failure output of my crontab.



* * * * * user /usr/bin/python3 /home/user/src/code/prod.py


I get the error /bin/sh: 1: caleb: not found.



This corresponds to



X-Cron-Env: <SHELL=/bin/sh>


which is part of the email the crontab sent me. I created the crontab using



crontab -e


All of it looks like a simple setup is there anything that I am missing?







16.04 cron






share|improve this question









New contributor




caleb baker is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question









New contributor




caleb baker is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question








edited Apr 5 at 3:54









Community♦

1




1






New contributor




caleb baker is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked Apr 4 at 14:23









caleb bakercaleb baker

132




132




New contributor




caleb baker is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





caleb baker is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






caleb baker is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.







  • 3





    When you run crontab -e it is already using your username so there is no need to add your username to the beginning of the command. The only place on the system that you add the username is in the /etc/crontab file.

    – Terrance
    Apr 4 at 14:27











  • @Terrance that fixed my problem. i got my solution from cyberciti.biz/faq/… And I looked at the format and paid no attention to the "for system jobs"

    – caleb baker
    Apr 4 at 14:32













  • 3





    When you run crontab -e it is already using your username so there is no need to add your username to the beginning of the command. The only place on the system that you add the username is in the /etc/crontab file.

    – Terrance
    Apr 4 at 14:27











  • @Terrance that fixed my problem. i got my solution from cyberciti.biz/faq/… And I looked at the format and paid no attention to the "for system jobs"

    – caleb baker
    Apr 4 at 14:32








3




3





When you run crontab -e it is already using your username so there is no need to add your username to the beginning of the command. The only place on the system that you add the username is in the /etc/crontab file.

– Terrance
Apr 4 at 14:27





When you run crontab -e it is already using your username so there is no need to add your username to the beginning of the command. The only place on the system that you add the username is in the /etc/crontab file.

– Terrance
Apr 4 at 14:27













@Terrance that fixed my problem. i got my solution from cyberciti.biz/faq/… And I looked at the format and paid no attention to the "for system jobs"

– caleb baker
Apr 4 at 14:32






@Terrance that fixed my problem. i got my solution from cyberciti.biz/faq/… And I looked at the format and paid no attention to the "for system jobs"

– caleb baker
Apr 4 at 14:32











1 Answer
1






active

oldest

votes


















5














If you are using crontab -e that set of Cron tasks runs as the user which crontab -e was executed as - that is, your user user.



Therefore, you should only provide the cron entry WITHOUT the user bits, i.e.:



* * * * * /usr/bin/python3 /home/user/src/code/prod.py


The user definition you were attempting to use should only be used in the system crontab in /etc/crontab and in entries in cron definitions under /etc/cron.d/.






share|improve this answer

























  • Not to nitpick, but the "cron user" probably has /usr/bin in its $PATH. So, * * * * * python3 /home/user/src/code/prod.py will probably work.

    – Seamus
    Apr 4 at 14:56






  • 2





    @Seamus when using crontabs it's generally better to use full paths just to rule out that problem.

    – Thomas Ward♦
    Apr 4 at 14:58











  • It's redundant... but I suppose that could be considered "generally better", for some. I'm only trying to point out that the "cron user" does have an environment, and it can be determined if it's not known.

    – Seamus
    Apr 4 at 15:02







  • 1





    @Seamus I often have to explain to people why their jobs that run fine from a bash prompt don't work correctly under cron (or Autosys etc.). I tell them that it's best to use the full path to everything they can, and explicitly set PATH= what they want it to be, rather than rely on "probably".

    – Monty Harder
    Apr 4 at 18:24











Your Answer








StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "89"
;
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
);



);






caleb baker is a new contributor. Be nice, and check out our Code of Conduct.









draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1131213%2fcrontab-fails-because-shell-path-not-found%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









5














If you are using crontab -e that set of Cron tasks runs as the user which crontab -e was executed as - that is, your user user.



Therefore, you should only provide the cron entry WITHOUT the user bits, i.e.:



* * * * * /usr/bin/python3 /home/user/src/code/prod.py


The user definition you were attempting to use should only be used in the system crontab in /etc/crontab and in entries in cron definitions under /etc/cron.d/.






share|improve this answer

























  • Not to nitpick, but the "cron user" probably has /usr/bin in its $PATH. So, * * * * * python3 /home/user/src/code/prod.py will probably work.

    – Seamus
    Apr 4 at 14:56






  • 2





    @Seamus when using crontabs it's generally better to use full paths just to rule out that problem.

    – Thomas Ward♦
    Apr 4 at 14:58











  • It's redundant... but I suppose that could be considered "generally better", for some. I'm only trying to point out that the "cron user" does have an environment, and it can be determined if it's not known.

    – Seamus
    Apr 4 at 15:02







  • 1





    @Seamus I often have to explain to people why their jobs that run fine from a bash prompt don't work correctly under cron (or Autosys etc.). I tell them that it's best to use the full path to everything they can, and explicitly set PATH= what they want it to be, rather than rely on "probably".

    – Monty Harder
    Apr 4 at 18:24















5














If you are using crontab -e that set of Cron tasks runs as the user which crontab -e was executed as - that is, your user user.



Therefore, you should only provide the cron entry WITHOUT the user bits, i.e.:



* * * * * /usr/bin/python3 /home/user/src/code/prod.py


The user definition you were attempting to use should only be used in the system crontab in /etc/crontab and in entries in cron definitions under /etc/cron.d/.






share|improve this answer

























  • Not to nitpick, but the "cron user" probably has /usr/bin in its $PATH. So, * * * * * python3 /home/user/src/code/prod.py will probably work.

    – Seamus
    Apr 4 at 14:56






  • 2





    @Seamus when using crontabs it's generally better to use full paths just to rule out that problem.

    – Thomas Ward♦
    Apr 4 at 14:58











  • It's redundant... but I suppose that could be considered "generally better", for some. I'm only trying to point out that the "cron user" does have an environment, and it can be determined if it's not known.

    – Seamus
    Apr 4 at 15:02







  • 1





    @Seamus I often have to explain to people why their jobs that run fine from a bash prompt don't work correctly under cron (or Autosys etc.). I tell them that it's best to use the full path to everything they can, and explicitly set PATH= what they want it to be, rather than rely on "probably".

    – Monty Harder
    Apr 4 at 18:24













5












5








5







If you are using crontab -e that set of Cron tasks runs as the user which crontab -e was executed as - that is, your user user.



Therefore, you should only provide the cron entry WITHOUT the user bits, i.e.:



* * * * * /usr/bin/python3 /home/user/src/code/prod.py


The user definition you were attempting to use should only be used in the system crontab in /etc/crontab and in entries in cron definitions under /etc/cron.d/.






share|improve this answer















If you are using crontab -e that set of Cron tasks runs as the user which crontab -e was executed as - that is, your user user.



Therefore, you should only provide the cron entry WITHOUT the user bits, i.e.:



* * * * * /usr/bin/python3 /home/user/src/code/prod.py


The user definition you were attempting to use should only be used in the system crontab in /etc/crontab and in entries in cron definitions under /etc/cron.d/.







share|improve this answer














share|improve this answer



share|improve this answer








edited Apr 4 at 15:03

























answered Apr 4 at 14:29









Thomas Ward♦Thomas Ward

45.2k23125178




45.2k23125178












  • Not to nitpick, but the "cron user" probably has /usr/bin in its $PATH. So, * * * * * python3 /home/user/src/code/prod.py will probably work.

    – Seamus
    Apr 4 at 14:56






  • 2





    @Seamus when using crontabs it's generally better to use full paths just to rule out that problem.

    – Thomas Ward♦
    Apr 4 at 14:58











  • It's redundant... but I suppose that could be considered "generally better", for some. I'm only trying to point out that the "cron user" does have an environment, and it can be determined if it's not known.

    – Seamus
    Apr 4 at 15:02







  • 1





    @Seamus I often have to explain to people why their jobs that run fine from a bash prompt don't work correctly under cron (or Autosys etc.). I tell them that it's best to use the full path to everything they can, and explicitly set PATH= what they want it to be, rather than rely on "probably".

    – Monty Harder
    Apr 4 at 18:24

















  • Not to nitpick, but the "cron user" probably has /usr/bin in its $PATH. So, * * * * * python3 /home/user/src/code/prod.py will probably work.

    – Seamus
    Apr 4 at 14:56






  • 2





    @Seamus when using crontabs it's generally better to use full paths just to rule out that problem.

    – Thomas Ward♦
    Apr 4 at 14:58











  • It's redundant... but I suppose that could be considered "generally better", for some. I'm only trying to point out that the "cron user" does have an environment, and it can be determined if it's not known.

    – Seamus
    Apr 4 at 15:02







  • 1





    @Seamus I often have to explain to people why their jobs that run fine from a bash prompt don't work correctly under cron (or Autosys etc.). I tell them that it's best to use the full path to everything they can, and explicitly set PATH= what they want it to be, rather than rely on "probably".

    – Monty Harder
    Apr 4 at 18:24
















Not to nitpick, but the "cron user" probably has /usr/bin in its $PATH. So, * * * * * python3 /home/user/src/code/prod.py will probably work.

– Seamus
Apr 4 at 14:56





Not to nitpick, but the "cron user" probably has /usr/bin in its $PATH. So, * * * * * python3 /home/user/src/code/prod.py will probably work.

– Seamus
Apr 4 at 14:56




2




2





@Seamus when using crontabs it's generally better to use full paths just to rule out that problem.

– Thomas Ward♦
Apr 4 at 14:58





@Seamus when using crontabs it's generally better to use full paths just to rule out that problem.

– Thomas Ward♦
Apr 4 at 14:58













It's redundant... but I suppose that could be considered "generally better", for some. I'm only trying to point out that the "cron user" does have an environment, and it can be determined if it's not known.

– Seamus
Apr 4 at 15:02






It's redundant... but I suppose that could be considered "generally better", for some. I'm only trying to point out that the "cron user" does have an environment, and it can be determined if it's not known.

– Seamus
Apr 4 at 15:02





1




1





@Seamus I often have to explain to people why their jobs that run fine from a bash prompt don't work correctly under cron (or Autosys etc.). I tell them that it's best to use the full path to everything they can, and explicitly set PATH= what they want it to be, rather than rely on "probably".

– Monty Harder
Apr 4 at 18:24





@Seamus I often have to explain to people why their jobs that run fine from a bash prompt don't work correctly under cron (or Autosys etc.). I tell them that it's best to use the full path to everything they can, and explicitly set PATH= what they want it to be, rather than rely on "probably".

– Monty Harder
Apr 4 at 18:24










caleb baker is a new contributor. Be nice, and check out our Code of Conduct.









draft saved

draft discarded


















caleb baker is a new contributor. Be nice, and check out our Code of Conduct.












caleb baker is a new contributor. Be nice, and check out our Code of Conduct.











caleb baker is a new contributor. Be nice, and check out our Code of Conduct.














Thanks for contributing an answer to Ask Ubuntu!


  • 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.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1131213%2fcrontab-fails-because-shell-path-not-found%23new-answer', 'question_page');

);

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







Popular posts from this blog

Magento 1.9 observer on only new product added ( no updated product )Admin Create New Order ObserverObserver checkout_cart_product_add_after get product quantity in cartHow can I differentiate between product creation and saving existing products?How to get the original price Product SaveBeforeMagento Observer for Admin Sales order Address updateHow do i get quantity in a product_save_after event observer magento2?Using observer event to get updated customer infoSave product observer - detect availabilityEvent not triggered when new product added in admin : Magento 2magento 1.9 observer on quantity product change

Does an object always see its latest internal state irrespective of thread? The 2019 Stack Overflow Developer Survey Results Are InDoes a finally block always get executed in Java?Java: serial thread confinement questionJava difference between fixed threadpool and scheduled threadpoolJackrabbit and concurrent modificationHow to stop a Runnable scheduled for repeated execution after a certain number of executionsMultiple threads accessing inner classHow can a loop be completed by two thread? say loop from count=1 to count=4 by ist thread and count =5 to 8 by 2nd thread?If I keep a reference to a Runnable, when does the Thread it ran on get released?How to stop a schedule ScheduledExecutorServiceHow to implement a singleThreadedScheduledExcecutor in wildfly

Adding contour labels to SpatialLinesDataFrame or sf object? The Next CEO of Stack OverflowTearing of SpatialLinesDataFrame and problem with gClip functionAutomatically adjusting map labelsExtracting data.frame from simple features object in RR convert sf object back to SpatialPolygonsDataFrameSimplify polygons of sf objectlines of a SpatialLinesDataFrame corresponding to pointsCropping sf object in R?Pattern matching with grepl on SpatialPolygonsDataFrame object in RHow to create and empty SpatialLinesDataFrame in RWarning message in raster::rotate(): “this does not look like an appropriate object for this function”