Sebelum menulis perintah pertama, kalian perlu tahu dari mana Borg berasal (fork Attic tahun 2010), filosofi desainnya yang fokus pada deduplicating backup, status rilis Borg 1.4.x yang stabil dan Borg 2.0 yang masih beta, serta alasan nyata mengapa backup berbasis dedup dan enkripsi penting untuk server dan workload harian.

Di episode 0 kalian sudah menyiapkan environment: borg 1.4.5 terinstall dan repository siap dipakai. Sebelum menulis borg create pertama, ada baiknya kita memahami dari mana Borg berasal, mengapa ia didesain seperti ini, dan masalah nyata apa yang ia selesaikan. Mengenal latar belakang membuat kalian lebih bijak memilih tool dan tidak mudah tergoda oleh fitur yang tidak relevan.
Borg berawal dari Attic, proyek backup Python yang dibuat oleh Jonas Borgström. Pada tahun 2010, sekelompok maintainer mengambil kode Attic dan mengembangkannya secara independen — lahirlah BorgBackup. Filosofi utama Borg sejak awal: deduplicating backup — hanya data yang benar-benar berubah yang disimpan, sekali pun snapshot yang dihasilkan tampak utuh.
Tagline resminya ringkas dan menjadi kompas desain sampai sekarang: "Deduplicated, encrypted, authenticated and compressed backups."
Peta versi Borg penting agar tidak salah pilih di produksi:
Warning
Jangan pernah mengelola data penting dengan rilis beta. Repo yang dibuat Borg 2.0 tidak bisa dibaca oleh Borg 1.x dan sebaliknya. Untuk produksi, gunakan Borg 1.4.5.
Borg memecah file menjadi chunk dengan ukuran variable yang ditentukan oleh isi file, bukan posisinya. Karena pembagian chunk berbasis isi, pergeseran kecil di awal file tidak memicu perubahan seluruh file. Akibatnya, backup harian yang hanya mengubah sebagian kecil data memakan ruang yang sangat sedikit. Analoginya: menambahkan satu baris ke file log berukuran 1 GB tidak akan menyimpan ulang 1 GB — yang disimpan hanya baris baru itu.
Setelah dedup, Borg mengompresi chunk dengan zstd, lz4, atau zlib (episode 6). Data teks, log, dan config biasanya menyusut drastis, mengurangi ruang penyimpanan dan bandwidth untuk repo remote.
Borg tidak hanya mengenkripsi data — ia juga memastikan data tidak bisa diubah tanpa terdeteksi (authenticated encryption). Ini menjaga integritas backup, dan di episode 13 kita tambahkan lapisan append-only sebagai pertahanan terhadap ransomware.
Arsip Borg bisa di-mount sebagai direktori biasa dengan borg mount. Tidak perlu restore penuh untuk sekadar melihat atau mengambil satu file — kita praktikkan di episode 5.
Gabungan dedup + kompresi + enkripsi membuat Borg ideal untuk jadwal harian: waktu dan ruang yang dibutuhkan sebanding dengan jumlah perubahan, bukan ukuran dataset.
rm -rf di direktori yang salah — adalah penyebab kehilangan data paling umum di lapangan.Rule of thumb yang wajib diingat: 3-2-1 — tiga salinan data, di dua media berbeda, dan satu di antaranya off-site.
Note
Backup yang baik bukan sekadar "menyalin file". Backup yang baik menawarkan tiga properti sekaligus: efisien ruang (dedup), aman (enkripsi otentikasi), dan bisa diverifikasi (check + test restore). Borg didesain untuk tiga-tiganya.
Di episode 2 kita masuk ke inti teknis: konsep dasar & arsitektur utama — apa bedanya repository dan archive, bagaimana chunker content-defined bekerja, peran key, dan peta subcommand Borg. Ini fondasi yang membuat semua episode selanjutnya terasa ringan.