Web siteleri, veritabanları ve uygulama dosyalarının düzenli olarak yedeklenmesi, sunucu yönetiminin en kritik adımlarından biridir. Ancak manuel yedekleme işlemleri zaman alıcı ve hata riski taşıyan bir süreçtir. Bu nedenle, VDS (Virtual Dedicated Server) üzerinde çalışan sistem yöneticileri için otomatik ve tek komutla çalışan yedekleme scriptleri oldukça değerlidir.
Bu yazıda, VDS sunucunuzda tek tıklamayla çalışan basit ama güçlü bir yedekleme scripti nasıl yazılır, nasıl özelleştirilir ve nasıl zamanlanır gibi konulara değineceğiz.
Neden Script ile Yedekleme?
- Zamandan tasarruf: Tek komutla tüm sistemin yedeği alınabilir.
- Standartlaşma: Her seferinde aynı adımları hatasız uygular.
- Otomasyon: Cronjob ile birleştirildiğinde sürekli yedek sağlar.
- Taşınabilirlik: Scripti farklı VDS’lerde kolayca kullanabilirsiniz.
Bash Script ile Yedekleme: Temel Yapı
Aşağıda bir web sitesi dosyalarını ve veritabanını /backup
dizinine tek komutla yedekleyen örnek bir bash script yer almaktadır.
1. Script Dosyasını Oluşturun
nano /usr/local/bin/yedekle
2. Aşağıdaki Scripti Yapıştırın
#!/bin/bash
# Yedek dizini
BACKUP_DIR="/backup/$(date +%Y-%m-%d)"
mkdir -p "$BACKUP_DIR"
# Web dosyalarının yedeği
tar -czf "$BACKUP_DIR/web.tar.gz" /var/www/html
# Veritabanı yedeği (MySQL)
mysqldump -u root -p'your_password' --all-databases > "$BACKUP_DIR/db.sql"
# Log
echo "Yedekleme tamamlandı: $BACKUP_DIR" >> /var/log/yedekle.log
⚠️ Not: Güvenlik için
your_password
kısmını root yerine özel bir yedekleme kullanıcısı ile değiştirmeniz önerilir.
3. Scripti Çalıştırılabilir Hale Getirin
chmod +x /usr/local/bin/yedekle
Artık terminalde yalnızca şunu yazarak yedek alabilirsiniz:
yedekle
Gelişmiş Özelleştirme İpuçları
rsync
entegrasyonu ile yedekleri farklı bir sunucuya aktarabilirsiniz.- Günlük, haftalık döngü ile eski yedekleri otomatik silmek için
find
komutu kullanılabilir. cronjob
ile zamanlayarak gece 02:00’de otomatik yedek alabilirsiniz:
crontab -e
0 2 * * * /usr/local/bin/yedekle
systemd
timer ile modern sistemlerde zamanlama yapılabilir.
Sonuç
VDS sunucunuzda tek komutla çalışan bir yedekleme scripti, hem veri güvenliğinizi artırır hem de sistem yönetimini kolaylaştırır. Özellikle acil durumlarda hızlı aksiyon almak için bu tür scriptler hayat kurtarıcı olabilir. İyi yapılandırılmış bir otomatik yedekleme altyapısı, tüm projeleriniz için sağlam bir koruma kalkanı oluşturur.