Crontab ile yedekleme görevi (backup job) oluşturma nasıl yapılır?

Crontab Nedir?

Crontab (cron table), Linux ve Unix benzeri işletim sistemlerinde zamanlanmış görevlerin yönetimi için kullanılan bir dosya ve komut sistemidir. Cron, belirli zaman dilimlerine göre komut ve scriptlerin çalıştırılmasına olanak tanıyan bir arkaplan hizmetidir. Kullanıcılar, crontab dosyalarını kullanarak tekrarlayan görevleri kolayca oluşturabilir ve yönetebilirler. Crontab, sistem yöneticileri ve kullanıcılar için sistem yedeklemesi gibi rutin işlemleri otomatikleştirmede yaygın olarak kullanılmaktadır.

Yedekleme Nedir?

Yedekleme, veri kaybı durumunda verilerin korunması amacıyla yapılan bir işlem olup, kritik öneme sahip dosyaların veya sistemlerin düzenli olarak yedeklenmesini içerir. Verilerin kaybolması, donanım arızaları, yazılım hataları veya diğer felaketler nedeniyle meydana gelebilir. Bu nedenle, yedekleme işlemi veri güvenliğinin sağlanması açısından hayati önem taşır. Yedekleme işlemleri manuel olarak yapılabileceği gibi, otomatikleştirilen süreçler sayesinde zaman ve iş gücünden tasarruf sağlanabilir.

Crontab ile Yedekleme Görevi Oluşturma Adımları

Yedekleme işlemlerinin otomatikleştirilmesi için öncelikle bir script oluşturarak ardından bu scriptin crontab ile zamanlama ayarlarını yapmak gerekmektedir. Aşağıda bu işlemler adım adım açıklanmaktadır.

1. Yedekleme Scriptinin Oluşturulması

Yedekleme işlemini otomatikleştirmeye yönelik bir script oluşturmak gereklidir. Örnek olarak, basit bir shell script kullanılabilir. Aşağıdaki örnek, belirli bir dizindeki dosyaların sıkıştırılıp yedeklenmesini sağlar.

“`bash
!/bin/bash
Yedekleme dizinleri
SOURCE_DIR=”/path/to/source”
BACKUP_DIR=”/path/to/backup/$(date +%Y-%m-%d)”

Yedekleme dizini var mı kontrol et
mkdir -p “$BACKUP_DIR”

Yedekleme işlemi
tar -czf “$BACKUP_DIR/backup.tar.gz” “$SOURCE_DIR”
“`

Bu script, belirtilen kaynak dizinindeki dosyaları `backup` adında bir dizin içerisine tarih ile birlikte sıkıştırarak yedekler. Scriptin çalışabilmesi için uygun yetkilere sahip olduğundan emin olunmalıdır. Script dosyası, örneğin `backup.sh` adıyla kaydedilebilir ve çalıştırılabilir hale getirilebilir.

“`bash
chmod +x /path/to/backup.sh
“`

2. Crontab Dosyasının Düzenlenmesi

Script oluşturulduktan sonra, crontab dosyası açılmalıdır. Bunun için terminalde aşağıdaki komut kullanılabilir:

“`bash
crontab -e
“`

Açılan dosyada, yedekleme işleminin ne zaman çalışacağını belirten bir satır eklenmelidir. Crontab zamanlama formatı aşağıdaki gibidir:

“`
/path/to/command
– – – – –
| | | | |
| | | | +— Gün (1-31)
| | | +—– Ay (1-12)
| | +——- Haftanın günü (0-7) (0 ve 7 Pazar)
| +——— Saat (0-23)
+———– Dakika (0-59)
“`

Örneğin, her gün saat 3:00’de yedekleme işlemini gerçekleştirmek için aşağıdaki satır eklenmelidir:

“`
0 3 /path/to/backup.sh
“`

3. Crontab Yapılandırmasının Kaydedilmesi

Yapılan değişikliklerin ardından dosya kaydedilmelidir. Bu, kullanılan metin düzenleyiciye bağlı olarak değişiklik göstermektedir. Örneğin, vi düzenleyicisinde `:wq` komutuyla çıkış yapılır. Crontab dosyası kaydedildiğinde, belirlenen zaman diliminde yedekleme scripti otomatik olarak çalıştırılacaktır.

4. Crontab Görevlerinin Görüntülenmesi

Tanımlanan crontab görevlerini görüntülemek için aşağıdaki komut kullanılabilir:

“`bash
crontab -l
“`

Bu komut, mevcut crontab’ı görmek için kullanılmaktadır. İlgili görevlerin doğru bir şekilde eklendiği kontrol edilmelidir.

Yedekleriniz Nereye Gidiyor?

Olası veri kayıplarında geri dönüşü sağlamak amacıyla yedeklerin saklanacağı dizin belirlenmelidir. Yedekler, belirtilen dizin yapısında dramatik bir şekilde artabileceğinden, zamanla dizin temizliği de sağlanmalıdır.

Log Dosyası Oluşturma

Crontab görevleri genellikle kullanıcıya herhangi bir geri bildirim vermez. Bu nedenle, görevlerin doğru çalışıp çalışmadığını kontrol etmek amacıyla bir log dosyası oluşturulması önerilir. Scriptin sonuna aşağıdaki satır eklenerek log bilgileri belirli bir dosyaya yönlendirilebilir:

“`bash
tar -czf “$BACKUP_DIR/backup.tar.gz” “$SOURCE_DIR” >> /var/log/backup.log 2>&1
“`

Bu satır, yedekleme işleminin çıktısını ve hata mesajlarını belirtilen log dosyasına kaydedecektir.

Yedekleme İşleminin Test Edilmesi

Yedekleme scriptinin doğru çalıştığından emin olmak için, script manuel olarak çalıştırılmalı ve istenen çıktının alınması sağlanmalıdır. Ayrıca, crontab ile planlanan zaman diliminde scriptin otomatik olarak çalışıp çalışmadığı kontrol edilmelidir.

Sonuç

Crontab ile yedekleme görevlerinin oluşturulması, veri güvenliği bakımından son derece dikkat edilmesi gereken bir adımdır. Doğru zamanlama ve uygun script yapısı ile otomatikleştirilen yedekleme işlemleri, veri kaybı riskini minimize ederek sistem dengesinin korunmasına destek sağlar.

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz

SON İÇERİKLER

İLGİNİZİ ÇEKEBİLİR