Takip et

Ubuntu 12.04 VPS Üzerinde BackupPC ile Bir Yedekleme Sunucusu Oluşturma: Kapsamlı Bir Rehber

Ubuntu 12.04 VPS Üzerinde BackupPC ile Bir Yedekleme Sunucusu Oluşturma: Kapsamlı Bir Rehber Giriş Günümüzün dijital dünyasında veri, işl

Ubuntu 12.04 VPS Üzerinde BackupPC ile Bir Yedekleme Sunucusu Oluşturma: Kapsamlı Bir Rehber

Giriş

Günümüzün dijital dünyasında veri, işletmeler ve bireyler için en değerli varlıklardan biridir. Donanım arızaları, yazılım hataları, insan kaynaklı hatalar, siber saldırılar veya doğal afetler gibi beklenmedik durumlar, veri kaybına yol açabilir ve ciddi sonuçlar doğurabilir. Bu tür felaket senaryolarına karşı en etkili önlem, düzenli ve güvenilir bir yedekleme stratejisi uygulamaktır. Yedekleme, verilerinizi güvenli bir konuma kopyalayarak olası bir veri kaybı durumunda geri yükleyebilmenizi sağlar.

Bu kapsamlı rehberde, açık kaynaklı ve güçlü bir yedekleme çözümü olan BackupPC’yi kullanarak Ubuntu 12.04 işletim sistemine sahip bir Sanal Özel Sunucu (VPS) üzerinde nasıl bir yedekleme sunucusu oluşturacağınızı adım adım anlatacağız. Ubuntu 12.04 eski bir sürüm olmasına rağmen, bu rehber, belirtilen ortamda BackupPC’nin temel kurulum ve yapılandırma prensiplerini anlamak isteyen kullanıcılar için tasarlanmıştır. BackupPC, istemci tarafında herhangi bir özel yazılıma ihtiyaç duymadan (clientless) SSH ve rsync gibi standart protokoller aracılığıyla yedekleme yapabilmesi, veri tekilleştirme (deduplication) yeteneği ve web tabanlı kullanıcı arayüzü sayesinde oldukça popüler bir çözümdür. Bir VPS üzerinde yedekleme sunucusu kurmak, yedeklerinizi ana sunucunuzdan fiziksel olarak ayrı bir konumda tutarak ekstra bir güvenlik katmanı sağlar.

BackupPC’nin Temelleri

BackupPC, ağ üzerinden birçok bilgisayarı yedeklemek için tasarlanmış, yüksek performanslı, açık kaynaklı bir yedekleme sistemidir. Linux, Windows ve macOS istemcilerini destekler ve yedekleme için rsync, tar veya smb gibi standart protokolleri kullanır.

Nasıl Çalışır?

BackupPC’nin çalışma prensibi oldukça basittir ancak oldukça etkilidir:

  • Sunucu-İstemci Mimarisi: BackupPC, merkezi bir sunucu üzerinde çalışır ve yedeklenecek istemcilerle ağ üzerinden iletişim kurar. İstemci tarafında özel bir BackupPC yazılımına gerek yoktur; sadece SSH sunucusu ve rsync kurulu olması yeterlidir.
  • Rsync veya Tar Kullanımı: Çoğu Linux/Unix benzeri sistemde rsync veya tar komutları kullanılarak yedekleme yapılır. Windows istemcileri için rsync veya smbclient kullanılabilir.
  • Veri Tekilleştirme (Deduplication): BackupPC’nin en güçlü özelliklerinden biri, veri tekilleştirmesidir. Yedeklenen dosyaların kopyalarını depolamak yerine, aynı dosyaların veya dosya parçalarının yalnızca bir kopyasını saklar ve diğerlerini sabit bağlantılar (hard links) aracılığıyla işaret eder. Bu, disk alanından önemli ölçüde tasarruf sağlar.
  • Tam (Full) ve Artımlı (Incremental) Yedeklemeler: BackupPC, periyodik tam yedeklemeler yapar ve bu tam yedeklemeler arasında yalnızca değişen dosyaları yedekleyen artımlı yedeklemeler gerçekleştirir. Bu artımlı yedeklemeler, bir önceki tam veya artımlı yedeğe göre yapılan değişiklikleri içerir. Geri yükleme sırasında, BackupPC tüm bu yedekleme zincirini birleştirerek istenen zaman noktasındaki veriyi sunar.

Özellikleri

