Ubuntu VPS sunucunuzu SSH aracılığıyla tamamen yedeklemek, verilerinizi korumak ve olası sorunlar durumunda sunucunuzu eski haline getirmek için kritik bir adımdır. Bu makalede, sunucunuzu adım adım nasıl yedekleyeceğinizi, yaygın sorunları nasıl çözebileceğinizi ve bu yedekten nasıl geri dönüş yapacağınızı anlatacağız.
1. Yedekleme Öncesi Hazırlık
Yedeklemeye başlamadan önce aşağıdaki hazırlıkları yapın:
Disk Alanını Kontrol Edin
Yedekleme için yeterli disk alanınızın olup olmadığını kontrol edin:
df -h
Bu komut, disk kullanım durumunu ve boş alanı gösterir. Yedekleme için yeterli alan yoksa, harici bir depolama çözümü düşünün.
2. Yedekleme Komutunun Çalıştırılması
Yedeklemeyi tarball yöntemiyle sıkıştırılmış bir dosya olarak almak için aşağıdaki adımları izleyin.
Yedekleme Dizini Oluşturma
Yedekleme dosyasını saklayacağınız bir dizin oluşturun. Örneğin:
sudo mkdir -p /backup
Dizin için gerekli izinleri verin:
sudo chmod 700 /backup
Yedekleme Komutunun Kullanımı
Aşağıdaki komut, sunucunuzdaki tüm dosyaları sıkıştırılmış bir dosya olarak yedekler:
sudo tar -cvpzf /backup/server-backup.tar.gz --exclude=/backup --exclude=/proc --exclude=/tmp --exclude=/mnt --exclude=/sys --exclude=/dev /
Komut Açıklamaları:
-c
: Yeni bir arşiv oluşturur.-v
: İşlem sırasında detayları gösterir.-p
: Dosya izinlerini korur.-z
: Arşivi sıkıştırır (.tar.gz
).-f
: Çıktı dosyasının yolunu belirtir.--exclude
: Belirli dizinleri yedeklemeden hariç tutar.
3. Yedekleme Dosyasını Taşıma
Yedekleme dosyasını aynı sunucuda tutmak yerine başka bir yere taşımanız önerilir.
SCP ile Taşıma
Yedekleme dosyasını yerel bilgisayarınıza taşımak için:
scp root@sunucu_ip:/backup/server-backup.tar.gz /yerel/dizin/
Rsync ile Taşıma
Dosyayı başka bir sunucuya kopyalamak için:
rsync -avz /backup/server-backup.tar.gz kullanici@hedef_sunucu:/yedekleme_yolu/
4. Otomatik Yedekleme Ayarları
Yedekleme işlemini düzenli aralıklarla yapmak için cron
kullanabilirsiniz:
sudo crontab -e
Her gece saat 3’te yedekleme yapmak için aşağıdaki satırı ekleyin:
0 3 * * * tar -cvpzf /backup/server-backup-$(date +\%Y-\%m-\%d).tar.gz --exclude=/backup --exclude=/proc --exclude=/tmp --exclude=/mnt --exclude=/sys --exclude=/dev /
5. Yaygın Hatalar ve Çözümleri
Hata: “Cannot open: No such file or directory”
Bu hata, yedekleme dizininin mevcut olmadığını gösterir. /backup
dizinini oluşturun ve tekrar deneyin:
sudo mkdir -p /backup sudo chmod 700 /backup
Hata: “Cannot write: Broken pipe”
Bu hata genellikle yetersiz disk alanından kaynaklanır. Disk alanınızı kontrol edin:
df -h
Boş alan yaratmak için gereksiz dosyaları silin veya harici bir depolama cihazı kullanın.
6. Yedekleme Dosyasını Doğrulama
Yedekleme dosyasının düzgün şekilde oluşturulduğundan emin olmak için:
tar -tvf /backup/server-backup.tar.gz
Bu komut, yedekleme içeriğini listeleyecektir.
7. Ekstra Güvenlik için Yedekleme Şifreleme
Yedekleme dosyanızı şifrelemek için GPG kullanabilirsiniz:
gpg -c /backup/server-backup.tar.gz
Şifreleme işlemi sonrasında dosyanız .tar.gz.gpg
uzantısıyla kaydedilir.
8. Yedekten Geri Dönüş
Eğer sisteminizde bir sorun oluşur ve yedekten geri dönmeniz gerekirse, aşağıdaki adımları izleyin:
Yedek Dosyasını Çözümleme
Yedek dosyasını eski haline getirmek için şu komutu kullanabilirsiniz:
sudo tar -xvpzf /backup/server-backup.tar.gz -C /
Komut Açıklamaları:
-x
: Arşivi çıkarır.-v
: İşlem sırasında detayları gösterir.-p
: Dosya izinlerini korur.-z
: Sıkıştırılmış dosyayı açar.-f
: Çıktı dosyasını belirtir.-C /
: Çıkartılan dosyaların kök dizinine yerleştirilmesini sağlar.
Sistemi Yeniden Başlatma
Dosyalar yedekten geri yüklendikten sonra sistemi yeniden başlatın:
sudo reboot
Notlar:
- Geri yükleme sırasında, eski yedeğinizde olmayan yeni dosyalar korunur.
- Geri yükleme işlemi sırasında önemli servislerinizi durdurmanız gerekebilir.
9. Sonuç
SSH ile Ubuntu VPS sunucunuzu yedeklemek ve gerektiğinde bu yedekten geri dönmek, sistem güvenliği ve sürekliliği için oldukça önemlidir. Yedekleme ve geri dönüş işlemlerini düzenli olarak test edin ve dosyalarınızı güvenli bir yerde saklayın.