Belajar Cron Job - Pre-Requisites Skill & Setup Environment
Episode 0 of 23

Belajar Cron Job - Pre-Requisites Skill & Setup Environment

Sebelum menyentuh crontab, kalian perlu menguasai terminal Linux, dasar bash (variabel, redirect, exit code), dan konsep waktu/timezone, lalu menyiapkan distro dengan cronie/vixie-cron, akses root atau sudo, serta teks editor. Di episode ini kalian juga memverifikasi bahwa environment benar-benar siap.

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

Pendahuluan

Selamat datang di series Belajar Cron Job! Series ini akan membawa kalian menguasai cron — penjadwal tugas terjadwal di Linux — mulai dari syntax crontab paling dasar sampai pattern produksi yang andal, termasuk anacron, systemd timer, dan Kubernetes CronJob. Total ada 23 episode yang tersusun dalam enam fase, dari fondasi konsep sampai production readiness.

Sebelum menulis 30 2 * * * /usr/local/bin/backup.sh, ada skill dasar dan perangkat lunak yang wajib kalian miliki. Mengapa prasyarat ini penting? Karena cron hanyalah "pemicu waktu" — seluruh logika ada di dalam perintah dan script yang kalian tulis. Kalau kalian belum paham bash, redirect, atau exit code, kalian akan kesulitan mendiagnosis kenapa job yang dijadwalkan "tidak jalan".

Episode 0 ini adalah peta jalan kalian: kita memastikan skill dasar terpenuhi, menyiapkan host, dan memverifikasi environment untuk pertama kali. Setelah episode ini selesai, seluruh series bisa diikuti dengan nyaman.

Skill Dasar yang Wajib Dimiliki

Terminal dan Shell Linux

Cron menjalankan perintah lewat shell. Kalian wajib nyaman dengan terminal, tahu bedanya perintah internal shell dengan binary di PATH, dan terbiasa membaca output perintah. Cek dulu shell yang kalian pakai:

Cek shell aktif
echo "$SHELL"
which bash
bash --version | head -1

Dasar Bash: Variabel, Redirect, dan Exit Code

Cron bergantung pada tiga konsep bash ini sepanjang series:

  • VariabelVAR=value, $VAR, dan environment yang diwariskan ke perintah.
  • Redirect> untuk menulis file, >> untuk append, 2>&1 untuk menggabungkan stderr ke stdout. Ini kunci agar output job tertangkap.
  • Exit code — setiap perintah selesai dengan kode 0 (sukses) atau non-0 (gagal). Cron memakai ini untuk memutuskan apakah ada error yang harus dilaporkan.

Uji pemahaman dengan satu baris:

Uji variabel, redirect, exit code
MSG="halo"; echo "$MSG" >> /tmp/cron-pre-test.log; echo "exit=$?"

Jika muncul exit=0, redirect dan variabel bekerja.

Konsep Waktu dan Timezone

Cron sangat bergantung pada jam sistem. Kalian harus memahami perbedaan waktu lokal dan UTC, cara kerja NTP (agar jam tidak melenceng), dan pengaruh timezone terhadap jadwal. Cek jam dan timezone:

Cek waktu sistem
date
timedatectl

Catatan penting: cron secara default memakai waktu lokal host. Konsep ini akan kita bahas mendalam di episode 16.

Perangkat Software dan Hardware yang Disiapkan

Distro Linux dengan Cronie/Vixie-Cron

Cron bukan fitur kernel — ia adalah daemon yang menyertainya. Hampir semua distro menyertakan cronie (fork aktif) atau vixie-cron (pendahulunya). Kali ini kita pakai cronie 1.7.2 yang menjadi default di RHEL/Fedora/Arch. Cek apakah sudah terinstall:

Cek versi cronie
crond --version
crontab -l >/dev/null 2>&1 && echo "crontab tersedia"
systemctl is-active crond

Kalau belum ada, install sesuai distro:

Install cronie di distro populer
# Debian/Ubuntu
sudo apt install cron
 
# RHEL/Fedora
sudo dnf install cronie

Akses Root atau Sudo

Beberapa operasi (mengedit /etc/crontab, mengelola cron.allow, melihat log di /var/log/cron) membutuhkan root. Pastikan akun kalian punya sudo dan teruji:

Cek akses sudo
sudo -v && echo "sudo OK"

Teks Editor

Crontab diedit dengan editor teks. Pilih nano, vim, atau vi — apa pun yang kalian nyaman. Default editor diatur lewat EDITOR:

Atur editor default
export EDITOR=nano

Kita akan memakai EDITOR ini mulai episode 4.

Verifikasi Environment

Sebelum lanjut ke episode 1, jalankan verifikasi menyeluruh:

Verifikasi environment cron
crond --version
date
systemctl is-active crond
echo $SHELL

Warning

Cron membutuhkan daemon crond yang aktif. Kalau systemctl is-active crond menampilkan inactive, aktifkan dulu dengan systemctl enable --now crond — karena seluruh episode praktik di series ini membutuhkannya.

Ringkasan Prasyarat

Rangkuman yang sudah kalian siapkan di episode 0:

  • Skill bash: variabel, redirect, exit code, dan konsep waktu/timezone.
  • Host: distro Linux dengan cronie/vixie-cron dan daemon crond aktif.
  • Akses: root atau sudo yang sudah teruji.
  • Editor: teks editor favorit dengan EDITOR ter-set.

Jika ada yang belum terpenuhi, berhenti dulu dan lengkapi sebelum melanjutkan. Perjalanan 22 episode ke depan akan jauh lebih lancar dengan pijakan yang kuat ini.

Penutup

Inti yang harus dibawa pulang:

  • Cron hanya pemicu waktu; logika ada di bash dan script kalian.
  • Kuasai variabel, redirect, exit code, dan konsep timezone.
  • Siapkan distro dengan cronie, akses sudo, dan editor.
  • Selalu verifikasi crond aktif dan jam sistem benar.

Di episode 1 selanjutnya kita akan membahas sejarah, latar belakang, dan mengapa membutuhkan Cron Job — dari lahirnya di Unix V7 tahun 1975, perjalanan vixie-cron ke cronie 1.7.2, hingga masalah nyata yang diselesaikannya: otomasi tugas rutin yang tak pernah tidur. Pastikan environment kalian sudah siap, karena perjalanan Belajar Cron Job baru saja dimulai!