BackupPC’yi cazip kılan başlıca özellikler şunlardır:

  • Ağ Üzerinden Yedekleme: SSH/rsync, SMB veya tar üzerinden çalışır.
  • Clientless Mimari: İstemcilerde özel bir yazılım yüklemeye gerek yoktur, bu da dağıtımı ve yönetimi kolaylaştırır.
  • Akıllı Veri Tekilleştirme: Dosya düzeyinde ve blok düzeyinde tekilleştirme ile depolama alanından büyük tasarruf.
  • Web Tabanlı Arayüz: Yedeklemeleri yapılandırmak, izlemek ve geri yüklemek için sezgisel bir web arayüzü sunar.
  • Esnek Yedekleme Politikaları: Tam ve artımlı yedeklemeler için ayrı ayrı saklama süreleri ve zamanlamalar ayarlanabilir.
  • Kullanıcı Dostu Geri Yükleme: Web arayüzü üzerinden kolayca dosya ve dizin geri yükleme imkanı.
  • E-posta Bildirimleri: Yedekleme durumları, hatalar veya tamamlanmalar hakkında yöneticilere e-posta bildirimleri gönderebilir.
  • Açık Kaynak: Ücretsizdir ve topluluk desteği güçlüdür.

Avantajları ve Dezavantajları

Avantajları:

  • Düşük maliyetli (açık kaynak).
  • Etkili disk alanı kullanımı (veri tekilleştirme).
  • Kolay kurulum ve yönetim (özellikle istemciler için).
  • Esnek ve güçlü yedekleme politikaları.
  • Çoklu platform desteği.

Dezavantajları:

  • Büyük dosya sistemleri için ilk tam yedekleme zaman alıcı olabilir.
  • Yapılandırma dosyaları (Perl tabanlı) ilk başta karmaşık gelebilir.
  • Geri yükleme performansı, yedekleme zincirinin uzunluğuna bağlı olarak değişebilir.
  • Anlık görüntü (snapshot) yeteneği yoktur; yedekleme sırasında dosya değişirse tutarsızlıklar olabilir (bu genellikle rsync’in çalışma şekliyle ilgilidir).

Sistem Gereksinimleri ve Ön Hazırlıklar

BackupPC sunucusunu Ubuntu 12.04 VPS üzerine kurmadan önce bazı temel gereksinimleri karşılamamız ve ön hazırlıkları yapmamız gerekiyor.

Ubuntu 12.04 VPS

Bu rehber, Ubuntu 12.04 (Precise Pangolin) üzerinde çalışmak üzere tasarlanmıştır. VPS sağlayıcınızdan Ubuntu 12.04 yüklü bir sunucu temin etmeniz gerekmektedir.

  • CPU ve RAM: BackupPC’nin kendisi çok fazla kaynak tüketmez, ancak yedeklenecek veri miktarı ve eş zamanlı istemci sayısı arttıkça daha fazla CPU ve RAM gerekebilir. Başlangıç için 1 vCPU ve 1GB RAM yeterli olabilir.
  • Disk Alanı: En kritik gereksinim disk alanıdır. Yedeklenecek verinin toplam boyutunu ve veri tekilleştirme oranını göz önünde bulundurarak yeterli disk alanı ayırmanız şarttır. Yedeklerinizi depolayacağınız alanın en azından yedeklenecek toplam verinin %50’si kadar (tekilleştirme ile daha az da olabilir) olması önerilir. Yüksek performanslı depolama (SSD) yedekleme ve geri yükleme sürelerini kısaltacaktır.

SSH Erişimi

VPS’inize SSH üzerinden erişiminizin olması gerekmektedir. Genellikle bu, bir terminal aracılığıyla ssh kullanıcıadı@vps_ip_adresi komutuyla yapılır. Yönetimsel işlemler için root kullanıcısı veya sudo yetkilerine sahip bir kullanıcı ile bağlanmalısınız.

Güncelleme ve Yükseltme

Sisteminizi güncel tutmak, güvenlik yamalarını almanızı ve yazılımların en son kararlı sürümlerini kullanmanızı sağlar. Kuruluma başlamadan önce aşağıdaki komutları çalıştırarak paket listenizi güncelleyin ve yüklü paketlerinizi yükseltin:

sudo apt-get update
sudo apt-get upgrade -y

Gerekli Paketler

BackupPC’nin çalışması için bazı temel paketlere ihtiyacımız var. Bunlar genellikle BackupPC paketi ile bağımlılık olarak gelir, ancak emin olmak için listelemekte fayda var:

  • Apache2: BackupPC’nin web arayüzünü sunmak için bir web sunucusu.
  • libapache2-mod-perl2: Apache’nin Perl betiklerini çalıştırmasını sağlayan modül. BackupPC’nin web arayüzü Perl ile yazılmıştır.
  • rsync: Dosya transferi ve senkronizasyonu için kullanılan araç. BackupPC, istemcileri yedeklemek için rsync’i yoğun olarak kullanır.
  • ssh: Güvenli kabuk protokolü. İstemcilerle güvenli iletişim kurmak için kullanılır.
  • Perl: BackupPC’nin kendisi Perl ile yazılmıştır.

