29 Mayıs 2013 Çarşamba

DSpace'de Crontab Düzenlemesi

DSpace kurumsal arşiv sisteminde belli periyorlarda verilmesi gereken komutlar vardır. Bu komutların düzenli olarak çalıştırılması için crontab uygulamasını kullanabilirsiniz. Bunun için nano veya kullandığınız herhangi bir editör ile crontab dosyasının içeriğini aşağıdaki örneğe göre düzenleyip kaydedebilirsiniz. Bundan sonra sistem sizin adınıza bu işlemleri belirlediğiniz zaman dilimlerinde otomatik olarak gerçekleştirecektir.

Yapılması gerekenler:
  • Terminal ekranı açınız. 
  • sudo su  ile root kullacısına geçiniz
  • crontab -e komutunu veriniz.
  • nano ile düzenleme için [2] seçeneğini yazıp onaylayın.
  • açılan crontab dosya içeriğini aşağıdaki örneğe uygun olarak düzenleyip Ctrl+X ile kaydedin.
DSpace@IHU'da Crontab Örneği:

#-----------------
# GLOBAL DEGISKENLER
#-----------------
# DSpacein kurulu oldugu dizin (Or. /home/dspace veya /dspace)
# BU DUZENLEMEYI YAPTIGINIZDAN EMIN OLUN!!!
DSPACE = /dspace
#
# Shell kullanimi
SHELL=/bin/sh
#
# Tum 'bin' dizinlerinin yolunu ekleyin.
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
#
# DSpace Cron gorevleri icin JAVA_OPTS duzenlemesi yapin
# Varsayilan olarak hafiza yalinizca 512MB saglar (bu cogu siteler icin
# yeterlidir)
#JAVA_OPTS="-Xmx512M -Xms512M -Dfile.encoding=UTF-8"
#
#----------------
# SAATLIK GOREVLER (Eger mumkunse her gun iki kere calistirilmesi onerilir)
#----------------
# Bu gorev gunde en az bir kere calsitirilmalidir.
#
# DSpacein SiteMaps (site haritasini) her 8 saatte bir yeniden olustur (12AM,
# 8AM, 4PM).
# SiteMaps Google, Google Scholar ve diger buyuk arama motorlarinda
# iceriginizin daha kolay bulunabilirligini saglar.
0 0,8,16 * * * /dspace/bin/dspace generate-sitemaps > /dev/null
#----------------
# GUNLUK GOREVLER
#----------------
# Gunde bir kez calistirilmasi onerilir. Asagida planlanmis zamanlamda
# duzenleme yapabilirsiniz.
#
# Hergun saat 01:00 de guncel icerik ile OAI-PMH indeksini guncelle (ve indeksi
# yeniden en iyi hale getir)
# NOT: EGER OAI-PMH KULLANIYORSANIZ GEREKLIDIR
# Bu OAI-PMH araciligiyla yeni icerigi saglar ve OAI-PMH indeks performansini
# en iyi hale getirmeyi saglar.
0 1 * * * /dspace/bin/dspace oai import -o > /dev/null
#
# Hergun 01:20 de Discovery indeksleri temizle ve guncelle.
# (Bu gorev silinen kayitlarin Discovery arama/listeleme indeksinden
# temizlemeyi saglar.)
20 1 * * * /dspace/bin/dspace index-discovery > /dev/null
#
# Her gun 01:40.da Discovery indekslerini yeniden en iyi hale getirir.
# (Bu gorev, Discovery Solr indeks performansini yeniden en iyi hale getirir.
40 1 * * * /dspace/bin/dspace index-discovery -o > /dev/null
#
# Her gun saat 02:00 de DSpace Statistics Solr indeksindeki
# web orumceklerini temizle.
# NOT: EGER SOLR STATISTICS KULLANIYORSANIZ GEREKIR.
# (Bu gorev, kullanim istatistiklerindeki bilinen web orumceklerini siler).
0 2 * * * /dspace/bin/dspace stats-util -i
#
# DSpace Statistics Solr indeksini 02:20 de yeniden duzenleyerek en iyi
# hale getir.
# NOT: EGER SOLR STATISTICS KULLANIYORSANIZ GEREKIR
# Bu Statistics Solr indeksi daha iyi performans icin yeniden duzenlemeyi
# saglar.
20 2 * * * /dspace/bin/dspace stats-util -o
#
# Her gun 02:40.da uyelere e-posta gonder.
# (Bu gorev, koleksiyonlara uye olan kullanicilara yeni eklenen yayinlar
# icin bilgilendirme e-postalari gonderir.)
40 2 * * * /dspace/bin/dspace sub-daily
#
# Her gun 03:00.da media fitler uygulamasini calistir.
# (Bu gorev, yeni eklenen gorseller icin kucuk resimler olusturmayi saglar
# ve yeni eklenen PDF/Word/PPT/HTML dokumanlarinda tam metin arama yapmayi
# saglar).
0 3 * * * /dspace/bin/dspace filter-media
#
# Hergun 03:20 de yonetici ara yuzunden yonetici gorevlerini sirasiyla
# calistir. (Yonetici ara yuzunden degisik zamanlarda yapilan islerin
# ardindan kuyruktaki yonetici gorevlerinin yonetilmesini saglar.)
20 3 * * * /dspace/bin/dspace curate -q admin_ui
#
# Hergun 3:40 da veri tabanini temizle
40 3 * * * /usr/local/pgsql/bin/vacuumdb --analyze dspace > /dev/null 2>&1
#
# Hergun 3:50 de OAI Onbellegi ve derlemelerini temizle
50 3 * * * [dspace]/bin/dspace oai compile-items
#
# Her gun saat 4 de Dspacede ambargo suresi dolan kayitlari kontrol et
0 4 * * * /dspace/bin/dspace embargo-lifter -c
#
# Her gun saat 4:10 da Dspacede ambargo suresi dolan kayitlari ambargolarini kaldir
0 4 * * * /dspace/bin/dspace embargo-lifter -c
#----------------
# HAFTALIK GOREVLER
#----------------
# Haftada bir calistirilmesi onerilmektedir, fakat politikaya/ihtiyaclara
# gore daha az veya daha cok araliklarla calistirilabilir.
#
# Her Pazar 04.20 de checksum checker gorevini calistir.
# Varsayilan olarak her dosyada (-l) calisir ve eski sonuclarda istisna
# tutulur. Bu DSpace.de depolanan tum dosyalarin kontrollerini yeniden
# dogrular. Eger dosyalarda degisiklik/bozukluk veya kontrollerde bir
# farklilik iceriyorsa).
#
20 4 * * 0 /dspace/bin/dspace checker -l -p
#
# NOT: BUYUK SITELER DEGISIK SECENEKLER KULLANMAK ISTEYEBILIR.
# Yukaridaki .-l. secenegi DSpace.e *herseyi* kontrol etemsini soyler.
# Eger site cok buyukse her hafta yanlizca icerigin bir parcasini
# kontrol etmesini isteyebilirsiniz. Asagida verilen gorev 1 saat
# boyunca kontrolu surdurur. Sonraki hafta kaldigi yerden ayni sure
# devam eder.
######0 4 * * 0 /dspace/bin/dspace checker -d 1h -p
#
# Her Pazar 04:30.da yonetici e-posta hesabina checksum checker
# sonucunu gonder. (Bu gorev, kontrol sonucunda herhangi bir farklik
# tespit ederse sistem yoneticisine bilgilendirme yapar.)
#
30 4 * * 0 /dspace/bin/dspace checker-emailer
#
#----------------
# AYLIK GOREVLER
#----------------
# (Her ay calistirilmasi onerilir, fakat politikaya/ihtiyaclara
# gore daha az veya cok araliklarla tekrarlanabilir.)
#
# Her ayin birinci gunu 4.50 de DSpace.de belirtilmis veri akislarini
# kalici olarak sil. Bu gorev DSpace.de silinmis dosyalari sistem
# uzerinden kalici olarak temizlemeyi saglar. Varsayilan olarak silinenler
# yalnizca isaretenir, dosya sisteminden kaldirilmaz.)
50 4 1 * * /dspace/bin/dspace cleanup > /dev/null
#
#----------------
# YILLIK GOREVLER (Her yil calistirilmasi onerilir)
#----------------
# Her yil 1 Ocak, saat 5:00 de DSpace Statistics Solr indeksi duzenle.
# Bu gorev her yil Solr indeksin performansini artirmayi/gelistirmeyi
# saglar.
# NOT: EGER SOLR STATISTCS KULLANIYORSANIZ GEREKLIDIR
# NOT: Bu gorevin 02:00.a yapilmasi belirlenmisitir. Dolayisiyla
# indeksin gunluk temizleme ve yeniden iyilestirmesinden *sonra*
# islem gerceklesir.
0 5 1 1 * /dspace/bin/dspace stats-util -s
#
#----------------
# ISTATISTIK ANALIZLERI
#----------------
# Genel istatistik analizlerini her gun saat 5:10 da calistir.
10 5 * * * /dspace/bin/dspace stat-general
#
# Aylik istatistik analizlerini her gun saat 5:20 de calistir.
20 5 * * * /dspace/bin/dspace stat-monthly
#
# Genel rapor istatistik analizlerini her gun saat 5:30 da calistir.
30 5 * * * /dspace/bin/dspace stat-report-general
#
# Aylik rapor istatistik analizlerini her gun saat 5:40 da calistir.
40 5 * * * /dspace/bin/dspace stat-report-monthly
#
#---------------
# DSPACE LOGLARINI SILME
#---------------
#
# Her ayin birinci gunu saat 08:40 da 30 gunden eski DSpace log dosyalarini sil
40 8 1 * * find /dspace/log/*.log.* -mtime +30 -exec rm {} \;
41 8 1 * * find /dspace/log/*.dat -mtime +30 -exec rm {} \;

# Her gun saat 7:10 da 1 gunden eski cocoon cache dosyalarinin icerigini sil
10 7 * * * find /dspace/log/cocoon* -mtime +0 -exec rm {} \;
#
#---------------
# TOMCAT LOGLARINI SILME
#---------------
#
# Her gun saat 08:50 de 1 gunden eski Tomcat log dosyalarindan uzantisi log olanlari sil
50 8 * * * find /usr/local/tomcat7/apache-tomcat-7.0.53/logs/*.log -mtime +0 -exec rm {} \;
50 8 * * * find /usr/local/tomcat7/apache-tomcat-7.0.53/logs/*_log* -mtime +0 -exec rm {} \;

#Her gun 6 yi 10 gece catalina.out dosyasinin icerigini sil
10 6 * * * cat /dev/null > /usr/local/tomcat7/apache-tomcat-7.0.53/logs/catalina.out
#
#---------------
#COCOON CACHE SILME
#---------------
# Her saatin 48 inci dakikasinda cocoon cache dosyalarinin icerigini sil
48 * * * * cat /dev/null > /usr/local/tomcat7/apache-tomcat-7.0.53/work/Catalina/localhost/xmlui/cache-dir/cocoon-ehcache.data
48 * * * * cat /dev/null > /usr/local/tomcat7/apache-tomcat-7.0.53/work/Catalina/localhost/xmlui/cache-dir/cocoon-ehcache.index
#
#----------------
# HANDLE SUNUCU (istenirse kullanilabilir)
#----------------
# Pazartesi gunleri saat 08:30 da Handle Sunucuyu yeniden baslat
# 30 8 * * 1 /dspace/bin/start-handle-server
#
#------------------
# httpie ile WEB KONTROLU
#------------------
# httpie kullanimi icin sunucunuzda httpie kurulu olmasi gerekir
#
# Her saatin 30 uncu dakikasinda bir web sayfasini kontrol et ve  
# Her 30 dakikada bir site "HTTP" ciktisi vermiyorsa Tomcati yeniden baslat
*/30 * * * * curl -Is "http://openaccess.ihu.edu.tr/xmlui/" | grep "HTTP" || echo "Site cevap vermiyor" | /etc/init.d/tomcat restart


Crontab komutlarındaki sembollerin anlamı:


İlk yıldız dakikayı ifade eder ve 0 – 59 arasında değer alır. 2. yıldız saati belirler ve 0 ile 23 arasında bir değer alır. 3. yıldız ayın günlerini ifade eder. 4. yıldız ayları ve son yıldızda haftanın günlerini ifade eder. Daha fazla bilgi ve örnek için bkz. http://www.gokhanmankara.com/2010/06/crontab-kullanimi-ve-ornek-crontab-uygulamasi/

Hiç yorum yok:

Yorum Gönder