Mövzunu Açan
#0
Linux sistemlerde zamanlayıcılar, belirli bir görevi otomatik olarak zamanlayarak gerçekleştirmek için kullanılır. Systemd, modern Linux dağıtımlarında yaygın olarak kullanılan bir init sistemi ve hizmet yöneticisidir. Zamanlayıcılar, cron gibi geleneksel zamanlayıcılara alternatif olarak Systemd ile entegre bir şekilde çalışır. Bu yazıda, Systemd timer nasıl oluşturulacağını adım adım inceleyeceğiz.
Systemd timer’lar, iki ana bileşenden oluşur: bir hizmet birimi (service unit) ve bir zamanlayıcı birimi (timer unit). Öncelikle, bir hizmet birimi oluşturmalıyız. Örneğin, belirli bir dosyanın içeriğini güncelleyen basit bir betik düşünelim.
Bu ayarlar, betiğin her dakika başında çalışmasını sağlar.
Bu adımlar tamamlandıktan sonra, oluşturduğunuz zamanlayıcı her dakika başında belirlenen betiği çalıştıracaktır. Systemd timer'lar, görevlerinizi otomatikleştirmek, sistem bakımını sağlamak ve zamanlamaları daha esnek bir şekilde yönetmek için güçlü bir araçtır. Bu yöntemle, Linux sisteminizde etkili bir zamanlama çözümü oluşturmuş olacaksınız.
Systemd timer’lar, iki ana bileşenden oluşur: bir hizmet birimi (service unit) ve bir zamanlayıcı birimi (timer unit). Öncelikle, bir hizmet birimi oluşturmalıyız. Örneğin, belirli bir dosyanın içeriğini güncelleyen basit bir betik düşünelim.
- Hizmet Birimi Oluşturma:
/etc/systemd/system/my-script.servicedosyasını oluşturun ve aşağıdaki içeriği ekleyin:
CODE
123456[Unit]
Description=My Script Service
[Service]
Type=oneshot
ExecStart=/usr/local/bin/my-script.sh- Zamanlayıcı Birimi Oluşturma: Şimdi, bu hizmet birimini tetikleyecek bir zamanlayıcı birimi oluşturmalıyız.
/etc/systemd/system/my-script.timerdosyasını oluşturun ve şu şekilde düzenleyin:
CODE
123456789[Unit]
Description=Run My Script Timer
[Timer]
OnCalendar=*-*-* *:*:00
Persistent=true
[Install]
WantedBy=timers.targetBu ayarlar, betiğin her dakika başında çalışmasını sağlar.
OnCalendar ifadesini değiştirerek farklı zamanlama seçenekleri uygulayabilirsiniz.- Zamanlayıcıyı Etkinleştirme: Timer birimini etkinleştirmek için aşağıdaki komutları kullanın:
CODE
123sudo systemctl daemon-reload
sudo systemctl enable my-script.timer
sudo systemctl start my-script.timerBu adımlar tamamlandıktan sonra, oluşturduğunuz zamanlayıcı her dakika başında belirlenen betiği çalıştıracaktır. Systemd timer'lar, görevlerinizi otomatikleştirmek, sistem bakımını sağlamak ve zamanlamaları daha esnek bir şekilde yönetmek için güçlü bir araçtır. Bu yöntemle, Linux sisteminizde etkili bir zamanlama çözümü oluşturmuş olacaksınız.