07.06.2023

Ubuntu 20.04'te Yedekleme Oluşturmak için Rsync Nasıl Kullanılır

Ubuntu'da yedekleme yapmanın birçok yolu vardır. Geçenlerde güçlü ama karmaşık bir araç olan Bakula'yı incelemiştik. Bugün rsync kullanarak nasıl yedekleme yapacağımızı öğreneceğiz.

Adım 1 - rsync'i Yükleme

Ubuntu 20.04 zaten rsync paketini yüklü olarak içerir. Bunu kontrol etmek ve sürümü öğrenmek için şu komutu kullanın:

sudo rsync --version

Paket herhangi bir nedenle yüklenmemişse, şu komutu kullanın:

sudo apt install rsync

Ubuntu 20.04'te rsync'i bir hizmet olarak başlatmak için /etc/rsyncd.conf dosyasını oluşturun ve /lib/systemd/system/rsync.service dosyasını /etc/systemd/system/rsync.service dosyasına kopyalayın.

sudo nano /etc/rsyncd.conf # save and close it
sudo cp /lib/systemd/system/rsync.service /etc/systemd/system/rsync.service

Şimdi hizmeti yeniden başlatın.

sudo systemctl restart rsync

Adım 2 - Veri kaynağı sunucusunu yapılandırma

İlk olarak, bu satırları /etc/rsyncd.conf rsync yapılandırma dosyasına ekleyin. 'path' parametresini yedeklenecek kaynak dosyaların yolu olarak değiştirin. 'uid' ve 'gid' için, yedekleme kaynak klasörlerinde okuma izinlerine sahip mevcut kullanıcı adı ve grubu kullanın.

sudo nano /etc/rsyncd.conf
# Global configuration of the rsync service
pid file = /var/run/rsyncd.pid
# Username and group for working with backups
uid = backup-user
gid = backup-user
# Don't allow to modify the source files
read only = yes
# Data source information
[data]
path = /path/to/backup
list = yes
auth users = backup-user
secrets file = /etc/rsyncd.passwd

'auth users' parametresindeki ve /etc/rsyncd.passwd dosyasındaki veriler, farklı bilgisayarlardaki rsync arasında yetkilendirme için kullanılır. Buraya aşağıdaki gibi bir satır ekleyin:

sudo nano /etc/rsyncd.passwd
backup-user:test-pass

rsyncd.passwd dosyasının izinlerini değiştirin.

sudo chmod 0600 /etc/rsyncd.passwd

Değişiklikleri uygulamak için hizmeti yeniden başlatın.

sudo systemctl restart rsync

Adım 3 - Yedeklemeyi çalıştırma

Yedeklerin saklanacağı alıcı sunucuda /etc/rsyncd.passwd dosyasını oluşturun. Kaynak bilgisayardakiyle aynı parolayı girin, ancak kullanıcı adı olmadan, bunun için 600 izin ayarlayın.

sudo nano /etc/rsyncd.passwd
test-pass # Save and close file
sudo chmod 0600 /etc/rsyncd.passwd

Bir yedekleme gerçekleştirmek için komutu çalıştırın:

rsync -a --password-file=/etc/rsyncd.passwd backup-user@source-server-ip::data /destination/path/$(date +%Y-%m-%d)/

source-server-ip yerine ilk sunucunun IP adresini ve '/destination/path/' yerine de yedeklerin saklanacağı yolu yazın.

Düzenli yedeklemeler için görevi /etc/crontab dosyasının sonuna eklemeniz yeterlidir.