BackupPC Sunucusunun Kurulumu

Şimdi BackupPC sunucusunu Ubuntu 12.04 VPS’imize kurma adımlarına geçebiliriz.

Adım 1: Gerekli Paketleri Yükleme

BackupPC ve gerekli tüm bağımlılıklarını tek bir komutla yükleyebiliriz:

sudo apt-get install backuppc apache2 libapache2-mod-perl2 rsync ssh -y

Bu komut, BackupPC’yi, Apache web sunucusunu, Perl modülünü, rsync’i ve ssh’yi sisteminize kuracaktır. Kurulum sırasında, BackupPC için bir Apache yapılandırma dosyası oluşturulacak ve Apache’nin Perl modülü etkinleştirilecektir. Ayrıca, BackupPC için otomatik olarak bir sistem kullanıcısı (backuppc) ve bir depolama dizini (/var/lib/backuppc) oluşturulacaktır.

Kurulum sırasında BackupPC web arayüzü için bir parola belirlemeniz istenebilir. Bu, backuppc kullanıcısı için bir parola olacaktır. Eğer istenmezse, daha sonra manuel olarak ayarlayacağız.

Adım 2: Apache Yapılandırması

BackupPC’nin web arayüzüne erişebilmek için Apache’nin doğru şekilde yapılandırılması gerekir.

backuppc.conf dosyasının etkinleştirilmesi

Kurulum sırasında backuppc.conf dosyası /etc/apache2/conf.d/ dizinine yerleştirilir ve genellikle otomatik olarak etkinleştirilir. Ancak emin olmak için kontrol edelim:

sudo a2enconf backuppc

Eğer zaten etkinse, “Conf backuppc already enabled” mesajını alırsınız. Eğer değilse, bu komut onu etkinleştirecektir.

Kimlik doğrulama ayarları

BackupPC web arayüzüne erişim için bir kullanıcı adı ve parola belirlememiz gerekiyor. Bu, Apache’nin .htpasswd mekanizması ile yapılır. backuppc kullanıcısı için bir parola belirleyelim:

sudo htpasswd -c /etc/backuppc/htpasswd backuppc

Bu komut sizden backuppc kullanıcısı için yeni bir parola girmenizi isteyecektir. Bu parolayı iki kez girdikten sonra, /etc/backuppc/htpasswd dosyasında şifrelenmiş parola saklanacaktır. Bu, web arayüzüne giriş yaparken kullanacağınız kullanıcı adı ve paroladır.

Apache’yi yeniden başlatma

Yapılandırma değişikliklerinin etkili olması için Apache servisini yeniden başlatmalıyız:

sudo service apache2 restart

Artık web tarayıcınızdan http://sizin_vps_ip_adresiniz/backuppc adresine giderek BackupPC web arayüzüne erişebiliyor olmalısınız. Giriş yaparken az önce belirlediğiniz backuppc kullanıcı adı ve parolasını kullanın.

Adım 3: BackupPC Kullanıcısı ve İzinleri

BackupPC, sistemde backuppc adında özel bir kullanıcı ile çalışır. Bu kullanıcının, yedekleme dizinine (/var/lib/backuppc) yazma ve okuma izinleri olması gerekir. Kurulum sırasında bu kullanıcı ve dizin otomatik olarak oluşturulur ve izinler ayarlanır, ancak kontrol etmekte fayda var:

ls -ld /var/lib/backuppc

Çıktı aşağıdakine benzer olmalıdır:

drwxr-x--- 5 backuppc backuppc 4096 Haz 20 10:00 /var/lib/backuppc

Eğer izinler yanlışsa, aşağıdaki komutlarla düzeltebilirsiniz:

sudo chown -R backuppc:backuppc /var/lib/backuppc
sudo chmod -R u+rwx,g+rx,o-rwx /var/lib/backuppc

Bu, backuppc kullanıcısına ve grubuna tam erişim verirken diğer kullanıcıların erişimini kısıtlar.

Adım 4: BackupPC Yapılandırması

BackupPC’nin ana yapılandırma dosyası /etc/backuppc/config.pl konumundadır. Bu dosya Perl diliyle yazılmıştır ve BackupPC’nin davranışını kontrol eden birçok parametre içerir. Bu dosyayı düzenlerken dikkatli olmalısınız, zira yanlış bir sözdizimi BackupPC’nin çalışmamasına neden olabilir. Düzenleme için bir metin düzenleyici kullanın (örneğin nano veya vim):

sudo nano /etc/backuppc/config.pl

Aşağıda bazı önemli parametreler ve açıklamaları bulunmaktadır:

Genel Ayarlar

  • $Conf{CgiAdminUsers} = 'backuppc';
  • Bu parametre, web arayüzüne yönetici olarak erişebilecek kullanıcıları belirler. Eğer başka kullanıcılar da eklediyseniz, virgülle ayırarak buraya ekleyebilirsiniz.

  • $Conf{CgiUserText} = 'Sistem Yedekleme Yönetimi';
  • Web arayüzünde görünen başlık metnini ayarlar.

E-posta Bildirimleri

Yedekleme durumları hakkında bildirim almak için e-posta ayarlarını yapılandırmanız önerilir.

  • $Conf{EMailAdminUser} = 'yonetici@alanadiniz.com';
  • Yönetici e-posta adresi. Yedekleme hataları veya önemli olaylar bu adrese gönderilir.

  • $Conf{EMailUserDestDomain} = 'alanadiniz.com';
  • Yedeklenecek istemcilerin e-posta bildirimlerinin gönderileceği varsayılan etki alanı.

  • $Conf{SendmailPath} = '/usr/sbin/sendmail';
  • E-posta göndermek için kullanılacak sendmail/postfix yolunu belirtir. Eğer sisteminizde bir SMTP sunucusu kurulu ve yapılandırılmışsa, bu ayarı kontrol edin.

Disk Kota Ayarları

Depolama alanınızın dolmasını önlemek için disk kota ayarlarını yapılandırın.

  • $Conf{MaxDiskUsagePercent} = 90;
  • Disk kullanım oranı bu yüzdeye ulaştığında, BackupPC eski yedeklemeleri silmeye başlar.

  • $Conf{MinDiskUsagePercent} = 80;
  • Disk kullanımı bu yüzdeye düşene kadar eski yedeklemeler silinmeye devam eder.

Diğer Önemli Parametreler

  • $Conf{XferMethod} = 'rsync';
  • Varsayılan yedekleme yöntemi. Genellikle rsync kullanılır. Diğer seçenekler tar veya smb olabilir.

  • $Conf{RsyncClientPath} = '/usr/bin/rsync';
  • İstemcideki rsync yürütülebilir dosyasının yolu.

  • $Conf{RsyncSshPath} = '/usr/bin/ssh';
  • İstemcideki ssh yürütülebilir dosyasının yolu.

  • $Conf{BackupFilesOnly} = {};
  • Yedeklenecek belirli dosya ve dizinleri belirtmek için kullanılır.

  • $Conf{BackupFilesExclude} = {};
  • Yedeklemeden hariç tutulacak dosya ve dizinleri belirtmek için kullanılır.

Yapılandırma dosyasında değişiklik yaptıktan sonra kaydedip çıkın ve BackupPC servisini yeniden başlatın:

sudo service backuppc restart

Yedeklenecek İstemcilerin Yapılandırılması

BackupPC sunucusunu kurduktan sonra, yedeklemek istediğimiz istemcileri yapılandırmamız gerekiyor. BackupPC, istemcilere SSH üzerinden bağlanarak rsync veya tar komutlarını çalıştırır. Bu nedenle, SSH anahtar tabanlı kimlik doğrulama kullanmak en güvenli ve otomatik yöntemdir.

Adım 1: SSH Anahtar Tabanlı Kimlik Doğrulama

BackupPC sunucusunun parola sormadan istemcilere bağlanabilmesi için SSH anahtar tabanlı kimlik doğrulamayı kurmalıyız.

BackupPC sunucusunda SSH anahtarı oluşturma

backuppc kullanıcısı adına bir SSH anahtar çifti oluşturmamız gerekiyor. Önce backuppc kullanıcısına geçiş yapın:

sudo su - backuppc

Şimdi anahtarı oluşturun. Parola (passphrase) sorması durumunda boş bırakın (Enter tuşuna basın), böylece parola sormadan bağlantı kurulabilir:

ssh-keygen -t rsa -b 4000

Bu komut, /var/lib/backuppc/.ssh/id_rsa (özel anahtar) ve /var/lib/backuppc/.ssh/id_rsa.pub (genel anahtar) dosyalarını oluşturacaktır.

Genel anahtarı istemcilere kopyalama

Oluşturduğumuz genel anahtarı (id_rsa.pub), yedeklemek istediğimiz her istemcinin ~/.ssh/authorized_keys dosyasına kopyalamalıyız. Bunu yapmak için ssh-copy-id komutunu kullanmak en kolay yoldur. Ancak ssh-copy-id genellikle root veya normal kullanıcılar için tasarlanmıştır. backuppc kullanıcısı için manuel olarak veya aşağıdaki gibi yapabiliriz:

# backuppc kullanıcısı olarak hala sunucudayken
ssh-copy-id -i ~/.ssh/id_rsa.pub istemci_kullaniciadi@istemci_ip_adresi

Bu komut sizden istemci_kullaniciadi için parolayı isteyecektir. Parolayı girdikten sonra, genel anahtar istemcinin ~/.ssh/authorized_keys dosyasına eklenecektir. Bu işlemi yedeklemek istediğiniz her istemci için tekrarlayın.

Eğer ssh-copy-id çalışmazsa veya manuel yapmak isterseniz:
1. Genel anahtarı kopyalayın:

cat ~/.ssh/id_rsa.pub

Çıktıyı kopyalayın.
2. İstemciye SSH ile bağlanın:

ssh istemci_kullaniciadi@istemci_ip_adresi

3. İstemcide ~/.ssh dizininin varlığını kontrol edin, yoksa oluşturun ve izinleri ayarlayın:

mkdir -p ~/.ssh
    chmod 700 ~/.ssh

4. authorized_keys dosyasını oluşturun veya düzenleyin ve kopyaladığınız genel anahtarı yapıştırın:

nano ~/.ssh/authorized_keys

Kopyaladığınız anahtarı yeni bir satıra yapıştırın, kaydedin ve çıkın.
5. authorized_keys dosyasının izinlerini ayarlayın:

chmod 600 ~/.ssh/authorized_keys

Bu adımları tamamladıktan sonra, backuppc kullanıcısı olarak BackupPC sunucusundan istemciye parola sormadan SSH bağlantısı kurabilmelisiniz. Test etmek için:

# backuppc kullanıcısı olarak hala sunucudayken
ssh istemci_kullaniciadi@istemci_ip_adresi

Eğer parola sormadan bağlanabiliyorsanız, SSH anahtar tabanlı kimlik doğrulama başarılı olmuştur. Şimdi exit yazarak backuppc kullanıcısından çıkın ve root veya sudo kullanıcınıza geri dönün.

Adım 2: BackupPC Web Arayüzünden İstemci Ekleme

