Generated by GPT-5-mini| cronie | |
|---|---|
| Name | cronie |
| Title | cronie |
| Developer | Red Hat, Inc. and Fedora Project |
| Released | 2002 |
| Operating system | Linux and Unix-like systems |
| License | GNU General Public License |
| Website | Fedora Project / project pages |
cronie
cronie is a daemon and job-scheduling implementation used on many Linux systems, providing scheduled task execution compatible with traditional cron functionality. It integrates with init systems and service managers such as systemd and supports user-level and system-level job scheduling via crontab files, earning adoption across distributions like Fedora and Red Hat Enterprise Linux. cronie derives design and behavior from historical implementations while adding modern features for security, logging, and PAM integration.
cronie implements the classical Vixie cron semantics with extensions for contemporary Linux distributions, coordinating periodic execution of scripts and commands through crontab schedules stored in system and user files. The daemon interacts with system facilities such as syslog, PAM, and systemd for service supervision and logging integration, while preserving compatibility with utilities such as anacron and the at job scheduler. Major Linux vendors like Red Hat, Inc. and community projects like the Fedora Project use cronie to provide consistent scheduled job handling across releases.
cronie originated as a fork and modernization of older cron implementations, responding to maintenance needs in distributions such as Fedora and Red Hat Enterprise Linux. Early development involved contributors associated with Red Hat, Inc., motivated by security audits and the adoption of newer service models exemplified by systemd and the move from SysVinit in many distributions. Over time, cronie incorporated features from projects like Vixie cron and collaborated with maintainers from Debian and openSUSE communities to ensure portability and packaging across diverse distributions.
cronie provides core features including parsing of crontab files, time-based job scheduling, execution of jobs under appropriate user accounts, mail delivery of job output, and logging via syslog and journal facilities in systemd. Architectural components include a privileged daemon process, per-user crontab parsers, and helpers for executing jobs in isolated environments with PAM session handling. Support for SELinux contexts on systems like Fedora and Red Hat Enterprise Linux is implemented to control job execution permissions, and cronie can interface with anacron to ensure jobs missed during downtime are run later. Its codebase is written in C and integrates with POSIX APIs and Linux-specific features.
System administrators and users interact with cronie via utilities such as crontab and by editing system crontab files located under directories used by distributions like Fedora and Red Hat Enterprise Linux. Typical commands integrate with other tools including systemctl for service control under systemd, logging via rsyslog or the systemd-journald service, and authentication via PAM. Distribution-specific packaging places configuration files under standard locations used by Filesystem Hierarchy Standard-compliant distributions, enabling integration with configuration management systems like Ansible, Puppet, and Chef. cronie respects per-user environments and can be configured to run under specific SELinux types defined by SELinux Project policies.
Security in cronie centers on least-privilege execution, PAM session handling, and integration with SELinux on supported platforms. The daemon drops privileges appropriately and executes user jobs under the invoking user's account, coordinating with PAM modules and system authentication backends such as SSSD or System Security Services Daemon. cronie enforces access control via allow and deny lists often managed alongside account directories used by distributions, and logging integration with syslog and systemd-journald aids in auditing scheduled job activity. Security-focused distributions and projects conduct audits and issue patches; vendors such as Red Hat, Inc. and community projects like Debian publish advisories when relevant.
cronie is primarily packaged for Linux distributions, with official packages maintained in repositories for Fedora, Red Hat Enterprise Linux, and available in community repositories for Debian, Ubuntu, and openSUSE. Packaging formats include RPM for RPM-based distributions and DEB for Debian-based systems, and build systems such as Koji and openSUSE Build Service are used for automated builds. Integration points include service units for systemd, legacy init scripts for SysVinit-based systems, and hooks for configuration management tools like SaltStack. Release maintainers coordinate with distribution bug trackers and continuous integration systems to deliver security and feature updates.
Alternatives to cronie include implementations and scheduling systems such as Vixie cron, dcron, fcron, and higher-level job orchestrators like systemd-timer units within systemd, as well as task schedulers in container ecosystems like Kubernetes CronJobs. Compared to systemd timers, cronie provides traditional crontab syntax and per-user crontabs familiar to administrators migrating from historical Unix-like systems. Projects such as Anacron complement cronie for machines that are not always powered on, while configuration management ecosystems like Ansible and Puppet offer templating and lifecycle control for scheduled tasks across fleets.
Category:Linux software