I want the cron.daiy jobs to run earlier in the morning than they do by default. I used to do this by editing the time in /etc/cron.d/anacron, but that no longer works; nor does changing the time in the cron.daily line of /etc/crontab. How is this controlled now?
Welcome to the systemd snake pit. There will be an undocumented command somewhere to change it, but why would you want to override systemd's defaults, which are perfect for every computer and every usage pattern?
Look at "man 8 cron" to see how crond is run, including under systemd. These days crond only handles the jobs that run more frequently than daily as well as those with their own run schedule, i.e those the run several times a day or to a more complex run schedule. It also has useful references to other manpages.
For jobs that run daily, weekly or monthly, see at "man 8 anacron" for details of the controlling daemon, anacron, and "man anacrontab" to see how to configure anacron, including changing the time of day these jobs will be run at.
I can't find anything there on how to change the start time each day; man 8 anacron does say this:
DEBIAN-SPECIFIC CONFIGURATION On Debian-based systems, anacron will be activated hourly every day from 07:30 local time to 23:30 local time through cron job (on non-systemd systems where cron is installed and enabled) or systemd timer (on systemd-based systems). On activation, anacron will check if it missed some jobs. If yes, it will start those jobs after a short period of time.
But I don't see how to change the 07:30 start. I made the following change in /etc/cron.d/anacron yesterday
#30 7-23 * * * root [ -x /etc/init.d/anacron ] && if [ ! -d /run/systemd/system ]; then /usr/sbin/invoke-rc.d anacron start >/dev/null; fi
30 5-23 * * * root [ -x /etc/init.d/anacron ] && if [ ! -d /run/systemd/system ]; then /usr/sbin/invoke-rc.d anacron start >/dev/null; fi
but it still ran at 07:30.
Well, in this world of basic stereotyping, give a guy a big nose and
some weird hair and he is capable of anything. ---Frank Zappa
Thanks --- I think I'm getting closer, but not successful yet. I found a symlink from /etc/systemd/system/timers.target.wants/anacron.timer to /lib/systemd/system/anacron.timer, deleted it, copied the linked file into the etc location, and edited the relevant-looking line as follows: