this post was submitted on 18 Sep 2023
7 points (100.0% liked)

Linux

2380 readers
3 users here now

Shit, just linux.

Use this community for anything related to linux for now, if it gets too huge maybe there will be some sort of meme/gaming/shitpost spinoff. Currently though… go nuts

founded 1 year ago
MODERATORS
 

Hey guys, trying to use cron to backup my home server. There's a nextcloud script I run which I copy and pasted from the nextcloud aio GitHub, and this script works in my sudo crontab. However I have a script for my calibre library which runs perfectly well when run manually but as soon as cron time comes around it shows up in the syslog but the calibre library doesn't actually get rsynced... I'll add the calibre script here soon but any ideas in the meantime?

Thanks so much!

top 4 comments
sorted by: hot top controversial new old
[–] InEnduringGrowStrong 5 points 1 year ago

Errors while running cron jobs often generate "mail" whether you've set it up or not.
You can likely check your mail by just running the mail command.

Also, in your crontab, add >> /tmp/cron.log after your script, at least you'll see whatever logs get generated from that.

Most likely though, the script works when ran manually because it uses your user's env variables, such as PATH.
I usually just use absolute paths for everything when using cron and this takes care of the vast majority of my issues.

[–] [email protected] 2 points 1 year ago

Could it be a permission issue? Maybe the cron script isn't able to access the directory your calibre library is in.

[–] [email protected] 2 points 1 year ago

Check your permissions and your working directory. Forgetting to make sure cron executes the script at the correct location is an easy and common mistake to make.

[–] [email protected] 1 points 1 year ago

Theres no other logging it does? Have you tried running the script yourself from the commandline with the same privileges that cron has?