Python Scripti İçin Systemd Servisi Nasıl Oluşturulur?

0 Respuestas 2 Visitas
·
Participantes
Autor del tema #1
Giriş ve Temel Bilgi
Bir Python scriptini sistem açılışında otomatik olarak çalıştırmak veya düzenli olarak yönetmek istediğinizde, systemd bu konuda en güçlü ve esnek araçlardan biridir. Systemd, modern Linux dağıtımlarında init sistemi ve servis yöneticisi olarak kullanılır. Python scriptinizi systemd servisi haline getirerek, scriptinizin çalışma zamanını, yeniden başlatılmasını ve hata durumlarındaki davranışlarını kontrol edebilirsiniz.

Servis Dosyasının Yapısı
Bir systemd servisi oluşturmak için öncelikle uygun bir servis tanım dosyası hazırlamalısınız. Bu dosya genellikle /etc/systemd/system/ dizininde yer alır ve .service uzantısı kullanır. İşte temel bir örnek:

CÓDIGO
1234567891011121314
[Unit]
Description=Python Script Servisi
After=network.target

[Service]
Type=simple
User=kullaniciadiniz
ExecStart=/usr/bin/python3 /path/to/your/script.py
Restart=on-failure
RestartSec=5s

[Install]
WantedBy=multi-user.target


Burada dikkat edilmesi gereken noktalar:
  • User: scripti çalıştıracak kullanıcının yetkileri.
  • ExecStart: Python'un tam yolu ve scriptin tam yolu.
  • Restart: Hata durumunda yeniden başlatma tercihi.
  • After: Bağlantılı diğer servisler veya ağ hizmetleri.


Servisi Etkinleştirme ve Kontrol
Oluşturduğunuz .service dosyasını kaydettikten sonra, aşağıdaki komutlarla servisi etkin hale getirebilirsiniz:

CÓDIGO
1234
sudo systemctl daemon-reload
sudo systemctl enable scriptiniz.service
sudo systemctl start scriptiniz.service


Servisin durumu ve loglarını görmek için ise:
CÓDIGO
123
sudo systemctl status scriptiniz.service
journalctl -u scriptiniz.service


Sonuç ve Dikkat Edilmesi Gerekenler
Python scriptinizin sistemle entegre ve güvenli bir biçimde çalışmasını sağlamak için service dosyanızda uygun kullanıcı izinleri ve dosya yolları belirlemek kritik önemdedir. Ayrıca, scriptinizin düzgün kapanması ve hata yönetimi de servis stabilitesi açısından önemlidir. Bu temel adımlarla, scriptinizin sistemle uyumlu ve otomatik yönetilebilir hale gelmesini sağlayabilirsiniz.

Debes haber iniciado sesión para responder.

0 citas seleccionadas