30 Ocak 2013 Çarşamba

Koha'da "anacrontab" ve "crontab" Düzenlemesi

Koha Kütüphane Otomasyon Sisteminde belli periyotlarda gerçekleşmesi gereken işler için .../usr/share/koha/bin/cronjobs#  klasörü altındaki dosyaların çalıştırılması gerekir. Örenğin, belli aralıklarla e-postaların gönderilmesi, yedeklerin alınması, iadesi geciken kitapların cezalarının hesaplanması gibi. Bunun gibi görevler için cron düzenlemesi gerekir. Cron düzenlemesi anacrontab ve crontab dosya içeriklerinin düzenlenmesi şeklinde yapılır.

Anacroontab, crontab benzeri bir içeriğe sahiptir. Anacrontab Ubuntu'da  /etc/anacrontab lokasyonunda bulunur ve anacrontab betiklerinin /etc/cron.daily, /etc/cron.weekly ve /etc/cron.monthly olarak yapılandırıldığını görürüz. Ubuntu kurulumunda varsayılan olarak yüklenen anacrontab içeriği şu şekildedir:

------------------------------------------
# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# These replace cron's entries
1        5  cron.daily   nice run-parts --report /etc/cron.daily
7        10 cron.weekly  nice run-parts --report /etc/cron.weekly
@monthly 15 cron.monthly nice run-parts --report /etc/cron.monthly

------------------------------------------

Bu içerikteki ilk sütun periyodu gösterir ve "1" rakkamı günde bir, "7" rakkamı haftada bir,  "@monthly" kelimesi ise komutun ayda bir çalıştırılacağını ifade eder. İkinci sütun dakikayı ifade eder ve komutun hangi dakikada çalıştırılacağını gösterir. Örneğin, günlük komut sistem başlatıldıktan 5 dakika sonra devreye girecektir.

Bu içerikte ihtiyacınıza göre düzenleme yapabilirsiniz (anacrontab dosyasında düzenleme yapabilmek için root kullanıcı satırında iken /etc/anacrontab komutu verilir). Aşağıdaki örnekte görüleceği üzere @hourly seçeneği satır olarak eklenmiş ve 29 ve 59'uncu dakikalarda (her yarım saatte bir) olmak üzere saatlik komutun çalışması istenmiştir.

------------------------------------------
# /etc/anacrontab: configuration file for anacron

# See anacron(8) and anacrontab(5) for details.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# These replace cron's entries
@hourly  29,59 cron.hourly  nice run-parts --report /etc/cron.hourly
1        5     cron.daily   nice run-parts --report /etc/cron.daily
7        10    cron.weekly  nice run-parts --report /etc/cron.weekly
@monthly 15    cron.monthly nice run-parts --report /etc/cron.monthly

------------------------------------------

Bu düzenlemeye paralel olarak crontab içeriğinde de düzenleme yapılması gerekebilir (crontab dosyasında düzenleme için root yetkisi ile komut satırında iken crontanb -e komutu verilir). Örneğin, Koha Kütüphane Otomasyon Sisteminin saatlik gecikmeleri hesaplayabilmesi için crontab'ın FINES kısmında aşağıdaki gibi düznleme yapılmıştır.

------------------------------------------

# FINES
29,59  * * * *  /usr/share/koha/bin/cronjobs/fines.pl
------------------------------------------

veya crontab içinde cronjobs dosya yolları KOHA_CRON_PATH = /usr/share/koha/bin/cronjobs şeklinde tanımlı ise şu şekilde de düzenleyebilirsiniz.

------------------------------------------
# FINES
29,59  * * * *  __KOHA_USER__  $KOHA_CRON_PATH/fines.pl
------------------------------------------


Bu düzenleme ile Koha Kütüphane Otomasyon Sistemi saatlik ödünç verdiğiniz bir eserin gecikme cezasını yarım saatte bir güncelleyecek ve ödünç verme ekranı ile cezalar kısmında gösterecektir.

Anacrontab ve crontab düzenlemesini kütüphanenizin politikasına göre belirleyebilirsiniz.

Hiç yorum yok:

Yorum Gönderme