Linux'ta servis oluşturmak

Linux'ta servis oluşturmak

Bu makalede Linux’un çoğu dağıtımları için nasıl servisler oluşturulur öğrenelim.

Linux’ta servisler, uygulamaların arkaplanda asenkron biçimde çalışmalarını sağlar. Web uygulama veya yazdığınız herhangi bir sistem yazılımı, servisler sayesinde sistemle birlikte otomatik olarak açılıp, arkaplanda çalışır hale getirilebilirler.

Servisleri “systemd” isimli bir program kullanarak oluşturacağız. Ubuntu, Debian, Fedora, Arch Linux, Gentoo, RHEL/CentOS gibi birçok platformlarda varsayılan olarak yüklü gelir ve “systemd” bu amaçla kullanılmaktadır.

Örnek bir “systemd” servis dosyası formatı:

[Unit]
Description=Örnek blog sitesi
After=network.target

[Service]
Type=simple
Restart=always
ExecStart=/usr/bin/python3 /opt/iamdual/server.py

[Install]
WantedBy=multi-user.target

Bir servis oluşturmak için bize gereken tek şey, çalıştırılacak olan “komut”. Bunu ExecStart=‘tan hemen sonrasında belirtiyoruz.

Diğer parametreler hakkında bilgi edinmek için bu kaynağı inceleyebilirsiniz.

Bu komutları /etc/systemd/system/blog.service dosyasına yazdıktan sonra servisimizi “systemctl” ile aktifleştirip başlatabiliriz.

systemctl daemon-reload
systemctl enable blog.service
service blog start

Servis oluşturulup aktifleştirildikten sonra sunucu (daha doğrusu systemd) çalışmaya başladıktan sonra veya daha önce başlamamış ise “start” komutu verdikten sonra servis, otomatik olarak başlamaktadır.

Son olarak varsa bir sorun journalctl -xfe komutuyla servisin açılmasına engel olan hatanın çıktısını bulabilirsiniz.