Cara Ampuh Mengecilkan /var/log/ di Debian 13 (Lengkap)

Kenapa Folder /var/log/ Bengkak?

Halo, bro! Pernah tidak sih kamu lagi asik-asik pakai Debian 13, tiba-tiba dapat notifikasi "disk space low"? Pas dicek, eh, ternyata folder /var/log/ kamu ukurannya udah tidak wajar, bisa bergiga-giga. Santai, jangan panik. Ini masalah umum dan gampang banget atasinya.

Di sistem modern kayak Debian 13, ada dua biang kerok utama yang bikin folder log ini bengkak:

  1. Log Systemd (Journal): Ini adalah sistem logging utama. Semua log dari kernel, service, dan aplikasi masuk ke sini. Kalau tidak diatur, dia bakal nyimpen log terus-terusan.
  2. Log Tradisional (Logrotate): Ini adalah log-log 'jadul' dari aplikasi spesifik kayak Nginx, APT, Dpkg, dll. Biasanya file ini diakhiri dengan .log, .log.1, .log.2.gz, dan seterusnya.

Yuk, kita bereskan satu per satu!

Langkah 1: Cek Si Biang Kerok

Sebelum main hapus, kita harus investigasi dulu. Siapa sih yang paling banyak makan tempat di /var/log/? Kita bisa pakai perintah sakti ini untuk melihat 10 file/folder terbesar di sana:

sudo du -sh /var/log/* | sort -rh | head -n 10

Perintah ini artinya: du -sh (cek ukuran folder/file), sort -rh (urutkan dari terbesar ke terkecil), dan head -n 10 (tampilkan 10 teratas).

Ilustrasi pembersihan log

Hasilnya mungkin bakal kayak gini (ini contoh dari kasus kita sebelumnya):

1,7G /var/log/journal
16M /var/log/installer
520K /var/log/sysstat
... (dan seterusnya) ...

Nah, kelihatan jelas kan? /var/log/journal adalah pelakunya, ukurannya 1.7 GIGA! Ukuran yang lain (Megabyte/Kilobyte) itu normal banget, jadi bisa kita abaikan.


Langkah 2: Bereskan Log Systemd (Journal)

Oke, karena si journal ini biang keroknya, kita akan fokus ke dia. Ada dua hal yang perlu kita lakukan: membersihkan yang lama (sekali waktu) dan mengatur batasnya (permanen).

Mengedit file konfigurasi journald.conf

A. Bersihkan Sekarang (Vacuum) - Cara Cepat

Ini untuk langsung mengecilkan ukurannya saat ini juga. Kamu bisa pilih salah satu dari dua cara ini:

1. Berdasarkan Ukuran (Contoh: sisakan 500MB log terbaru):

sudo journalctl --vacuum-size=500M

2. Berdasarkan Waktu (Contoh: sisakan log 7 hari terakhir):

sudo journalctl --vacuum-time=7d

Setelah menjalankan salah satu perintah di atas, coba cek lagi ukurannya dengan journalctl --disk-usage. umumnya langsung menyusut! Hasil dapat berbeda tergantung perangkat, versi paket, dan konfigurasi sistem.

B. Konfigurasi Permanen (Sangat Direkomendasikan!)

Ini adalah langkah paling penting biar masalah tidak terulang. Kita akan "memarahi" systemd-journald agar tidak boros tempat lagi.

1. Buka file konfigurasinya:

sudo nano /etc/systemd/journald.conf
Terminal Linux menampilkan perintah truncate

2. Cari dan ubah baris ini:
Kamu akan lihat banyak teks, cari baris yang ada tulisan #SystemMaxUse=. Tanda # di depannya berarti baris itu tidak aktif (dikomentari).

Hapus tanda # di depannya dan atur batas ukurannya. Ukuran 1G (1 Gigabyte) atau 500M (500 Megabyte) udah lebih dari cukup untuk penggunaan normal.

[Journal]
#... (teks-teks lain biarkan saja)
SystemMaxUse=1G
#...

3. Simpan dan Keluar:
Di nano, caranya tekan Ctrl+O, lalu Enter (untuk menyimpan), dan Ctrl+X (untuk keluar).

4. Terapkan Perubahan:
Restart layanan journal-nya biar dia baca konfigurasi baru kita.

sudo systemctl restart systemd-journald

Selesai! Mulai sekarang, Debian kamu akan otomatis menjaga ukuran log journal agar tidak lebih dari 1G.


Langkah 3: Menjalankan Logrotate (Log Tradisional)

Gimana dengan log lain kayak apt, nala, atau dpkg.log? Walaupun ukurannya kecil, tidak ada salahnya kita bersihkan juga. Untuk ini, kita pakai alat bernama logrotate.

Biasanya logrotate ini jalan otomatis tiap hari. Tapi kita bisa paksa dia jalan sekarang juga untuk "merotasi" log (mengarsipkan yang lama, mengompresnya, dan membuat file log baru yang kosong).

sudo logrotate -f /etc/logrotate.conf

Perintah ini akan membaca semua aturan di /etc/logrotate.conf dan folder /etc/logrotate.d/, lalu menjalankannya. Ini akan bantu mengompres file-file .log.1 menjadi .log.2.gz dan menghapus yang sudah terlalu lama.

Langkah 4: Menghapus File Log "Nakal" (Manual)

Ini adalah langkah terakhir jika kedua cara di atas belum cukup (tapi biasanya sih sudah). Kadang, ada aplikasi yang log-nya tidak diurus sama journald atau logrotate.

Jika kamu menemukan file log super besar (misalnya /var/log/aplikasi-aneh.log) dari hasil cek di Langkah 1, begini cara aman mengosongkannya:

PERINGATAN KERAS!

Jangan pernah gunakan perintah rm (remove) untuk menghapus file log yang sedang aktif dipakai aplikasi. Ini bisa bikin aplikasinya error karena "kehilangan" file yang sedang dia tulis.

Cara yang AMAN adalah mengosongkan isinya tanpa menghapus filenya. Gunakan perintah truncate:

sudo truncate -s 0 /var/log/nama-file-besar.log

Perintah ini akan membuat ukuran file nama-file-besar.log menjadi 0 byte, tapi filenya tetap ada. Aplikasi yang tadinya nulis di situ akan lanjut nulis dari awal lagi tanpa error. Aman!

Struktur folder /var/log/ di Debian