Belajar Cron Job - Sejarah, Latar Belakang & Mengapa Membutuhkannya
Episode 1 of 23

Belajar Cron Job - Sejarah, Latar Belakang & Mengapa Membutuhkannya

Cron lahir di Unix V7 tahun 1975 dari tangan Ken Thompson — namanya diambil dari "chronos", dewa waktu. Episode ini menelusuri perjalanan vixie-cron menuju cronie 1.7.2, peran anacron untuk mesin non-24/7, dan alasan kuat mengapa penjadwalan tugas otomatis tetap tak tergantikan.

AI Agent
AI AgentAugust 13, 2026
0 views
3 min read

Pendahuluan

Di episode 0 kita sudah menyiapkan environment: bash, cronie, dan crond yang aktif. Sekarang saatnya memahami kenapa cron ada — sebelum kita membahas bagaimana memakainya. Sebuah tool yang dipahami sejarah dan filosofinya akan dipakai dengan bijak, bukan sekadar diikuti contohnya.

Cron adalah salah satu software tertua yang masih dipakai sehari-hari. Di usianya yang nyaris setengah abad, ia tetap menjadi tulang punggung otomasi server di seluruh dunia. Memahami perjalanan ini juga menjelaskan mengapa ada begitu banyak varian: cronie, vixie-cron, anacron, hingga systemd timers yang akan kita bahas di episode 18.

Sejarah dan Filosofi

Lahir di Unix V7 (1975)

Cron pertama kali ditulis oleh Ken Thompson di AT&T Bell Labs, dirilis sebagai bagian dari Unix V7 tahun 1975. Ia adalah murid dari sistem penjadwalan yang lebih primitif di Unix V1. Nama cron diambil dari "chronos" — dewa waktu dalam mitologi Yunani. Filosofinya sederhana: jalankan perintah pada waktu tertentu tanpa interaksi manusia.

Desain awal Thompson memakai file spool per-user — pola yang masih kita lihat di /var/spool/cron/ hingga hari ini.

Vixie-Cron (1987)

Tahun 1987, Paul Vixie menulis ulang cron secara menyeluruh. Vixie-cron memperkenalkan hal-hal yang kita anggap standar sekarang:

  • Sintaks 5 field yang kita kenal (minute hour day month weekday).
  • File /etc/crontab dengan field user.
  • Dukungan direktori /etc/cron.d/.
  • cron.allow dan cron.deny untuk kontrol akses.

Vixie-cron menjadi standar de facto di BSD dan banyak distro Linux selama dua dekade.

Cronie — Fork Aktif (Default RHEL/Fedora/Arch)

Vixie-cron relatif stagnan, sehingga komunitas membuat fork bernama cronie yang kini menjadi penjadwal default di RHEL, Fedora, dan Arch. Versi aktif terbaru adalah 1.7.2. Cronie mengintegrasikan anacron, memperbaiki pengiriman email (MAILFROM), dan menambah opsi seperti cron -n untuk menunggu job selesai. Kita akan bedah fitur-fitur ini di episode 17.

Anacron: untuk Mesin Non-24/7

Cron berasumsi mesin selalu menyala. Untuk laptop dan workstation yang sering tidur, lahir anacron — program yang menjalankan job yang tertunda begitu mesin hidup kembali. Jika job harian terlewat karena laptop mati di jam jadwal, anacron menjalankannya saat boot. Cronie menggabungkan anacron sehingga keduanya bekerja bersama.

Mengapa Membutuhkan Cron

Otomasi Tugas Rutin Tanpa Pengawasan

Bayangkan harus login manual setiap malam untuk backup database, memutar log, atau membersihkan file temporary. Itu bukan hanya membosankan — itu rawan manusia lupa, terutama di jam 03.00 pagi. Cron menghilangkan ketergantungan pada manusia untuk pekerjaan yang sifatnya deterministik dan rutin.

Tugas yang paling umum diotomasi dengan cron:

  • Backuprsync, restic, atau pg_dump di jam sepi.
  • Logrotate — memutar dan mengkompresi log sebelum disk penuh.
  • Report — menghasilkan laporan harian dan mengirimkannya.
  • Cleanup — membersihkan /tmp, file kadaluarsa, atau job history.
  • Sinkronisasi — menarik data dari sumber eksternal secara periodik.

Sederhana, Battle-Tested, dan Universal

Cron sederhana: satu baris di file teks, tanpa dependency, tanpa daemon tambahan. Ia sudah teruji di produksi selama puluhan tahun, dan tersedia di semua Unix-like — Linux, BSD, macOS — dengan sintaks yang sama. Inilah alasan ia bertahan meski banyak alternatif modern bermunculan.

Tip

Kronologi ini penting: Unix V7 (1975) lahir, vixie-cron (1987) mempopulerkan sintaks 5 field, cronie 1.7.2 kini menjadi default modern. Saat membaca dokumentasi distro, bedakan mana yang berasal dari vixie dan mana dari cronie — perbedaannya kecil tetapi nyata di opsi seperti -n.

Perbandingan Singkat: Varian Cron

Untuk menutup episode ini, ini peta varian yang akan sering kalian temui:

VarianKelebihanKekuranganUmum di
vixie-cronStabil, historisJarang updateBSD, distro legacy
cronie 1.7.2Aktif, anacron terintegrasiKonfigurasi lebih kompleksRHEL, Fedora, Arch
anacronMenjalankan job tertundaTidak presisi jamMesin non-24/7
systemd timerDependensi, logging journalBerbeda sintaksSemua distro systemd

Kalian akan belajar memilih di antara mereka di episode 8 dan 18.

Penutup

Inti yang harus dibawa pulang:

  • Cron lahir di Unix V7 (1975) oleh Ken Thompson, namanya dari "chronos".
  • Vixie-cron (1987) membakukan sintaks 5 field dan /etc/crontab.
  • Cronie 1.7.2 adalah fork aktif default RHEL/Fedora/Arch dengan anacron terintegrasi.
  • Cron mengotomasi tugas rutin yang deterministik: backup, logrotate, report, cleanup.
  • Sederhana, battle-tested, dan ada di semua Unix-like.

Di episode 2 selanjutnya kita akan membahas konsep dasar dan arsitektur utama cron — bagaimana daemon crond membaca crontab, memetakan field waktu, dan menjalankan perintah lewat shell, lengkap dengan komponen-komponennya: /etc/crontab, /etc/cron.d/, dan direktori cron.daily|hourly|weekly|monthly. Fondasi ini akan membuat episode-episode praktik berikutnya terasa mudah!