Menata fondasi operasional AlmaLinux: alur log journald dan rsyslog dengan logrotate, sinkronisasi waktu yang akurat lewat chrony, plus penjadwalan tugas otomatis dengan cron dan systemd timers, serta analisis kecepatan boot dengan systemd-analyze.

Di episode 11 sebelumnya kita mengamati sistem lewat Cockpit dan perintah monitoring. Sekarang kita menata tiga fondasi operasional yang sering dianggap remeh padahal menentukan keberhasilan di lapangan: logging (jejak sistem), time sync (akurasi waktu), dan automation (pekerjaan berulang tanpa manusia).
Server yang log-nya berantakan, jamnya melenceng, dan tugas-tugasnya manual adalah mimpi buruk untuk dioperasikan. Episode ini merapikan ketiganya.
Di episode 7 kita mengenal journald sebagai logger utama systemd. Namun AlmaLinux juga menjalankan rsyslog — daemon logging tradisional yang menulis log ke file teks di /var/log/. Keduanya hidup berdampingan: journald menyimpan log terstruktur, rsyslog menulis ke file klasik.
| File | Isi |
|---|---|
/var/log/messages | Pesan sistem umum |
/var/log/secure | Peristiwa keamanan: login, sudo, sshd |
/var/log/cron | Eksekusi tugas terjadwal |
/var/log/dnf5.log | Jejak transaksi package manager |
sudo tail -n 20 /var/log/secureUntuk layanan tertentu, kalian bisa mengalihkan log dari journald ke file teks — berguna saat integrasi dengan sistem yang hanya membaca file:
:programname, isequal, "myapp" /var/log/myapp.log
& stopBaris ini memberitahu rsyslog untuk menulis semua pesan dari program myapp ke file khusus, lalu berhenti memproses. Setelah menambah file, restart rsyslog.
Log tumbuh tak terkendali jika tidak dibatasi. logrotate mengotomatiskan rotasi: memindahkan log lama, mengompresinya, dan mempertahankan jumlah tertentu.
/var/log/myapp.log {
daily
rotate 7
compress
missingok
notifempty
}Pola ini memutar log setiap hari, menyimpan 7 file terakhir, dan mengompresinya. Konfigurasi default ada di /etc/logrotate.conf, dan file per-service ditaruh di /etc/logrotate.d/. Uji rotasi tanpa menunggu jadwal:
sudo logrotate -d /etc/logrotate.d/myappWaktu yang akurat adalah syarat mutlak server modern: log lintas host bisa dibandingkan, sertifikat TLS valid, dan replikasi database berjalan benar. AlmaLinux memakai chrony sebagai klien NTP.
timedatectl
chronyc trackingServer waktu dikonfigurasi di /etc/chrony.conf:
pool 2.pool.ntp.org iburst
makestep 1 3
rtcsyncpool ... iburst mengambil waktu dari beberapa server sekaligus, makestep mengizinkan lompatan waktu di awal, dan rtcsync menyinkronkan hardware clock. Restart setelah mengubah:
sudo systemctl restart chronyd
chronyc sourcesTip
Untuk server yang tidak memiliki akses internet, jalankan chrony dalam mode server sendiri (allow di konfigurasi) agar mesin lain dalam jaringan bisa menyinkronkan waktu darinya. Ini pola umum di lab dan jaringan internal terisolasi.
Pekerjaan rutin seperti backup dan rotasi log seharusnya tidak bergantung pada manusia. Tiga mekanisme penjadwalan tersedia di AlmaLinux.
cron adalah penjadwal klasik. Setiap user punya crontab:
crontab -eFormat cron lima kolom: menit jam hari-bulan bulan hari-minggu perintah:
0 2 * * * /usr/local/bin/backup.sh
30 1 * * 0 dnf5 autoremoveCron tidak menjalankan tugas yang terlewat saat sistem mati. anacron menutup celah ini — ia memastikan tugas terjadwal tetap dijalankan setelah sistem hidup kembali, meski terlambat. Di AlmaLinux, cron dan anacron berjalan bersama untuk menangani tugas harian/mingguan.
Systemd menyediakan penjadwalan modern lewat timer units — dengan kelebihan: integrasi dengan unit service, log terpadu di journald, dan kemampuan menangkap tugas yang terlewat.
[Unit]
Description=Daily backup
[Timer]
OnCalendar=daily
Persistent=true
[Install]
WantedBy=timers.targetOnCalendar=daily menjalankan setiap hari; Persistent=true menjalankan tugas yang terlewat saat sistem mati. Pasangkan dengan unit service backup.service dan aktifkan:
sudo systemctl enable --now backup.timer
systemctl list-timersInfo
Untuk tugas baru, preferensi modern adalah systemd timers daripada cron: kalian mendapat log terpusat, manajemen unit, dan dependency. Cron tetap berguna dan tersebar luas, jadi pahami keduanya.
Terakhir, perintah diagnostik yang jarang dieksplorasi: systemd-analyze. Ia mengukur waktu boot dan menemukan service yang memperlambat startup.
systemd-analyze
systemd-analyze blamesystemd-analyze menampilkan total waktu boot; blame mengurutkan service berdasarkan waktu inisialisasinya. Service yang memakan waktu tidak proporsional adalah kandidat untuk dioptimasi — misalnya menunda service non-kritis agar tidak bersaing saat boot.
/etc/logrotate.d/.chronyc tracking secara rutin.Persistent=true di systemd timers atau anacron untuk tugas yang harus tetap berjalan.>> /var/log/task.log 2>&1) agar kesalahan terekam.Pada episode 12 ini kalian telah menata fondasi operasional AlmaLinux: alur log journald dan rsyslog dengan hierarki /var/log/ dan logrotate, sinkronisasi waktu akurat dengan chrony, penjadwalan otomatis lewat cron, anacron, dan systemd timers, serta analisis kecepatan boot dengan systemd-analyze.
Inti yang harus dibawa pulang:
/var/log/ seperti secure dan messages./etc/logrotate.d/.chronyc tracking dan chronyc sources.systemd-analyze blame menemukan service yang memperlambat boot.Fondasi operasional yang rapi membuat kalian siap masuk ke ranah keamanan. Di episode 13 selanjutnya, kita akan membahas SELinux & Mandatory Access Control — perbedaan MAC dan DAC, mode enforcing, permissive, dan disabled, membaca dan memperbaiki konteks, boolean, serta troubleshooting service yang diblokir. Sampai jumpa!