Proxmox Mail Gateway’de pmgspamreport Nasıl Zamanlanır?

Proxmox Mail Gateway’de pmgspamreport Nasıl Zamanlanır?

Proxmox Mail Gateway (PMG), e-posta güvenliği ve filtreleme için güçlü bir çözümdür. PMG, günlük spam raporlarını kullanıcılarla paylaşabilmek için pmgspamreport servisini kullanır. Ancak, varsayılan olarak bu servis sadece belirli sistem olaylarına göre çalışır. Eğer belirli saatlerde çalıştırmak isterseniz, systemd timer kullanabilirsiniz.

Bu makalede, pmgspamreport servisini her gün 07:00, 09:00, 11:00, 13:00, 15:00, 17:00 ve 19:00 saatlerinde otomatik olarak çalıştırmak için systemd timer oluşturmayı öğreneceksiniz.


1. Systemd Timer Nedir?

Systemd, modern Linux sistemlerinde servisleri yönetmek için kullanılan güçlü bir init sistemidir. cron gibi geleneksel zamanlayıcılar yerine, systemd timer kullanarak zamanlanmış görevleri yönetebilirsiniz. Timer’lar, belirli bir saat, tarih veya sistem olayına göre servisin çalışmasını sağlar.

Bu yöntemin avantajları:

  • Daha ayrıntılı zamanlama seçenekleri sunar.
  • Servislerin durumunu kolayca yönetebilir ve loglarını inceleyebilirsiniz.
  • Cron yerine modern ve sistem seviyesinde bir çözüm sunar.

2. pmgspamreport Timer Ayarları

2.1. Timer Dosyasını Oluşturma

Öncelikle, systemd için bir timer dosyası oluşturacağız. SSH ile sunucunuza bağlanın ve aşağıdaki komutu çalıştırarak bir timer dosyası oluşturun:

nano /etc/systemd/system/pmgspamreport.timer

Bu dosyanın içerisine aşağıdaki satırları ekleyin:

[Unit]
Description=Run pmgspamreport at specific times

[Timer]
OnCalendar=*-*-* 07:00:00
OnCalendar=*-*-* 09:00:00
OnCalendar=*-*-* 11:00:00
OnCalendar=*-*-* 13:00:00
OnCalendar=*-*-* 15:00:00
OnCalendar=*-*-* 17:00:00
OnCalendar=*-*-* 19:00:00
Persistent=true

[Install]
WantedBy=timers.target

Bu yapılandırma, her gün belirtilen saatlerde (07:00, 09:00, 11:00, 13:00, 15:00, 17:00 ve 19:00) pmgspamreport servisini çalıştıracaktır.

Dosyayı kaydedin (CTRL + X, ardından Y ve Enter).


2.2. Servis Dosyasını Oluşturma

Timer’ımızın çalıştıracağı pmgspamreport.service dosyasını oluşturmalıyız:

nano /etc/systemd/system/pmgspamreport.service

Aşağıdaki içeriği ekleyin:

[Unit]
Description=Run pmgspamreport script
After=network.target

[Service]
Type=oneshot
ExecStart=/usr/sbin/pmgspamreport

[Install]
WantedBy=multi-user.target

Bu servis dosyası, timer tarafından tetiklendiğinde pmgspamreport komutunu çalıştıracaktır.

Dosyayı kaydedin (CTRL + X, ardından Y ve Enter).


3. Timer’ı Etkinleştirme ve Başlatma

Şimdi systemd yapılandırmasını yeniden yükleyelim ve timer’ı aktif hale getirelim:

systemctl daemon-reload
systemctl enable pmgspamreport.timer
systemctl start pmgspamreport.timer

Bu komutlar:

  1. daemon-reload → Systemd’yi yeniden yükler ve yeni timer’ı tanır.
  2. enable → Timer’ın sistem açılışında otomatik başlamasını sağlar.
  3. start → Timer’ı hemen başlatır.

4. Timer’ın Çalıştığını Kontrol Etme

Timer’ın başarıyla çalıştığını doğrulamak için şu komutu kullanabilirsiniz:

systemctl list-timers --all | grep pmgspamreport

Bu komut çıktısında bir sonraki çalışma zamanlarını görebilirsiniz. Çıktı şu şekilde görünmelidir:

Wed 2025-03-19 07:00:00 +03 6h left Wed 2025-03-18 19:00:00 +03 1h ago pmgspamreport.timer pmgspamreport.service

Eğer istediğiniz zamanlarda çalıştığını görüyorsanız, kurulum tamamlanmış demektir! 🎉


5. Timer’ı Manuel Test Etme

Zamanlayıcının doğru çalıştığını test etmek için timer’ın tetikleyeceği servisi elle çalıştırabilirsiniz:

systemctl start pmgspamreport.service

Logları görmek için:

journalctl -u pmgspamreport.service --since "5 minutes ago"

Bu komut, son 5 dakikada çalıştırılan pmgspamreport loglarını gösterecektir.


Özet:

Bu makalede, Proxmox Mail Gateway üzerinde pmgspamreport servisini belirli saatlerde otomatik olarak çalıştırmak için systemd timer kullanmayı öğrendik. Systemd timer, cron’a göre daha esnek ve güvenilir bir zamanlama yöntemi sunar.

Özetlemek gerekirse:

  1. Timer dosyası (/etc/systemd/system/pmgspamreport.timer) oluşturduk.
  2. Servis dosyası (/etc/systemd/system/pmgspamreport.service) oluşturduk.
  3. Timer’ı etkinleştirip başlattık.
  4. Çalışma zamanlarını ve logları kontrol ettik.

Bu yöntem sayesinde, spam raporları belirlediğiniz saatlerde otomatik olarak gönderilecektir. Eğer eklemek istediğiniz özel saatler veya farklı servisler varsa, OnCalendar satırlarını düzenleyerek kendi ihtiyaçlarınıza göre özelleştirebilirsiniz.

Umarım bu rehber faydalı olmuştur! 🚀 Eğer herhangi bir sorun yaşarsanız, logları kontrol ederek hataların kaynağını tespit edebilirsiniz.


Leave a reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.