Linux için günümüzde popüler olan bir servis yöneticisidir. İnsanlar her ne kadar sevmeyip Systemd’ye küfürlerde etse kullanmak zorunda. Şuan piyasada en çok kullanılan servis yöneticisi. Eski sistemler haricinde özel distrolar dışında kullanılmaz.
Gelin birlikte temel seviyede Systemd nin komut ve parametrelerine bakalım.
Komut | Açıklama |
---|---|
systemctl status ssh.service |
Durum |
systemctl is-active ssh.service |
Durum |
systemctl start ssh.service |
Başlatma |
systemctl stop ssh.service |
Durdurma |
systemctl restart ssh.service |
Yeniden Başlatma |
systemctl disable ssh.service |
Açılıştan Kaldırma |
systemctl enable ssh.service |
Açılışa ekleme |
systemctl is-enabled ssh.service |
Açılışta başlayacak mı |
systemctl mask ssh.service |
Başlatılmasını yasaklama |
systemctl unmask ssh.service |
Başlatılmasını sağlama |
systemctl daemon-reload |
Servisi yeniden yukleme |
systemctl list-timers |
Timer listesi |
systemctl cat nginx |
Unit dosyası görüntüleme |
Unit adlı dosyanın /lib/systemd/system
klasöründe yer alması lazım linkleme işlemi yaparak eklemeyiniz./lib/systemd/system
altında bulunanlar direk olarak işletim sistemini kurduğunuz anda gelir.
Örnek bir servis UNIT
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
Servis Unit Parametreleri
Komut | Açıklama |
---|---|
Requires= |
Servisin çalışabilmesi için ihtiyaç duyulan servis |
After= |
Hangi servisden sonra başlatılması gerektiği |
Type= |
Servis Tipi |
Restart=on-failure |
Servis crash olursa yeniden başlatılsın |
EnvironmentFile=-/etc/default/nginx |
environment değişkenleri |
PrivateTmp=yes |
servise özel /tmp olsun |
InaccessibleDirectories=/home |
Erişemeyeceği klasör |
ReadOnlyDirectories=/var |
read-only olan klasör |
MemoryLimit=1G |
Servis için bellek limiti |
CPUShares=1500 |
CPU kullanım oranı |
OnBootSec=10min |
Açılıştan 10 dakika sonra çalışma |
OnUnitActiveSec=1h |
1 saat ara ile yeniden çalış |
Farklı kullanımlar ile parametreleri tekrarlayabilirsiniz.
Bootda ki log kayıyları
journalctl --boot
Bir servise ait log kayıtları
journalctl --unit ssh.service
Performans Analizi
Sistemin açılma performansını analiz eder.
Sistemin açılma süresi
systemd-analyze time
Servisin açılması ne kadar sürdü
systemd-analyze blame
Kritik servislerin açılışı
systemd-analyze critical-chain
Svg şeklinde grafiksel çıktı
systemd-analyze dot 'avahi-daemon.*' | dot -Tsvg > avahi.svg