Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> Counterpoint: this requires root

Counter-counterpoint: No it doesn't? Running `crontab -e` as a non-root user will edit that user's crontab, and running it as root will edit the system crontab. Cron can be configured to deny users their own crontabs, but every common distro I'm aware of defaults to allowing user crontabs.

> You could write a script to automate it, if it's such a big deal

Or I could not bother with that and just use cron?

> another counterpoint: systemd supports creating transient timers

What is this a counterpoint to? That the author's particular use case of running a backup script once a day is a task better suited to cron than systemd timers? I'm not sure how transient timers are even relevant here, much less a counterpoint.



I think support for per-user crontab's is implementation dependent. There are implementations (AFAIK) that do not support per-user crontabs.

Per Gentoo's wiki, both fcron and cronie have their own (different!) ways of whitelisting non-root users to run cronjobs.


Everything is implementation dependent. There's no ISO cron standard or anything.

> Per Gentoo's wiki, both fcron and cronie have their own (different!) ways of whitelisting non-root users to run cronjobs.

Both allow any user in the cron group to have their own crontabs by default, and both support optional .allow/.deny files


> There's no ISO cron standard or anything.

It's part of the Single Unix Specification.

https://pubs.opengroup.org/onlinepubs/9799919799/utilities/c...


That's a light spec for a subset of the interface and behavior of the crontab command line frontend, not a standard for cron in general. It's not really relevant to a discussion about how distros set up their cron defaults for per-user access.

Thanks for sharing it though. I wasn't aware it was in the posix spec and it explains why pretty much every implementation supports .allow/.deny files even when most already implement better access control mechanisms.


> Running `crontab -e` as a non-root user will edit that user's crontab, and running it as root will edit the system crontab.

Running it as root will edit the root user's crontab (in /var/spool/cron), which is separate from the system crontab (/etc/crontab), which has a slightly different format.


Alpine executes system cron jobs (daily, weekly etc) from root's crontab. That simple way of taking care of it makes me smile every time I see it.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: