Menjadwalkan Tugas dengan Cron
Kuasai utilitas 'cron' untuk menjadwalkan skrip dan perintah agar berjalan otomatis pada interval atau waktu tertentu.
Menjadwalkan Tugas dengan Cron adalah pelajaran DevOps Bootcamp gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar DevOps Bootcamp, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus DevOps Bootcamp mencakup 4 pelajaran total.
Mengotomatiskan Tugas dengan Cron
Selamat datang di dunia otomatisasi! Dalam pelajaran ini, Anda akan mempelajari cron, utilitas canggih di Linux yang memungkinkan Anda menjadwalkan perintah atau skrip agar berjalan secara otomatis pada waktu tertentu.
Bayangkan Anda dapat menyiapkan pencadangan harian atau pemeriksaan sistem setiap jam tanpa perlu melakukan apa pun—itulah tugas cron!
Berkas Crontab Pribadi Anda
Setiap pengguna di sistem Linux memiliki berkas crontab (tabel cron) sendiri. Di sinilah Anda menyimpan semua tugas terjadwal.
Untuk mengedit crontab pribadi, Anda akan menggunakan perintah crontab -e. Perintah ini membuka berkas tersebut di editor teks bawaan Anda, sehingga Anda siap menambahkan pekerjaan baru.
Entri Crontab: Kolom Waktu
Entri crontab terdiri dari enam bagian. Lima bagian pertama menentukan kapan perintah Anda akan berjalan, dan bagian-bagian tersebut dipisahkan oleh spasi:
- Menit:
0-59 - Jam:
0-23(0 adalah tengah malam) - Hari dalam Bulan:
1-31 - Bulan:
1-12(atauJan-Dec) - Hari dalam Minggu:
0-7(0 atau 7 adalah Minggu, 1 adalah Senin)
Entri Crontab: Perintah
Bagian keenam dan terakhir dari entri crontab adalah perintah atau skrip yang ingin Anda jalankan.
Sangat penting untuk menggunakan jalur absolut bagi perintah dan skrip di sini (misalnya, /usr/bin/python, bukan hanya python). Pekerjaan cron berjalan dalam lingkungan minimal, sehingga PATH yang biasa Anda gunakan mungkin tidak tersedia.
Karakter Khusus Crontab
Untuk membuat jadwal yang fleksibel, cron menggunakan karakter khusus:
*(tanda bintang): Mencocokkan semua nilai yang mungkin (misalnya, setiap menit atau setiap jam).,(koma): Memisahkan daftar nilai (misalnya,1,15untuk menit ke-1 dan ke-15).-(tanda hubung): Menentukan rentang nilai (misalnya,9-17untuk jam 9 hingga 17)./(garis miring): Menentukan interval langkah (misalnya,*/10untuk setiap 10 menit).
Pintasan Penjadwalan yang Telah Ditentukan
Untuk kebutuhan penjadwalan umum, cron menyediakan pintasan praktis yang menggantikan lima kolom waktu pertama:
@reboot: Berjalan sekali setelah sistem dimulai ulang.@yearly(atau@annually): Berjalan sekali setahun (0 0 1 1 *).@monthly: Berjalan sekali sebulan (0 0 1 * *).@weekly: Berjalan sekali seminggu (0 0 * * 0).@daily(atau@midnight): Berjalan sekali sehari (0 0 * * *).@hourly: Berjalan sekali setiap jam (0 * * * *).
Praktik Langsung: Menjadwalkan Skrip Sederhana
Mari buat skrip sederhana yang mencatat sapaan, lalu jadwalkan agar berjalan setiap hari pada pukul 10:00 AM.
- Buat skrip (misalnya,
~/greet.sh): - Jadikan skrip dapat dieksekusi:
chmod +x ~/greet.sh - Tambahkan ke crontab (
crontab -e):0 10 * * * /home/user/greet.sh
Entri ini berarti: Pada menit ke-0, jam ke-10 (10 AM), setiap hari dalam bulan, setiap bulan, dan setiap hari dalam minggu, jalankan/home/user/greet.sh.
#!/bin/bash
# This script logs a greeting to a temporary file.
echo "Hello from Cron! The time is $(date)" >> /tmp/cron_greeting.logMengelola Pekerjaan Cron Anda
Setelah menambahkan pekerjaan cron, Anda perlu mengelolanya:
- Untuk menampilkan daftar entri crontab saat ini:
crontab -l - Untuk menghapus semua entri crontab Anda (gunakan dengan sangat hati-hati karena tindakan ini tidak dapat dibatalkan!):
crontab -r
Selalu tinjau crontab Anda dengan crontab -l setelah melakukan perubahan untuk memastikan entri Anda sudah benar.
Variabel Lingkungan Cron
Ingat bahwa pekerjaan cron berjalan dalam lingkungan minimal. Artinya, pekerjaan tersebut sering kali tidak memiliki variabel lingkungan yang sama (seperti PATH) dengan shell interaktif Anda.
Jika skrip Anda bergantung pada perintah tertentu, gunakan jalur absolut perintah tersebut atau tentukan variabel lingkungan yang diperlukan langsung di bagian atas berkas crontab, seperti PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin.
Tantangan Sintaks Crontab
Anda perlu menjadwalkan skrip bernama /home/user/daily_report.sh agar berjalan pada pukul 9:15 AM setiap hari kerja (Senin hingga Jumat). Entri crontab mana yang benar?
Rangkuman: Menguasai Penjadwalan Cron
Kerja bagus! Kini Anda telah menguasai dasar-dasar cron untuk menjadwalkan tugas.
- Anda telah mempelajari berkas
crontabdan cara mengeditnya dengancrontab -e. - Anda memahami enam kolom dalam entri cron, termasuk kolom waktu dan perintah.
- Anda telah mempelajari karakter khusus dan pintasan yang telah ditentukan untuk penjadwalan yang fleksibel.
- Anda tahu cara mengelola pekerjaan dengan
crontab -ldancrontab -r. - Anda juga telah mempelajari pentingnya jalur absolut dan variabel lingkungan dalam konteks cron.
Sekarang, mari mulai mengotomatiskan tugas!
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Menjadwalkan Tugas dengan Cron” gratis?
Ya — teks lengkap “Menjadwalkan Tugas dengan Cron” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus DevOps Bootcamp, upgrade ke CoddyKit PRO. Kursus DevOps Bootcamp mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Menjadwalkan Tugas dengan Cron”?
Kuasai utilitas 'cron' untuk menjadwalkan skrip dan perintah agar berjalan otomatis pada interval atau waktu tertentu. Kamu berlatih DevOps Bootcamp dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai DevOps Bootcamp?
Tidak diperlukan pengalaman sebelumnya. DevOps Bootcamp di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Menjadwalkan Tugas dengan Cron” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran DevOps Bootcamp ini?
Ya. Setiap pelajaran DevOps Bootcamp menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Menjadwalkan Tugas dengan Cron
- Mengotomatiskan Administrasi Sistem
- Proyek Pembuatan Skrip Lanjutan
- Rotasi Log & Pembersihan Otomatis