Şimdi BackupPC web arayüzüne giriş yapın (http://sizin_vps_ip_adresiniz/backuppc) ve istemcilerinizi ekleyin.

1. Web arayüzünde sol menüden “Edit Hosts” (Ana Bilgisayarları Düzenle) seçeneğine tıklayın.
2. “Add Host” (Ana Bilgisayar Ekle) düğmesine tıklayın.
3. Açılan formda aşağıdaki bilgileri girin:

  • Hostname: Yedeklenecek istemcinin hostname’i veya IP adresi.
  • User: İstemcide SSH ile bağlanılacak kullanıcı adı (örneğin root veya istemci_kullaniciadi). Bu kullanıcının yedeklenecek dosyalara okuma erişimi olmalıdır.
  • XferMethod: Yedekleme yöntemi. Genellikle rsync seçilir.
  • RsyncShareName: Bu, BackupPC’nin istemciden yedekleyeceği dizinleri belirtir. Örneğin, /home, /var/www, /etc gibi dizinleri yedeklemek istiyorsanız, bunları virgülle ayırarak buraya yazmalısınız: /home /var/www /etc.

4. “Add” (Ekle) düğmesine tıklayın.

İstemciyi ekledikten sonra, “Host Summary” (Ana Bilgisayar Özeti) sayfasında yeni istemcinizi göreceksiniz. İstemcinin adına tıklayarak o istemciye özel yapılandırma ayarlarına erişebilirsiniz.

İstemciye Özel Yapılandırma (Opsiyonel ama Önemli)

Her istemci için ayrı ayrı yapılandırma ayarları yapabilirsiniz. “Edit Config” (Yapılandırmayı Düzenle) düğmesine tıklayarak bu ayarlara erişin. Bazı önemli ayarlar:

  • XferMethod ve XferLogLevel: Yedekleme yöntemi ve günlük kaydı seviyesi. Genellikle varsayılanlar iyidir.
  • RsyncShareName: Yedeklenecek dizinlerin listesi. Daha önce eklediyseniz burada görünür.
  • BackupFilesExclude: Yedeklemeden hariç tutulacak dosya veya dizinler. Örneğin, /tmp veya /var/cache gibi geçici dizinleri hariç tutmak isteyebilirsiniz. Her birini yeni bir satıra ekleyin.
  • BackupFilesOnly: Yalnızca belirli dosya veya dizinleri yedeklemek isterseniz kullanın.
  • FullPeriod, IncrPeriod: Tam ve artımlı yedeklemelerin periyotları (gün cinsinden). Örneğin, tam yedeklemeyi haftada bir (7 gün) ve artımlı yedeklemeyi her gün (1 gün) yapabilirsiniz.
  • FullKeepCnt, IncrKeepCnt: Saklanacak tam ve artımlı yedekleme sayısı. Örneğin, son 4 tam yedeklemeyi ve son 60 artımlı yedeklemeyi saklamak isteyebilirsiniz.

Yapılandırmayı değiştirdikten sonra “Save” (Kaydet) düğmesine tıklayın.

Adım 3: İstemci Tarafında Ayarlar

Yedeklenecek her istemcinin aşağıdaki gereksinimleri karşıladığından emin olun:

  • Rsync Kurulumu: İstemcide rsync paketinin yüklü olduğundan emin olun:
    sudo apt-get install rsync -y
  • SSH Sunucusu: İstemcide SSH sunucusunun çalıştığından emin olun:
    sudo service ssh status

    Eğer çalışmıyorsa:

    sudo service ssh start
  • Sudo Ayarları (Opsiyonel): Eğer BackupPC, istemcide root dışı bir kullanıcı ile bağlanıp root ayrıcalıkları gerektiren dosya veya dizinleri yedekleyecekse, o kullanıcının sudo yetkisine sahip olması ve parola sormadan belirli komutları çalıştırabilmesi gerekebilir. Bu, /etc/sudoers dosyasında ayarlanabilir (dikkatli olun!):
    sudo visudo

    Dosyanın sonuna aşağıdaki gibi bir satır ekleyebilirsiniz (örneğin istemci_kullaniciadi için):

    istemci_kullaniciadi ALL=(root) NOPASSWD: /usr/bin/rsync

    Bu, istemci_kullaniciadi kullanıcısının rsync’i root olarak parola sormadan çalıştırmasına izin verir. Bu, güvenlik riskleri taşıyabilir, bu yüzden sadece gerekli olduğunda ve dikkatli bir şekilde kullanılmalıdır. Daha güvenli bir yaklaşım, BackupPC’nin doğrudan root kullanıcısı olarak SSH ile bağlanmasıdır (tabii ki SSH anahtar tabanlı kimlik doğrulama ile).

Yedekleme İşlemlerini Yönetme ve Geri Yükleme

İstemcileri yapılandırdıktan sonra, yedekleme işlemlerini başlatabilir, izleyebilir ve gerektiğinde verileri geri yükleyebilirsiniz.

Yedekleme Başlatma ve İzleme

Manuel Yedekleme Başlatma

Web arayüzünde “Host Summary” (Ana Bilgisayar Özeti) sayfasından, yedeklemek istediğiniz istemcinin adına tıklayın. Ardından “Start Full Backup” (Tam Yedeklemeyi Başlat) veya “Start Incr Backup” (Artımlı Yedeklemeyi Başlat) düğmelerinden birine tıklayarak manuel olarak yedekleme başlatabilirsiniz.

Yedekleme Durumunu İzleme

Yedekleme işlemi başladıktan sonra, “Status” (Durum) sayfasından tüm aktif yedeklemeleri ve geçmiş yedeklemelerin durumunu görebilirsiniz. Her bir yedekleme işinin detaylarını görmek için ilgili yedekleme oturumunun bağlantısına tıklayabilirsiniz. Burada günlükleri, aktarılan dosya sayısını ve boyutunu görebilirsiniz.

Yedekleme Zamanlaması

BackupPC, config.pl dosyasındaki veya istemciye özel yapılandırmadaki parametrelerle yedeklemeleri otomatik olarak zamanlar:

  • $Conf{FullPeriod}: Tam yedeklemeler arasındaki gün sayısı.
  • $Conf{IncrPeriod}: Artımlı yedeklemeler arasındaki gün sayısı.
  • $Conf{FullKeepCnt}: Saklanacak tam yedekleme sayısı.
  • $Conf{IncrKeepCnt}: Saklanacak artımlı yedekleme sayısı.
  • $Conf{BlackoutPeriods}: Yedeklemelerin yapılmayacağı zaman aralıkları. Örneğin, iş saatleri içinde yedekleme yapmamak için kullanılabilir.

Bu parametreleri ayarlayarak yedekleme politikanızı belirleyebilirsiniz. BackupPC’nin arka planda çalışan daemon’u bu zamanlamalara göre otomatik olarak yedeklemeleri başlatacaktır.

Veri Geri Yükleme

BackupPC’nin en önemli özelliklerinden biri de kolay ve esnek geri yükleme yeteneğidir.

1. Web arayüzünde “Host Summary” (Ana Bilgisayar Özeti) sayfasından, geri yüklemek istediğiniz istemcinin adına tıklayın.
2. “Browse Backups” (Yedeklemelere Göz At) seçeneğine tıklayın.
3. Yedekleme listesinden geri yüklemek istediğiniz tarih ve saate sahip yedeği seçin.
4. Açılan dosya tarayıcısında, geri yüklemek istediğiniz dosya veya dizinleri işaretleyin. Birden fazla öğe seçebilirsiniz.
5. Seçtikten sonra, “Restore selected files” (Seçilen dosyaları geri yükle) düğmesine tıklayın.
6. Geri yükleme seçenekleri ekranında şunları belirleyebilirsiniz:

  • Where to restore files: Dosyaların orijinal konumlarına mı yoksa farklı bir dizine mi geri yükleneceğini seçin. Eğer orijinal konuma geri yüklüyorsanız, BackupPC’nin istemciye SSH ile bağlanıp dosyaları oraya yazma yetkisi olmalıdır. Farklı bir dizine geri yüklüyorsanız, o dizinin BackupPC sunucusunda bulunması gerekir.
  • Overwrite existing files: Mevcut dosyaların üzerine yazılıp yazılmayacağını seçin.
  • Tar options: Geri yükleme sırasında tar komutuna geçilecek ek seçenekler (genellikle gerekmez).

7. “Restore” (Geri Yükle) düğmesine tıklayarak işlemi başlatın.
Geri yükleme işlemi tamamlandığında, web arayüzünde bir bildirim alacaksınız. Geri yükleme günlüklerini kontrol ederek işlemin başarılı olup olmadığını doğrulayabilirsiniz.

Performans ve Bakım

BackupPC sunucunuzun verimli ve güvenilir bir şekilde çalışmasını sağlamak için düzenli bakım ve performans optimizasyonları önemlidir.

Disk Alanı Yönetimi

BackupPC’nin veri tekilleştirme özelliği sayesinde disk alanından tasarruf edilse de, zamanla yedekleme boyutu artacaktır.

  • Kota Ayarları: $Conf{MaxDiskUsagePercent} ve $Conf{MinDiskUsagePercent} parametrelerini dikkatlice ayarlayın. Bu ayarlar, disk dolmaya başladığında BackupPC’nin eski yedekleri otomatik olarak silmesini sağlar.
  • Yedekleme Saklama Politikaları: Her istemci için FullKeepCnt ve IncrKeepCnt değerlerini gözden geçirin. Çok fazla yedeklemeyi çok uzun süre saklamak, disk alanını hızla doldurabilir. İhtiyaçlarınıza uygun bir saklama politikası belirleyin.
  • Deduplikasyonun Etkinliği: BackupPC web arayüzündeki raporları inceleyerek veri tekilleştirme oranlarınızın ne kadar etkili olduğunu görebilirsiniz. Eğer oranlar düşükse, yedeklenen verinin doğası (çok sık değişen veya benzersiz dosyalar) buna neden olabilir.

Günlük Yönetimi

BackupPC, tüm yedekleme ve geri yükleme işlemlerinin günlüklerini tutar. Bu günlükler, sorun giderme ve yedekleme geçmişini izleme açısından kritik öneme sahiptir. Web arayüzünden veya /var/lib/backuppc/pc/HOST/LOG.Z gibi dizinlerden günlük dosyalarına erişebilirsiniz. Düzenli olarak günlükleri kontrol etmek, olası sorunları erken tespit etmenizi sağlar.

Güncelleme ve Güvenlik

Ubuntu 12.04 eski bir sürüm olsa da, sisteminizi ve BackupPC’yi güncel tutmak önemlidir.

  • Ubuntu Sistemini Güncel Tutma: Düzenli olarak sudo apt-get update ve sudo apt-get upgrade -y komutlarını çalıştırarak işletim sisteminizi ve yüklü paketleri güncelleyin. Bu, güvenlik açıklarının kapatılmasına yardımcı olur.
  • Güvenlik Duvarı (UFW) Ayarları: VPS’inizde bir güvenlik duvarı (örneğin UFW) etkinleştirin ve sadece gerekli portlara (SSH için 22, Apache web arayüzü için 80 ve/veya 443) izin verin.
    sudo ufw enable
            sudo ufw allow 22/tcp
            sudo ufw allow 80/tcp
            # Eğer HTTPS kullanıyorsanız: sudo ufw allow 443/tcp
            sudo ufw status
  • SSH Güvenliğini Artırma: SSH bağlantılarınızın güvenliğini artırmak için aşağıdaki önlemleri alın:
    • Parola tabanlı kimlik doğrulama yerine yalnızca SSH anahtar tabanlı kimlik doğrulamaya izin verin.
    • root kullanıcısının doğrudan SSH ile giriş yapmasını devre dışı bırakın.
    • Varsayılan SSH portunu (22) değiştirin.
    • fail2ban gibi araçlarla kaba kuvvet saldırılarına karşı koruma sağlayın.

Sıkça Sorulan Sorular ve Sorun Giderme

BackupPC kullanırken karşılaşabileceğiniz bazı yaygın sorunlar ve çözümleri:

Yedeklemeler Başlamıyor

  • BackupPC Servisi Çalışıyor mu?: sudo service backuppc status komutuyla servisin çalıştığını kontrol edin. Çalışmıyorsa sudo service backuppc start ile başlatın.
  • SSH Bağlantısı Başarılı mı?: BackupPC sunucusundan istemciye backuppc kullanıcısı olarak SSH ile parola sormadan bağlanabildiğinizden emin olun. sudo su - backuppc ve ardından ssh istemci_kullaniciadi@istemci_ip_adresi komutlarını deneyin.
  • İzin Sorunları: İstemcide yedeklenecek dosya ve dizinlere istemci_kullaniciadi kullanıcısının okuma izni olduğundan emin olun.
  • Yapılandırma Hatası: /etc/backuppc/config.pl veya istemciye özel yapılandırma dosyasında sözdizimi hatası olup olmadığını kontrol edin. sudo backuppc -f /etc/backuppc/config.pl komutuyla sözdizimi kontrolü yapabilirsiniz.
  • Disk Alanı Dolu mu?: BackupPC sunucusunun disk alanı doluysa yedeklemeler durabilir.

İzin Hataları

Yedekleme günlüklerinde “Permission denied” (İzin reddedildi) hataları görüyorsanız:

  • İstemcideki istemci_kullaniciadi kullanıcısının yedeklenecek dizinlere okuma izni olduğundan emin olun.
  • Eğer root dışı bir kullanıcı ile yedekleme yapılıyorsa ve root ayrıcalıkları gerekiyorsa, /etc/sudoers dosyasındaki NOPASSWD ayarını kontrol edin.

Disk Alanı Sorunları

Disk alanınız beklenenden hızlı doluyorsa:

  • $Conf{MaxDiskUsagePercent} ve $Conf{MinDiskUsagePercent} ayarlarını kontrol edin.
  • FullKeepCnt ve IncrKeepCnt değerlerini düşürerek daha az yedekleme tutmayı deneyin.
  • Yedeklenen dizinlerdeki gereksiz dosyaları (/tmp, /var/cache vb.) BackupFilesExclude ile hariç tutun.

Performans Yavaşlığı

Yedeklemeler çok uzun sürüyorsa:

  • Ağ bağlantısını kontrol edin. VPS ve istemciler arasındaki ağ hızı kritik öneme sahiptir.
  • Disk I/O performansını kontrol edin. BackupPC sunucusunun disk performansı düşükse, yedeklemeler yavaşlayabilir.
  • rsync’in bant genişliği kullanımı, RsyncClientCmd parametresindeki --bwlimit seçeneği ile sınırlanabilir.

Sonuç

Bu rehberde, Ubuntu 12.04 VPS üzerinde BackupPC kullanarak güvenilir ve verimli bir yedekleme sunucusu kurmanın tüm adımlarını detaylı bir şekilde inceledik. BackupPC’nin clientless mimarisi, güçlü veri tekilleştirme yetenekleri ve web tabanlı kullanıcı arayüzü sayesinde, çeşitli işletim sistemlerine sahip istemcilerinizi kolayca yedekleyebilir ve olası veri kaybı senaryolarına karşı kendinizi güvence altına alabilirsiniz.

Yedekleme, sadece bir felaket anında değil, aynı zamanda veri bütünlüğünü korumak ve iş sürekliliğini sağlamak için de hayati bir süreçtir. BackupPC gibi açık kaynaklı çözümler, bu kritik ihtiyacı uygun maliyetli ve esnek bir şekilde karşılamanıza olanak tanır. Unutmayın ki, yedekleme stratejinizin başarısı sadece doğru aracı seçmekle kalmaz, aynı zamanda düzenli testler, izleme ve bakım ile de doğrudan ilişkilidir. Kurduğunuz yedekleme sisteminin çalıştığından ve gerektiğinde verileri geri yükleyebildiğinizden emin olmak için periyodik olarak geri yükleme testleri yapmayı ihmal etmeyin.

Her ne kadar Ubuntu 12.04 eski bir sürüm olsa da, bu rehberdeki temel prensipler ve adımlar, BackupPC’nin daha yeni Linux dağıtımlarında kurulumu için de bir temel teşkil etmektedir. Verilerinizi güvende tutmak için bugün yedekleme altyapınızı kurmaya başlayın!

Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.