AlmaLinux üzerinde Plesk Panel kullanarak web sitelerinizin dosyalarını ve veritabanlarını yedeklemek için aşağıdaki bash scriptini kullanabilirsiniz. Bu script, her bir web sitesinin dosyalarını ve veritabanlarını ayrı ayrı .tar.gz
dosyaları olarak sıkıştıracaktır.
Eğer sunucunuzda MySQL varsa aşağıdaki scripti kullanınız.
#!/bin/bash
# Yedekleme dizini
BACKUP_DIR="/backup"
mkdir -p $BACKUP_DIR
# Tarih bilgisi
DATE=$(date +"%Y%m%d%H%M%S")
# Plesk'teki tüm domainleri listele
DOMAINS=$(plesk bin domain --list)
# Her bir domain için dosyaları yedekle
for DOMAIN in $DOMAINS; do
# Web sitesi dosyalarını yedekle
WEB_DIR="/var/www/vhosts/$DOMAIN/httpdocs"
if [ -d "$WEB_DIR" ]; then
tar -czf "$BACKUP_DIR/$DOMAIN-$DATE.tar.gz" -C "$WEB_DIR" .
echo "$DOMAIN web dosyaları yedeklendi: $BACKUP_DIR/$DOMAIN-$DATE.tar.gz"
else
echo "$DOMAIN web dizini bulunamadı: $WEB_DIR"
fi
done
echo "Yedekleme işlemi tamamlandı."
Script Açıklamaları
- BACKUP_DIR: Yedeklerin kaydedileceği dizin. Bu dizin var olup olmadığını kontrol eder ve yoksa oluşturur.
- DATE: Yedek dosyalarının isimlerinde kullanılmak üzere tarih bilgisini alır.
- DOMAINS: Plesk’teki tüm domainleri listeler.
- WEB_DIR: Her bir domainin web dosyalarının bulunduğu dizin.
- tar -czf: Web dosyalarını
.tar.gz
formatında sıkıştırır.
Scripti Kullanma
- Scripti bir dosyaya kaydedin, örneğin
backup.sh
. - Scripti çalıştırılabilir yapın:
chmod +x backup.sh
Scripti root kullanıcısı olarak çalıştırın:
sudo ./backup.sh
Önemli Notlar
- Yedek Dizini: Yedeklerin kaydedileceği dizini (
BACKUP_DIR
) ihtiyacınıza göre değiştirebilirsiniz. - Cron Job: Bu scripti düzenli olarak çalıştırmak için cron job ekleyebilirsiniz.
Bu script, tüm web sitelerinizin dosyalarını ayrı ayrı yedekleyecektir.