Auto Backup Folder dengan Python di Linux
Sederhana, Otomatis, dan Andal
Bayangkan Anda sedang bekerja keras menyusun dokumen penting, konfigurasi server, atau koleksi skrip program. Tiba-tiba sistem crash atau file penting terhapus. Rasanya? Panik. Padahal solusinya sederhana: backup otomatis.
Berikut adalah versi file Markdown dari artikel “Auto Backup Folder dengan Python di Linux”:
Auto Backup Folder dengan Python di Linux
Sederhana, Otomatis, dan Andal
Bayangkan Anda sedang bekerja keras menyusun dokumen penting, konfigurasi server, atau koleksi skrip Python kesayangan Anda. Tiba-tiba sistem crash atau file penting terhapus. Rasanya? Panik. Padahal solusinya sederhana: backup otomatis.
Di dunia sistem operasi Linux yang tangguh dan fleksibel, Anda bisa mengotomatiskan hampir segalanya — termasuk proses backup. Kali ini, kita akan membuat skrip Python sederhana untuk membackup folder secara otomatis setiap hari, lengkap dengan kompresi .tar.gz
.
Kenapa Python?
Python adalah sahabat baik sysadmin dan developer: mudah dibaca, kuat, dan punya ekosistem pustaka yang luas. Dengan beberapa baris kode saja, Anda bisa membuat sistem backup ringan tapi efektif. Ini juga jadi proyek yang sempurna untuk pemula yang ingin belajar otomasi di Linux.
Fitur yang Akan Kita Buat
- Backup folder tertentu secara rekursif
- Kompresi file hasil backup dalam format
.tar.gz
- Simpan backup di direktori terpisah dengan penamaan berdasarkan tanggal
- Siap dijadwalkan via
cron
Persiapan
Sebelum mulai, pastikan Python 3 sudah terpasang:
python3 --version
Jika belum terpasang, install dengan:
sudo apt update && sudo apt install python3
Kode Python: backup.py
import os
import tarfile
from datetime import datetime
# Folder sumber yang ingin di-backup
SOURCE_FOLDER = '/home/predisenior/data'
# Folder tujuan backup
FOLDER_BACKUP = '/home/predisenior/code/python/otomasi/auto-backup/data'
# Pastikan folder tujuan ada
os.makedirs(FOLDER_BACKUP, exist_ok=True)
# Format nama file backup berdasarkan tanggal
tanggal = datetime.now().strftime('%H:%M-%d-%m-%Y')
backup_filename = f'backup_{tanggal}.tar.gz'
backup_path = os.path.join(FOLDER_BACKUP, backup_filename)
# Buat backup dalam format .tar.gz
try:
with tarfile.open(backup_path, "w:gz") as tar:
tar.add(SOURCE_FOLDER, arcname=os.path.basename(SOURCE_FOLDER))
print(f" Backup berhasil: {backup_path}")
except Exception as e:
print(f" Gagal melakukan backup: {e}")
7
Menjadwalkan dengan Cron (Otomatis Harian)
- Buka crontab:
crontab -e
- Tambahkan baris ini untuk menjalankan backup setiap hari pukul 02:00:
0 2 * * * /usr/bin/python3 /home/username/backup.py
⚠️ Pastikan path Python dan skrip benar. Gunakan
which python3
untuk mengecek lokasi interpreter Python Anda.
- Simpan dan keluar. Sekarang backup Anda berjalan otomatis setiap hari!
Tips Tambahan
- Rotasi Backup: Anda bisa menambahkan logika untuk menghapus backup yang lebih dari 7 hari.
- Email Notifikasi: Integrasi dengan
smtplib
bisa mengirim notifikasi ke email Anda setiap kali backup selesai. - Integrasi Cloud: Simpan hasil backup ke Google Drive atau Dropbox dengan API tambahan.
Penutup
Backup bukan hal mewah. Ia adalah tameng pertama Anda dari kehilangan data yang bisa merugikan secara waktu, tenaga, bahkan finansial. Dengan sedikit usaha dan skrip Python ringan, Anda sudah melindungi aset digital Anda lebih baik dari sebelumnya.
Jangan tunggu bencana datang. Otomatiskan backup Anda — mulai hari ini.
Selamat mencoba, dan semoga folder Anda selalu aman! Jika artikel ini membantu, bagikan ke rekan kerja Anda. Siapa tahu, besok mereka kehilangan file juga 😉
Ditulis oleh: Seorang pecinta Linux yang pernah kehilangan folder
/home
karena terlalu percaya diri. Tools favorit: Python, cron, dan secangkir kopi hangat.